<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/src/libstd/io/stdio.rs, branch try</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=try</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=try'/>
<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>Rollup merge of #73759 - GuillaumeGomez:stdin-examples, r=Dylan-DPC</title>
<updated>2020-07-14T20:19:20+00:00</updated>
<author>
<name>Manish Goregaokar</name>
<email>manishsmail@gmail.com</email>
</author>
<published>2020-07-14T20:19:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=353df59893f4dc249f06047dca659b5b2172063f'/>
<id>urn:sha1:353df59893f4dc249f06047dca659b5b2172063f</id>
<content type='text'>
Add missing Stdin and StdinLock examples

r? @Dylan-DPC
</content>
</entry>
<entry>
<title>Add missing Stdin and StdinLock exampels</title>
<updated>2020-06-26T11:31:36+00:00</updated>
<author>
<name>Guillaume Gomez</name>
<email>guillaume1.gomez@gmail.com</email>
</author>
<published>2020-06-26T11:31:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=98a3b07213d695668081126a880fe7ac5dd9cd4e'/>
<id>urn:sha1:98a3b07213d695668081126a880fe7ac5dd9cd4e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Restore some write_fmts</title>
<updated>2020-06-17T23:48:51+00:00</updated>
<author>
<name>Nathan West</name>
<email>Lucretiel@gmail.com</email>
</author>
<published>2020-06-17T23:48:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=14d385bedeeec7fcb48f4c9bb881b1cdae011da0'/>
<id>urn:sha1:14d385bedeeec7fcb48f4c9bb881b1cdae011da0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Removed write_fmt forwarding, to fix recursive borrow issues</title>
<updated>2020-06-17T21:56:25+00:00</updated>
<author>
<name>Nathan West</name>
<email>Lucretiel@gmail.com</email>
</author>
<published>2020-06-17T21:56:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b60cefee0addb02b5bd146893d358bb52bc829e2'/>
<id>urn:sha1:b60cefee0addb02b5bd146893d358bb52bc829e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added io forwarding methods to the stdio structs</title>
<updated>2020-05-28T19:02:48+00:00</updated>
<author>
<name>Nathan West</name>
<email>Lucretiel@gmail.com</email>
</author>
<published>2020-05-28T19:02:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=358dc1d8c2e10eceaf3c04d532bbde73b0dd4bb7'/>
<id>urn:sha1:358dc1d8c2e10eceaf3c04d532bbde73b0dd4bb7</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>more clippy fixes</title>
<updated>2020-03-31T13:20:05+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2020-03-29T18:19:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=08f2904dfaf5e75fbcc1305c8b0aad5fae71a4ff'/>
<id>urn:sha1:08f2904dfaf5e75fbcc1305c8b0aad5fae71a4ff</id>
<content type='text'>
use is_empty() instead of len comparison (clippy::len_zero)
use if let instead of while let loop that never loops (clippy::never_loop)
remove redundant returns (clippy::needless_return)
remove redundant closures (clippy::redundant_closure)
use if let instead of match and wildcard pattern (clippy::single_match)
don't repeat field names redundantly (clippy::redundant_field_names)
</content>
</entry>
<entry>
<title>Rollup merge of #69955 - alexcrichton:stderr-infallible, r=sfackler</title>
<updated>2020-03-21T12:06:38+00:00</updated>
<author>
<name>Dylan DPC</name>
<email>dylan.dpc@gmail.com</email>
</author>
<published>2020-03-21T12:06:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=276b54e9c930c4ff015e1958ad1c640deffd29b2'/>
<id>urn:sha1:276b54e9c930c4ff015e1958ad1c640deffd29b2</id>
<content type='text'>
Fix abort-on-eprintln during process shutdown

This commit fixes an issue where if `eprintln!` is used in a TLS
destructor it can accidentally cause the process to abort. TLS
destructors are executed after `main` returns on the main thread, and at
this point we've also deinitialized global `Lazy` values like those
which store the `Stderr` and `Stdout` internals. This means that despite
handling TLS not being accessible in `eprintln!`, we will fail due to
not being able to call `stderr()`. This means that we'll double-panic
quickly because panicking also attempt to write to stderr.

The fix here is to reimplement the global stderr handle to avoid the
need for destruction. This avoids the need for `Lazy` as well as the
hidden panic inside of the `stderr` function.

Overall this should improve the robustness of printing errors and/or
panics in weird situations, since the `stderr` accessor should be
infallible in more situations.
</content>
</entry>
</feed>
