<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/sys/cloudabi/shims, branch beta</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=beta</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=beta'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2020-07-28T00:51:13+00:00</updated>
<entry>
<title>mv std libs to library/</title>
<updated>2020-07-28T00:51:13+00:00</updated>
<author>
<name>mark</name>
<email>markm@cs.wisc.edu</email>
</author>
<published>2020-06-12T02:31:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2c31b45ae878b821975c4ebd94cc1e49f6073fd0'/>
<id>urn:sha1:2c31b45ae878b821975c4ebd94cc1e49f6073fd0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix stragglers</title>
<updated>2020-04-26T11:24:16+00:00</updated>
<author>
<name>Steven Fackler</name>
<email>sfackler@gmail.com</email>
</author>
<published>2020-03-12T01:32:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4bad27a467300ec6cb86b34218c17f2fc05e3624'/>
<id>urn:sha1:4bad27a467300ec6cb86b34218c17f2fc05e3624</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Update name</title>
<updated>2020-04-26T11:24:16+00:00</updated>
<author>
<name>Steven Fackler</name>
<email>sfackler@gmail.com</email>
</author>
<published>2020-03-12T01:02:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=07443f17d4c2e8135d1cbf415f6bd22eee86b64a'/>
<id>urn:sha1:07443f17d4c2e8135d1cbf415f6bd22eee86b64a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Read/Write::can_read/write_vectored</title>
<updated>2020-04-26T11:23:39+00:00</updated>
<author>
<name>Steven Fackler</name>
<email>sfackler@gmail.com</email>
</author>
<published>2020-01-03T19:26:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=15262ec6be6fcfc9f27e174a0714d5a62e775fb0'/>
<id>urn:sha1:15262ec6be6fcfc9f27e174a0714d5a62e775fb0</id>
<content type='text'>
When working with an arbitrary reader or writer, code that uses vectored
operations may end up being slower than code that copies into a single
buffer when the underlying reader or writer doesn't actually support
vectored operations. These new methods allow you to ask the reader or
witer up front if vectored operations are efficiently supported.

Currently, you have to use some heuristics to guess by e.g. checking if
the read or write only accessed the first buffer. Hyper is one concrete
example of a library that has to do this dynamically:
https://github.com/hyperium/hyper/blob/0eaf304644a396895a4ce1f0146e596640bb666a/src/proto/h1/io.rs#L582-L594
</content>
</entry>
<entry>
<title>Deprecate Error::description for real</title>
<updated>2019-12-25T06:39:49+00:00</updated>
<author>
<name>David Tolnay</name>
<email>dtolnay@gmail.com</email>
</author>
<published>2019-12-01T04:01:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=4646a88b7a1e68326d092b9cbbbbdd616a51077f'/>
<id>urn:sha1:4646a88b7a1e68326d092b9cbbbbdd616a51077f</id>
<content type='text'>
`description` has been documented as soft-deprecated since 1.27.0 (17
months ago). There is no longer any reason to call it or implement it.

This commit:

- adds #[rustc_deprecated(since = "1.41.0")] to Error::description;

- moves description (and cause, which is also deprecated) below the
  source and backtrace methods in the Error trait;

- reduces documentation of description and cause to take up much less
  vertical real estate in rustdocs, while preserving the example that
  shows how to render errors without needing to call description;

- removes the description function of all *currently unstable* Error
  impls in the standard library;

- marks #[allow(deprecated)] the description function of all *stable*
  Error impls in the standard library;

- replaces miscellaneous uses of description in example code and the
  compiler.
</content>
</entry>
<entry>
<title>Format libstd/sys with rustfmt</title>
<updated>2019-11-30T02:37:58+00:00</updated>
<author>
<name>David Tolnay</name>
<email>dtolnay@gmail.com</email>
</author>
<published>2019-11-27T18:28:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c34fbfaad38cf5829ef5cfe780dc9d58480adeaa'/>
<id>urn:sha1:c34fbfaad38cf5829ef5cfe780dc9d58480adeaa</id>
<content type='text'>
This commit applies rustfmt with rust-lang/rust's default settings to
files in src/libstd/sys *that are not involved in any currently open PR*
to minimize merge conflicts. THe list of files involved in open PRs was
determined by querying GitHub's GraphQL API with this script:
https://gist.github.com/dtolnay/aa9c34993dc051a4f344d1b10e4487e8

With the list of files from the script in outstanding_files, the
relevant commands were:

    $ find src/libstd/sys -name '*.rs' \
        | xargs rustfmt --edition=2018 --unstable-features --skip-children
    $ rg libstd/sys outstanding_files | xargs git checkout --

Repeating this process several months apart should get us coverage of
most of the rest of the files.

To confirm no funny business:

    $ git checkout $THIS_COMMIT^
    $ git show --pretty= --name-only $THIS_COMMIT \
        | xargs rustfmt --edition=2018 --unstable-features --skip-children
    $ git diff $THIS_COMMIT  # there should be no difference
</content>
</entry>
<entry>
<title>std: Improve downstream codegen in `Command::env`</title>
<updated>2019-09-05T18:43:35+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2019-09-04T02:32:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0b7ba6ec54db24b676d376665692a49d0ecd603a'/>
<id>urn:sha1:0b7ba6ec54db24b676d376665692a49d0ecd603a</id>
<content type='text'>
This commit rejiggers the generics used in the implementation of
`Command::env` with the purpose of reducing the amount of codegen that
needs to happen in consumer crates, instead preferring to generate code
into libstd.

This was found when profiling the compile times of the `cc` crate where
the binary rlib produced had a lot of `BTreeMap` code compiled into it
but the crate doesn't actually use `BTreeMap`. It turns out that
`Command::env` is generic enough to codegen the entire implementation in
calling crates, but in this case there's no performance concern so it's
fine to compile the code into the standard library.

This change is done by removing the generic on the `CommandEnv` map
which is intended to handle case-insensitive variables on Windows.
Instead now a generic isn't used but rather a `use` statement defined
per-platform is used.

With this commit a debug build of `Command::new("foo").env("a", "b")`
drops from 21k lines of LLVM IR to 10k.
</content>
</entry>
<entry>
<title>Stabilized vectored IO</title>
<updated>2019-04-27T15:34:08+00:00</updated>
<author>
<name>Steven Fackler</name>
<email>sfackler@gmail.com</email>
</author>
<published>2019-04-27T15:34:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=bd177f3ea31e47b94dd400239a9badfe2bd47355'/>
<id>urn:sha1:bd177f3ea31e47b94dd400239a9badfe2bd47355</id>
<content type='text'>
This renames `std::io::IoVec` to `std::io::IoSlice` and
`std::io::IoVecMut` to `std::io::IoSliceMut`, and stabilizes
`std::io::IoSlice`, `std::io::IoSliceMut`,
`std::io::Read::read_vectored`, and `std::io::Write::write_vectored`.

Closes #58452
</content>
</entry>
<entry>
<title>std: Add `{read,write}_vectored` for more types</title>
<updated>2019-04-10T19:51:25+00:00</updated>
<author>
<name>Alex Crichton</name>
<email>alex@alexcrichton.com</email>
</author>
<published>2019-04-10T19:51:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=acf3ddb5ad163ea98f8935b045fc6d15faefa454'/>
<id>urn:sha1:acf3ddb5ad163ea98f8935b045fc6d15faefa454</id>
<content type='text'>
This commit implements the `{read,write}_vectored` methods on more types
in the standard library, namely:

* `std::fs::File`
* `std::process::ChildStd{in,out,err}`
* `std::io::Std{in,out,err}`
* `std::io::Std{in,out,err}Lock`
* `std::io::Std{in,out,err}Raw`

Where supported the OS implementations hook up to native support,
otherwise it falls back to the already-defaulted implementation.
</content>
</entry>
<entry>
<title>libstd: deny(elided_lifetimes_in_paths), fixes in cloudabi</title>
<updated>2019-03-31T10:56:51+00:00</updated>
<author>
<name>Mazdak Farrokhzad</name>
<email>twingoow@gmail.com</email>
</author>
<published>2019-03-30T09:30:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6f4df8c0c20969a1059a4b0cdf63e4ac33447e1b'/>
<id>urn:sha1:6f4df8c0c20969a1059a4b0cdf63e4ac33447e1b</id>
<content type='text'>
</content>
</entry>
</feed>
