<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/sys/unix/fd.rs, branch 1.45.2</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.45.2</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.45.2'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2020-04-26T11:24:16+00:00</updated>
<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>Add illumos triple</title>
<updated>2020-04-14T20:36:07+00:00</updated>
<author>
<name>Patrick Mooney</name>
<email>pmooney@oxide.computer</email>
</author>
<published>2020-04-13T23:37:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b77aefb76ebb9e73cf5a26885c131674495f434d'/>
<id>urn:sha1:b77aefb76ebb9e73cf5a26885c131674495f434d</id>
<content type='text'>
Co-Authored-By: Jason King &lt;jason.brian.king@gmail.com&gt;
Co-Authored-By: Joshua M. Clulow &lt;jmc@oxide.computer&gt;
</content>
</entry>
<entry>
<title>Require issue = "none" over issue = "0" in unstable attributes</title>
<updated>2019-12-21T11:16:18+00:00</updated>
<author>
<name>Ross MacArthur</name>
<email>ross@macarthur.io</email>
</author>
<published>2019-12-21T11:16:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f7256d28d1c2f8340ab5b99df4bdb15aa232f3f3'/>
<id>urn:sha1:f7256d28d1c2f8340ab5b99df4bdb15aa232f3f3</id>
<content type='text'>
</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>Update emscripten functions declarations</title>
<updated>2019-10-17T10:09:11+00:00</updated>
<author>
<name>Mateusz Mikuła</name>
<email>mati865@gmail.com</email>
</author>
<published>2019-10-17T10:09:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6de4924b6c1ff5a99397ca1a3894c51f085f3e6f'/>
<id>urn:sha1:6de4924b6c1ff5a99397ca1a3894c51f085f3e6f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>redox: convert to target_family unix</title>
<updated>2019-08-06T22:18:23+00:00</updated>
<author>
<name>Jeremy Soller</name>
<email>jeremy@system76.com</email>
</author>
<published>2019-04-07T14:39:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=0498da9a3dc061f604fcfb9b56bd889e07f2b7e2'/>
<id>urn:sha1:0498da9a3dc061f604fcfb9b56bd889e07f2b7e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>filedesc: don't use ioctl(FIOCLEX) on Linux</title>
<updated>2019-07-10T13:59:46+00:00</updated>
<author>
<name>Aleksa Sarai</name>
<email>cyphar@cyphar.com</email>
</author>
<published>2019-07-05T14:51:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6031a07a464eae202cc43fbb15fada094171488d'/>
<id>urn:sha1:6031a07a464eae202cc43fbb15fada094171488d</id>
<content type='text'>
All ioctl(2)s will fail on O_PATH file descriptors on Linux (because
they use &amp;empty_fops as a security measure against O_PATH descriptors
affecting the backing file).

As a result, File::try_clone() and various other methods would always
fail with -EBADF on O_PATH file descriptors. The solution is to simply
use F_SETFD (as is used on other unices) which works on O_PATH
descriptors because it operates through the fnctl(2) layer and not
through ioctl(2)s.

Since this code is usually only used in strange error paths (a broken or
ancient kernel), the extra overhead of one syscall shouldn't cause any
dramas. Most other systems programming languages also use the fnctl(2)
so this brings us in line with them.

Fixes: rust-lang/rust#62314
Signed-off-by: Aleksa Sarai &lt;cyphar@cyphar.com&gt;
</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>libstd =&gt; 2018</title>
<updated>2019-02-27T19:06:15+00:00</updated>
<author>
<name>Taiki Endo</name>
<email>te316e89@gmail.com</email>
</author>
<published>2019-02-10T19:23:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=93b6d9e086c6910118a57e4332c9448ab550931f'/>
<id>urn:sha1:93b6d9e086c6910118a57e4332c9448ab550931f</id>
<content type='text'>
</content>
</entry>
</feed>
