Commit graph

11274 commits

Author SHA1 Message Date
Julien Cretin
448215d226 Implement From<SendError<T>> for TrySendError<T> 2017-10-31 00:18:53 +01:00
bors
7d475a28df Auto merge of #45295 - Technius:docs/process, r=steveklabnik
Improve std::process module docs

Addresses part of #29370

I've changed the first `cat` example to a "Hello World" example involving echo, and I've also added another example showing how to pipe output. I'm still working on the module-level description.

For now, I'd like feedback on the examples.

r? @steveklabnik
2017-10-29 06:24:20 +00:00
Bryan Tan
84ab6aec43 Add no_run to process examples involving unix commands 2017-10-28 20:27:05 -07:00
kennytm
71b876bca0 Rollup merge of #45449 - frewsxcv:frewsxcv-udp-nonblocking, r=sfackler
Improve docs for UdpSocket::set_nonblocking.

Closes https://github.com/rust-lang/rust/issues/44050.
2017-10-28 15:56:20 +08:00
bors
d9f1249655 Auto merge of #45285 - alexcrichton:update-bootstrap, r=Mark-Simulacrum
Bump to 1.23 and update bootstrap

This commit updates the bootstrap compiler, bumps the version to 1.23, updates
Cargo, updates books, and updates crates.io dependencies
2017-10-27 18:00:32 +00:00
bors
1855aff8d7 Auto merge of #45524 - alexcrichton:improve-park-unpark, r=dtolnay
std: Optimize thread park/unpark implementation

This is an adaptation of alexcrichton/futures-rs#597 for the standard library.
The goal here is to avoid locking a mutex on the "fast path" for thread
park/unpark where you're waking up a thread that isn't sleeping or otherwise
trying to park a thread that's already been notified. Mutex performance varies
quite a bit across platforms so this should provide a nice consistent speed
boost for the fast path of these functions.
2017-10-27 02:19:16 +00:00
Alex Crichton
ca18537197 Bump to 1.23 and update bootstrap
This commit updates the bootstrap compiler, bumps the version to 1.23, updates
Cargo, updates books, and updates crates.io dependencies
2017-10-26 13:59:18 -07:00
Corey Farwell
04f27f01cb Improve docs for UdpSocket::set_nonblocking.
Closes https://github.com/rust-lang/rust/issues/44050.
2017-10-26 10:05:54 -04:00
kennytm
bea6136b4a Rollup merge of #45059 - tmccombs:pid, r=alexcrichton
Add current_pid function

Fixes #44971
2017-10-26 03:02:48 +08:00
Alex Crichton
6511e46753 std: Optimize thread park/unpark implementation
This is an adaptation of alexcrichton/futures-rs#597 for the standard library.
The goal here is to avoid locking a mutex on the "fast path" for thread
park/unpark where you're waking up a thread that isn't sleeping or otherwise
trying to park a thread that's already been notified. Mutex performance varies
quite a bit across platforms so this should provide a nice consistent speed
boost for the fast path of these functions.
2017-10-25 08:35:51 -07:00
Guillaume Gomez
5a7de598fa Rollup merge of #45361 - GuillaumeGomez:fs-docs, r=QuietMisdreavus
Add missing code examples

r? @rust-lang/docs
2017-10-25 09:48:08 +02:00
Julien Cretin
73ed6cf7fb Implement From<RecvError> for TryRecvError and RecvTimeoutError 2017-10-25 00:06:28 +02:00
bors
c2799fc9a5 Auto merge of #45446 - leodasvacas:remove-libcollections, r=alexcrichton
Remove deprecated `collections` crate.

The real `collections` was merged with `alloc`, this facade was introduced [in this PR](https://github.com/rust-lang/rust/pull/42720) to give `#[no_std]` users time to adapt. This was done at least two cycles ago, now we can consider removing it for good.
2017-10-24 20:46:17 +00:00
Guillaume Gomez
e42da901a8 Fix doc build on other architectures than linux 2017-10-24 21:58:53 +02:00
bors
4c053db233 Auto merge of #45451 - durka:patch-45, r=steveklabnik
fix stringify docs

Update `stringify!` docs to show actual accepted syntax. Reported [on reddit](https://www.reddit.com/r/rust/comments/76o8rh/hey_rustaceans_got_an_easy_question_ask_here/dopzwys/).
2017-10-22 23:02:15 +00:00
Alex Burka
365eafbc7f fix stringify docs in std 2017-10-22 13:17:23 -04:00
leonardo.yvens
19aa23b6d3 Remove deprecated collections crate.
This reverts commit 6484258f17.
2017-10-22 14:55:02 -02:00
Corey Farwell
aae94c7368 Improve docs around Once::call_once_force and OnceState. 2017-10-22 10:25:31 -04:00
bors
1042190f8c Auto merge of #45400 - alexcrichton:bootstrap-thinlto, r=Mark-Simulacrum
rustbuild: Compile rustc with ThinLTO

This commit enables ThinLTO for the compiler as well as multiple codegen units.
This is intended to get the benefits of parallel codegen while also avoiding
any major loss of perf. Finally this commit is also intended as further testing
for #45320 and shaking out bugs.
2017-10-22 00:35:05 +00:00
Corey Farwell
6ed7927fa0 Rollup merge of #45419 - steveklabnik:fix-commonmark-renderings, r=QuietMisdreavus
Fix most rendering warnings from switching to CommonMark

There's one big one lift, I'm filing a bug for it soon.

r? @rust-lang/docs
2017-10-21 09:47:25 -04:00
Corey Farwell
cf29743ea6 Rollup merge of #45227 - frewsxcv:frewsxcv-set-nonblocking, r=sfackler
Expand docs/examples for TCP `set_nonblocking` methods.

Part of https://github.com/rust-lang/rust/issues/44050.
2017-10-21 09:47:20 -04:00
Corey Farwell
fe3ed20d8d Expand docs/examples for TCP set_nonblocking methods.
Part of https://github.com/rust-lang/rust/issues/44050.
2017-10-21 06:13:42 -04:00
bors
d532ba7c62 Auto merge of #45391 - malbarbo:x32-1, r=alexcrichton
Update libc and some fixes for x86_64-unknown-linux-gnux32
2017-10-21 09:37:11 +00:00
bors
cc03782b93 Auto merge of #45370 - alexcrichton:update-windows-rand, r=sfackler
std: Update randomness implementation on Windows

This commit updates the OS random number generator on Windows to match the
upstream implementation in the `rand` crate. First proposed in
rust-lang-nursery/rand#111 this implementation uses a "private" API of
`RtlGenRandom`. Despite the [documentation][dox] indicating this is a private
function its widespread use in Chromium and Firefox as well as [comments] from
Microsoft internally indicates that it's highly unlikely to break.

Another motivation for switching this is to also attempt to make progress
on #44911. It may be the case that this function succeeds while the previous
implementation may fail in "weird" scenarios.

[dox]: https://msdn.microsoft.com/en-us/library/windows/desktop/aa387694(v=vs.85).aspx
[comments]: https://github.com/rust-lang-nursery/rand/issues/111#issuecomment-316140155
2017-10-21 04:33:32 +00:00
steveklabnik
f8f9005e57 Fix most rendering warnings from switching to CommonMark 2017-10-20 15:29:35 -04:00
Alex Crichton
d01427f53e [test] Add some #[inline] to HashMap 2017-10-20 11:49:36 -07:00
Marco A L Barbosa
e57ee3d0bf Fix some tests for linux gnux32 2017-10-20 13:18:16 -02:00
Guillaume Gomez
3507b2b26b Add missing code examples 2017-10-19 13:40:45 +02:00
Alex Crichton
55c01736cb std: Update randomness implementation on Windows
This commit updates the OS random number generator on Windows to match the
upstream implementation in the `rand` crate. First proposed in
rust-lang-nursery/rand#111 this implementation uses a "private" API of
`RtlGenRandom`. Despite the [documentation][dox] indicating this is a private
function its widespread use in Chromium and Firefox as well as [comments] from
Microsoft internally indicates that it's highly unlikely to break.

Another motivation for switching this is to also attempt to make progress
on #44911. It may be the case that this function succeeds while the previous
implementation may fail in "weird" scenarios.

[dox]: https://msdn.microsoft.com/en-us/library/windows/desktop/aa387694(v=vs.85).aspx
[comments]: https://github.com/rust-lang-nursery/rand/issues/111#issuecomment-316140155
2017-10-18 11:48:20 -07:00
Jonathan Behrens
df4b78160c
Implement is_empty() for BufReader 2017-10-18 14:27:33 -04:00
kennytm
c6892f470e Rollup merge of #45340 - stjepang:localkey-state-doc-skip-uninitialized, r=alexcrichton
Docs: a LocalKey might start in the Valid state

Add a comment to the docs for `LocalKey::state` explaining that some keys might skip the `Uninitialized` state and start in the `Valid` state.

cc #27716

r? @alexcrichton
2017-10-19 01:59:53 +08:00
Bryan Tan
3566832ef3 Add child process IO handling docs 2017-10-17 17:49:02 -07:00
kennytm
7f72b31165 Rollup merge of #45339 - xfix:patch-4, r=steveklabnik
Update array documentation for Clone trait changes

Just a note, for this to work, `T` doesn't have to `Copy`, `Clone` is sufficient. For instance, the following works.

```rust
fn x(a: &[String; 100]) -> [String; 100] {
    a.clone()
}
```
2017-10-17 22:21:05 +08:00
kennytm
78080f11ad Rollup merge of #45329 - rust-lang:duplicate-word, r=QuietMisdreavus
Remove duplicated word

r? @rust-lang/docs
2017-10-17 22:21:03 +08:00
kennytm
18f289559e Rollup merge of #45151 - Pirh:stdio_default_docs, r=frewsxcv
Document defaults for stdin, stdout, and stderr methods of Command

For #29370
2017-10-17 22:20:57 +08:00
Stjepan Glavina
a50fe312dc Docs: a LocalKey might start in the Valid state 2017-10-17 11:02:25 +02:00
Konrad Borowski
8528508aa0 Update array documentation for Clone trait changes 2017-10-17 08:29:29 +02:00
Guillaume Gomez
cefaaf21ee Remove duplicated word 2017-10-17 00:19:25 +02:00
Bryan Tan
f67f6622b3 Create section on how to spawn processes; change module description 2017-10-15 19:45:07 -07:00
Bryan Tan
bb74b13b74 Fix std::process hello world example 2017-10-15 13:11:14 -07:00
Vadim Petrochenkov
9e0fc5ccd0 rustbuild: Support specifying archiver and linker explicitly 2017-10-15 22:10:07 +03:00
bors
8382f39b6b Auto merge of #45299 - kennytm:rollup, r=kennytm
Rollup of 9 pull requests

- Successful merges: #45113, #45250, #45255, #45258, #45263, #45264, #45269, #45280, #45289
- Failed merges:
2017-10-15 08:39:58 +00:00
kennytm
f55cb4856b Rollup merge of #45269 - sfackler:connect-timeout-fix, r=alexcrichton
Fix TcpStream::connect_timeout on linux

Linux appears to set POLLOUT when a conection's refused, which is pretty
weird. Invert the check to look for an error explicitly. Also add an
explict test for this case.

Closes #45265.

r? @alexcrichton
2017-10-15 14:21:57 +08:00
kennytm
5e8d407c31 Rollup merge of #45263 - Manishearth:hashmap-clean, r=bluss
Do some cleanups for hashmaps

@mystor noticed some things whilst reading through the hashmap RawTable code.

Firstly, in RawTable we deal with this hash_offset value that is the offset of the list of hashes from the buffer start. This is always zero, and this isn't consistently used (which means that we would have bugs if we set it to something else). We should just remove this since it doesn't help us at all.

Secondly, the probing length tag is not copied when cloning a raw table. This is minor and basically means we do a bit more work than we need on further inserts on a cloned hashmap.

r? @Gankro
2017-10-15 14:21:55 +08:00
kennytm
430ac4ba50 Rollup merge of #45113 - Pirh:process_output_links, r=steveklabnik
Link std::process::Output to Command and Child

As per #29370
2017-10-15 14:21:51 +08:00
bors
6c0d50f9fa Auto merge of #45224 - malbarbo:x32, r=alexcrichton
Add x86_64-unknown-linux-gnux32 target

This adds X32 ABI support for Linux on X86_64. Let's package and dist it so we can star testing libc, libstd, etc.

Fixes https://github.com/rust-lang/rfcs/issues/1339
2017-10-15 06:12:13 +00:00
Bryan Tan
e788e90bad Fixed accidental deletion of colon 2017-10-14 20:41:58 -07:00
Bryan Tan
5243a98b48 Add a brief description and two examples to std::process 2017-10-14 19:19:19 -07:00
Steven Fackler
cab99a3f8c Fix TcpStream::connect_timeout on linux
Linux appears to set POLLOUT when a conection's refused, which is pretty
weird. Invert the check to look for an error explicitly. Also add an
explict test for this case.

Closes #45265.
2017-10-14 13:56:30 -07:00
Manish Goregaokar
e8e7715beb
std: Set probe length tag on cloned hashmaps
This isn't strictly necessary for hashmap cloning to work. The tag is
used to hint for an upcoming resize, so it's good to copy this
information over.

(We can do cleverer things like actually resizing the hashmap when we
see the tag, or even cleaning up the entry order, but this requires
more thought and might not be worth it)
2017-10-14 10:21:52 -04:00