Commit graph

8518 commits

Author SHA1 Message Date
bors
6bf8cc5789 Auto merge of #29937 - alexcrichton:panic-recover, r=alexcrichton
This commit is an implementation of [RFC 1236] and [RFC 1323] which
rename the `thread::catch_panic` function to `panic::recover` while also
replacing the `Send + 'static` bounds with a new `PanicSafe` bound.

[RFC 1236]: https://github.com/rust-lang/rfcs/pull/1236
[RFC 1323]: https://github.com/rust-lang/rfcs/pull/1323

cc #27719
2015-12-09 16:57:46 +00:00
Alex Crichton
0a13f1abaf std: Rename thread::catch_panic to panic::recover
This commit is an implementation of [RFC 1236] and [RFC 1323] which
rename the `thread::catch_panic` function to `panic::recover` while also
replacing the `Send + 'static` bounds with a new `PanicSafe` bound.

[RFC 1236]: https://github.com/rust-lang/rfcs/pull/1236
[RFC 1323]: https://github.com/rust-lang/rfcs/pull/1323

cc #27719
2015-12-09 07:19:17 -08:00
Tshepang Lekhonkhobe
33d43c1e34 doc: these are just renames, so avoid duplication 2015-12-09 01:30:08 +02:00
bors
7b77f67d19 Auto merge of #30188 - tshepang:lookup_addr-example, r=alexcrichton 2015-12-07 07:11:19 +00:00
Tshepang Lekhonkhobe
8569ef2591 doc: add example for std::net::lookup_addr 2015-12-06 22:12:38 +02:00
bors
c4b16384f1 Auto merge of #30187 - alexcrichton:stabilize-1.6, r=aturon
This commit is the standard API stabilization commit for the 1.6 release cycle.
The list of issues and APIs below have all been through their cycle-long FCP and
the libs team decisions are listed below

Stabilized APIs

* `Read::read_exact`
* `ErrorKind::UnexpectedEof` (renamed from `UnexpectedEOF`)
* libcore -- this was a bit of a nuanced stabilization, the crate itself is now
  marked as `#[stable]` and the methods appearing via traits for primitives like
  `char` and `str` are now also marked as stable. Note that the extension traits
  themeselves are marked as unstable as they're imported via the prelude. The
  `try!` macro was also moved from the standard library into libcore to have the
  same interface. Otherwise the functions all have copied stability from the
  standard library now.
* `fs::DirBuilder`
* `fs::DirBuilder::new`
* `fs::DirBuilder::recursive`
* `fs::DirBuilder::create`
* `os::unix::fs::DirBuilderExt`
* `os::unix::fs::DirBuilderExt::mode`
* `vec::Drain`
* `vec::Vec::drain`
* `string::Drain`
* `string::String::drain`
* `vec_deque::Drain`
* `vec_deque::VecDeque::drain`
* `collections::hash_map::Drain`
* `collections::hash_map::HashMap::drain`
* `collections::hash_set::Drain`
* `collections::hash_set::HashSet::drain`
* `collections::binary_heap::Drain`
* `collections::binary_heap::BinaryHeap::drain`
* `Vec::extend_from_slice` (renamed from `push_all`)
* `Mutex::get_mut`
* `Mutex::into_inner`
* `RwLock::get_mut`
* `RwLock::into_inner`
* `Iterator::min_by_key` (renamed from `min_by`)
* `Iterator::max_by_key` (renamed from `max_by`)

Deprecated APIs

* `ErrorKind::UnexpectedEOF` (renamed to `UnexpectedEof`)
* `OsString::from_bytes`
* `OsStr::to_cstring`
* `OsStr::to_bytes`
* `fs::walk_dir` and `fs::WalkDir`
* `path::Components::peek`
* `slice::bytes::MutableByteVector`
* `slice::bytes::copy_memory`
* `Vec::push_all` (renamed to `extend_from_slice`)
* `Duration::span`
* `IpAddr`
* `SocketAddr::ip`
* `Read::tee`
* `io::Tee`
* `Write::broadcast`
* `io::Broadcast`
* `Iterator::min_by` (renamed to `min_by_key`)
* `Iterator::max_by` (renamed to `max_by_key`)
* `net::lookup_addr`

New APIs (still unstable)

* `<[T]>::sort_by_key` (added to mirror `min_by_key`)

Closes #27585
Closes #27704
Closes #27707
Closes #27710
Closes #27711
Closes #27727
Closes #27740
Closes #27744
Closes #27799
Closes #27801
cc #27801 (doesn't close as `Chars` is still unstable)
Closes #28968
2015-12-06 04:12:54 +00:00
Alex Crichton
464cdff102 std: Stabilize APIs for the 1.6 release
This commit is the standard API stabilization commit for the 1.6 release cycle.
The list of issues and APIs below have all been through their cycle-long FCP and
the libs team decisions are listed below

Stabilized APIs

* `Read::read_exact`
* `ErrorKind::UnexpectedEof` (renamed from `UnexpectedEOF`)
* libcore -- this was a bit of a nuanced stabilization, the crate itself is now
  marked as `#[stable]` and the methods appearing via traits for primitives like
  `char` and `str` are now also marked as stable. Note that the extension traits
  themeselves are marked as unstable as they're imported via the prelude. The
  `try!` macro was also moved from the standard library into libcore to have the
  same interface. Otherwise the functions all have copied stability from the
  standard library now.
* The `#![no_std]` attribute
* `fs::DirBuilder`
* `fs::DirBuilder::new`
* `fs::DirBuilder::recursive`
* `fs::DirBuilder::create`
* `os::unix::fs::DirBuilderExt`
* `os::unix::fs::DirBuilderExt::mode`
* `vec::Drain`
* `vec::Vec::drain`
* `string::Drain`
* `string::String::drain`
* `vec_deque::Drain`
* `vec_deque::VecDeque::drain`
* `collections::hash_map::Drain`
* `collections::hash_map::HashMap::drain`
* `collections::hash_set::Drain`
* `collections::hash_set::HashSet::drain`
* `collections::binary_heap::Drain`
* `collections::binary_heap::BinaryHeap::drain`
* `Vec::extend_from_slice` (renamed from `push_all`)
* `Mutex::get_mut`
* `Mutex::into_inner`
* `RwLock::get_mut`
* `RwLock::into_inner`
* `Iterator::min_by_key` (renamed from `min_by`)
* `Iterator::max_by_key` (renamed from `max_by`)

Deprecated APIs

* `ErrorKind::UnexpectedEOF` (renamed to `UnexpectedEof`)
* `OsString::from_bytes`
* `OsStr::to_cstring`
* `OsStr::to_bytes`
* `fs::walk_dir` and `fs::WalkDir`
* `path::Components::peek`
* `slice::bytes::MutableByteVector`
* `slice::bytes::copy_memory`
* `Vec::push_all` (renamed to `extend_from_slice`)
* `Duration::span`
* `IpAddr`
* `SocketAddr::ip`
* `Read::tee`
* `io::Tee`
* `Write::broadcast`
* `io::Broadcast`
* `Iterator::min_by` (renamed to `min_by_key`)
* `Iterator::max_by` (renamed to `max_by_key`)
* `net::lookup_addr`

New APIs (still unstable)

* `<[T]>::sort_by_key` (added to mirror `min_by_key`)

Closes #27585
Closes #27704
Closes #27707
Closes #27710
Closes #27711
Closes #27727
Closes #27740
Closes #27744
Closes #27799
Closes #27801
cc #27801 (doesn't close as `Chars` is still unstable)
Closes #28968
2015-12-05 15:09:44 -08:00
bors
aad4e5665e Auto merge of #30177 - retep998:handling-threads, r=alexcrichton
Allows a `HANDLE` to be extracted from a `JoinHandle` on Windows.
Allows a `pthread_t` to be extracted from a `JoinHandle` everywhere else.

Because https://github.com/rust-lang/rust/pull/29461 was closed.

r? @alexcrichton
2015-12-05 20:49:16 +00:00
Simon Sapin
507d8caf6d Remove allocations in impl Display for Ipv6Addr 2015-12-05 10:09:34 +01:00
Peter Atashian
9749a193d6 Add JoinHandleExt to get the pthread_t on unix platforms
Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-12-04 20:09:32 -05:00
Peter Atashian
95cdada99a AsRawHandle and IntoRawHandle for JoinHandle
This allows users to get the HANDLE of a spawned thread on Windows

Signed-off-by: Peter Atashian <retep998@gmail.com>
2015-12-04 20:09:30 -05:00
bors
55a4e05092 Auto merge of #30173 - sgrif:sg-fix-time-bug, r=alexcrichton
Currently if you add a duration which should lead to 0 nanos and 1
additional second, we end up with no additional seconds, and 1000000000
nanos.
2015-12-04 21:01:03 +00:00
Sean Griffin
07471423a2 Fix the time overflow on mac as well 2015-12-04 09:49:35 -07:00
Tshepang Lekhonkhobe
4463070126 doc: add example for std::fs::DirBuilder 2015-12-03 23:40:26 +02:00
Sean Griffin
5dbc373f70 Fix tests for SystemTime addition on mac and ios
Those platforms don't support nanosecond precision, so adding 1
nanosecond does nothing.
2015-12-03 08:27:32 -07:00
Sean Griffin
a59cd363cc Fixed make tidy error 2015-12-02 15:01:58 -07:00
Sean Griffin
a69bcd885b Ensure two SystemTimes are equal when nanos add to exactly 1B
Currently if you add a duration which should lead to 0 nanos and 1
additional second, we end up with no additional seconds, and 1000000000
nanos.
2015-12-02 13:55:35 -07:00
bors
88397e092e Auto merge of #30160 - adambadawy:fix_wait_with_output_typo, r=bluss
r? @steveklabnik
2015-12-02 07:36:40 +00:00
Adam Badawy
3bbc632344 Fix typo in src/libstd/process.rs 2015-12-01 23:12:01 -05:00
Steve Klabnik
9d05f56aab Rollup merge of #30150 - steveklabnik:fix_exe_suffix, r=alexcrichton 2015-12-01 19:01:42 -05:00
Steve Klabnik
f798f25073 Rollup merge of #30129 - tbu-:pr_doc_arrays_coerce, r=steveklabnik
Fixes #29993.
2015-12-01 19:01:41 -05:00
bors
2f95de3b3b Auto merge of #30129 - tbu-:pr_doc_arrays_coerce, r=steveklabnik
Fixes #29993.
2015-12-01 23:35:54 +00:00
Steve Klabnik
4fb296e077 Small fix to EXE_SUFFIX and DLL_EXTENSION docs 2015-12-01 16:53:48 -05:00
bors
0bfdedb010 Auto merge of #30118 - alexcrichton:fix-time-again, r=aturon
I believe that because Windows' unit of resolution is 100ns that this unit of
time will ensure that the assertions will hold true as it's representable in the
native format.

cc #29970
2015-12-01 07:40:41 +00:00
bors
baf020802f Auto merge of #30057 - steveklabnik:doc_str, r=alexcrichton
Part of #29338
2015-12-01 03:37:58 +00:00
Tobias Bucher
53f026948a Arrays don't dereference but coerce to slices
Fixes #29993.
2015-12-01 02:13:35 +00:00
bors
7269f0e9f3 Auto merge of #30080 - durka:patch-10, r=alexcrichton
Fixes #30073. The input to `cfg!` is a meta attribute, but not _any_ meta attribute (e.g. `cfg!(allow(dead_code))` doesn't compile). But the macro_rules syntax can't quite express this, so I added a note to the doc.
2015-11-30 21:15:56 +00:00
Steve Klabnik
7b30f5c256 Better docs for the str primitive
Part of #29338
2015-11-30 16:10:47 -05:00
Alex Crichton
903444015c std: Bump time margin in std::time tests
I believe that because Windows' unit of resolution is 100ns that this unit of
time will ensure that the assertions will hold true as it's representable in the
native format.

cc #29970
2015-11-30 10:53:20 -08:00
Alex Burka
f18bfb3168 tweak cfg! doc comment 2015-11-29 22:53:19 -05:00
Jack Fransham
6a56147a86 Fix #30093 2015-11-29 13:36:01 +00:00
bors
7499558dd0 Auto merge of #30092 - semarie:to_socket_addr_str_bad, r=alexcrichton
I don't reproduce it on severals hosts (virtual or real), so I can't
debug it. As Bitrig has disabled this test too, I will follow the same
here.

r? @alexcrichton
2015-11-28 19:57:45 +00:00
Sébastien Marie
6a7733a358 disable net::addr::to_socket_addr_str_bad test under openbsd
I don't reproduce it on severals hosts (virtual or real), so I can't
debug it. As Bitrig has disabled this test too, I will follow the same
here.
2015-11-28 09:10:48 +01:00
Alex Burka
f542d4aba7 fix docs for compiler builtin macros 2015-11-26 22:45:55 -05:00
bors
6f3becb18a Auto merge of #30061 - tshepang:doc-time, r=brson 2015-11-26 14:50:36 +00:00
Tshepang Lekhonkhobe
cc815d2de0 doc: this is already mentioned in previous paragraph, and is harder to read 2015-11-26 04:43:17 +02:00
Tshepang Lekhonkhobe
3dd7e6ed7c doc: fix type name 2015-11-25 22:51:01 +02:00
Tshepang Lekhonkhobe
44665c4e61 doc: add a pause 2015-11-25 22:50:47 +02:00
Tshepang Lekhonkhobe
d447ceaedb doc: split overlong sentence 2015-11-25 22:47:17 +02:00
Tshepang Lekhonkhobe
a4c0a6fccd doc: add missing commas 2015-11-25 22:46:39 +02:00
Tshepang Lekhonkhobe
e15dd99b7b doc: fix grammar 2015-11-25 22:45:39 +02:00
Tshepang Lekhonkhobe
a5b294864a doc: remove info repeated on next paragraph 2015-11-25 22:45:14 +02:00
Vadim Petrochenkov
be8ace8cac Remove all uses of #[staged_api] 2015-11-25 21:55:26 +03:00
bors
e3dfb2c45f Auto merge of #30052 - Ryman:bind_docs, r=apasel422
`socket_addr` was renamed to `local_addr` in 1.0beta.

See: f798674b86

r? @steveklabnik
2015-11-25 13:18:16 +00:00
Kevin Butler
add5054bea Fix docs for TcpListener::bind
`socket_addr` was renamed to `local_addr` in 1.0beta.

See: f798674b86
2015-11-25 13:16:37 +00:00
Manish Goregaokar
4a8f2004a6 Rollup merge of #30013 - steveklabnik:doc_char, r=brson
Part of https://github.com/rust-lang/rust/issues/29333
2015-11-25 09:21:18 +05:30
bors
338cdd7e05 Auto merge of #30016 - alexcrichton:fix-off-by-one, r=brson
Typical algebra currently doesn't work on the types in std::time currently (see
[this comment][comment]), so tweak the tests to account for this property.

[comment]: https://github.com/rust-lang/rust/issues/29866#issuecomment-159093809

Closes #29970
2015-11-24 23:24:18 +00:00
Steve Klabnik
10c6737ecf Fix up docs for char
Part of https://github.com/rust-lang/rust/issues/29333
2015-11-24 13:25:55 -05:00
bors
92f96b2445 Auto merge of #30006 - ntrepid8:skip-check-for-DYLD-libs-in-child-proc, r=alexcrichton
It seems that OS X El Capitan does not pass DYLD_* environment variables to child processes anymore.  See this link: https://forums.developer.apple.com/thread/9233

The causes a test in `src/libstd/process.rs' to fail when those environment variables are not found in the child process.  This PR skips those variables similar to how the Windows envars that start with `=` are skipped.
2015-11-24 04:26:47 +00:00
Alex Crichton
27ee3fea7a std: Tweak tests of std::time
Typical algebra currently doesn't work on the types in std::time currently (see
[this comment][comment]), so tweak the tests to account for this property.

[comment]: https://github.com/rust-lang/rust/issues/29866#issuecomment-159093809

Closes #29970
2015-11-23 15:27:07 -08:00