-
Notifications
You must be signed in to change notification settings - Fork 13.9k
std: Stabilize APIs for the 1.6 release #30187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
r? @brson (rust_highfive has picked a reviewer for you, use r? to override) |
|
r? @aturon cc @rust-lang/libs |
e73d694 to
93244f8
Compare
|
☔ The latest upstream changes (presumably #29999) made this pull request unmergeable. Please resolve the merge conflicts. |
bdf3a1c to
9f2ea07
Compare
|
This commit also notably stabilizes |
9f2ea07 to
42225f7
Compare
|
☔ The latest upstream changes (presumably #30190) made this pull request unmergeable. Please resolve the merge conflicts. |
6daf10b to
ee96823
Compare
src/liballoc/boxed.rs
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just slip that in there :)
This is probably prudent, and technically breaking but it's unstable anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh oops, this wasn't supposed to sneak in here
|
This LGTM. We should figure out a story for the libcore docs eventually, but it shouldn't block this PR. |
ee96823 to
ba5bb32
Compare
|
@bors: r=aturon ba5bb32 |
|
⌛ Testing commit ba5bb32 with merge b2538d2... |
|
💔 Test failed - auto-linux-64-opt |
ba5bb32 to
8c3ec7b
Compare
|
@bors: r=aturon 8c3ec7be58b38adb5c292ccb5ae386600037b7c1 |
|
⌛ Testing commit 8c3ec7b with merge 70208d4... |
|
💔 Test failed - auto-win-msvc-32-opt |
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 rust-lang#27585 Closes rust-lang#27704 Closes rust-lang#27707 Closes rust-lang#27710 Closes rust-lang#27711 Closes rust-lang#27727 Closes rust-lang#27740 Closes rust-lang#27744 Closes rust-lang#27799 Closes rust-lang#27801 cc rust-lang#27801 (doesn't close as `Chars` is still unstable) Closes rust-lang#28968
8c3ec7b to
464cdff
Compare
|
⌛ Testing commit 464cdff with merge f1cd20a... |
|
💔 Test failed - auto-win-gnu-64-nopt-t |
|
@bors retry |
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
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_exactErrorKind::UnexpectedEof(renamed fromUnexpectedEOF)marked as
#[stable]and the methods appearing via traits for primitives likecharandstrare now also marked as stable. Note that the extension traitsthemeselves 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 thesame interface. Otherwise the functions all have copied stability from the
standard library now.
fs::DirBuilderfs::DirBuilder::newfs::DirBuilder::recursivefs::DirBuilder::createos::unix::fs::DirBuilderExtos::unix::fs::DirBuilderExt::modevec::Drainvec::Vec::drainstring::Drainstring::String::drainvec_deque::Drainvec_deque::VecDeque::draincollections::hash_map::Draincollections::hash_map::HashMap::draincollections::hash_set::Draincollections::hash_set::HashSet::draincollections::binary_heap::Draincollections::binary_heap::BinaryHeap::drainVec::extend_from_slice(renamed frompush_all)Mutex::get_mutMutex::into_innerRwLock::get_mutRwLock::into_innerIterator::min_by_key(renamed frommin_by)Iterator::max_by_key(renamed frommax_by)Deprecated APIs
ErrorKind::UnexpectedEOF(renamed toUnexpectedEof)OsString::from_bytesOsStr::to_cstringOsStr::to_bytesfs::walk_dirandfs::WalkDirpath::Components::peekslice::bytes::MutableByteVectorslice::bytes::copy_memoryVec::push_all(renamed toextend_from_slice)Duration::spanIpAddrSocketAddr::ipRead::teeio::TeeWrite::broadcastio::BroadcastIterator::min_by(renamed tomin_by_key)Iterator::max_by(renamed tomax_by_key)net::lookup_addrNew APIs (still unstable)
<[T]>::sort_by_key(added to mirrormin_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
Charsis still unstable)Closes #28968