Uh oh!
There was an error while loading. Please reload this page.
std: Stabilize APIs for the 1.11.0 release - #34530
Conversation
rust-highfive
commented
Jun 28, 2016
r? @aturon (rust_highfive has picked a reviewer for you, use r? to override) |
alexcrichton
commented
Jun 28, 2016
cc @rust-lang/libs, the deprecation of |
@alexcrichton Your comments about the fallout and unlikelihood of stabilizing |
alexcrichton
commented
Jun 28, 2016
I'm personally still confident in stabilizing the sum/product methods, but yes we're digging ourselves into a hole with The methods of This would entail killing |
e0aa055 to
71dec1bCompareThere was a problem hiding this comment.
Why always check rather than use + with its configurable behavior?
There was a problem hiding this comment.
With MIR we unfortunately don't have that luxury as whether the arithmetic is checked or not is encoded into the MIR, not generated at trans time.
There was a problem hiding this comment.
Is that relevant because libcore is usually distributed pre-compiled? If so it’s worth a source comment at least, and maybe a doc-comment.
There was a problem hiding this comment.
The overflow behavior is documented on the sum/product methods, and yes this is due to it being distributed as a compiled artifact.
aturon
commented
Jul 1, 2016
One stability nit, otherwise r=me |
alexcrichton
commented
Jul 1, 2016
@bors: r=aturon |
bors
commented
Jul 1, 2016
📌 Commit 71dec1b has been approved by |
bors
commented
Jul 2, 2016
⌛ Testing commit 71dec1b with merge 9ef8ff8... |
bors
commented
Jul 2, 2016
💔 Test failed - auto-win-gnu-32-opt-rustbuild |
|
alexcrichton
commented
Jul 2, 2016
@bors: r=aturon |
bors
commented
Jul 2, 2016
📌 Commit 7cfcb4a has been approved by |
bors
commented
Jul 2, 2016
⌛ Testing commit 7cfcb4a with merge f632159... |
bors
commented
Jul 2, 2016
💔 Test failed - auto-win-msvc-64-cargotest |
arielb1
commented
Jul 3, 2016
|
Although the set of APIs being stabilized this release is relatively small, the
trains keep going! Listed below are the APIs in the standard library which have
either transitioned from unstable to stable or those from unstable to
deprecated.
Stable
* `BTreeMap::{append, split_off}`
* `BTreeSet::{append, split_off}`
* `Cell::get_mut`
* `RefCell::get_mut`
* `BinaryHeap::append`
* `{f32, f64}::{to_degrees, to_radians}` - libcore stabilizations mirroring past
libstd stabilizations
* `Iterator::sum`
* `Iterator::product`
Deprecated
* `{f32, f64}::next_after`
* `{f32, f64}::integer_decode`
* `{f32, f64}::ldexp`
* `{f32, f64}::frexp`
* `num::One`
* `num::Zero`
Added APIs (all unstable)
* `iter::Sum`
* `iter::Product`
* `iter::Step` - a few methods were added to accomodate deprecation of One/Zero
Removed APIs
* `From<Range<T>> for RangeInclusive<T>` - everything about `RangeInclusive` is
unstable
Closesrust-lang#27739Closesrust-lang#27752Closesrust-lang#32526Closesrust-lang#33444Closesrust-lang#34152
cc rust-lang#34529 (new tracking issue)alexcrichton
commented
Jul 3, 2016
@bors: r=aturon |
bors
commented
Jul 3, 2016
📌 Commit 3016626 has been approved by |
bors
commented
Jul 3, 2016
std: Stabilize APIs for the 1.11.0 release
Although the set of APIs being stabilized this release is relatively small, the
trains keep going! Listed below are the APIs in the standard library which have
either transitioned from unstable to stable or those from unstable to
deprecated.
Stable
* `BTreeMap::{append, split_off}`
* `BTreeSet::{append, split_off}`
* `Cell::get_mut`
* `RefCell::get_mut`
* `BinaryHeap::append`
* `{f32, f64}::{to_degrees, to_radians}` - libcore stabilizations mirroring past
libstd stabilizations
* `Iterator::sum`
* `Iterator::product`
Deprecated
* `{f32, f64}::next_after`
* `{f32, f64}::integer_decode`
* `{f32, f64}::ldexp`
* `{f32, f64}::frexp`
* `num::One`
* `num::Zero`
Added APIs (all unstable)
* `iter::Sum`
* `iter::Product`
* `iter::Step` - a few methods were added to accomodate deprecation of One/Zero
Removed APIs
* `From<Range<T>> for RangeInclusive<T>` - everything about `RangeInclusive` is
unstable
Closes#27739Closes#27752Closes#32526Closes#33444Closes#34152
cc #34529 (new tracking issue)
Although the set of APIs being stabilized this release is relatively small, the
trains keep going! Listed below are the APIs in the standard library which have
either transitioned from unstable to stable or those from unstable to
deprecated.
Stable
BTreeMap::{append, split_off}BTreeSet::{append, split_off}Cell::get_mutRefCell::get_mutBinaryHeap::append{f32, f64}::{to_degrees, to_radians}- libcore stabilizations mirroring pastlibstd stabilizations
Iterator::sumIterator::productDeprecated
{f32, f64}::next_after{f32, f64}::integer_decode{f32, f64}::ldexp{f32, f64}::frexpnum::Onenum::ZeroAdded APIs (all unstable)
iter::Sumiter::Productiter::Step- a few methods were added to accomodate deprecation of One/ZeroRemoved APIs
From<Range<T>> for RangeInclusive<T>- everything aboutRangeInclusiveisunstable
Closes#27739
Closes#27752
Closes#32526
Closes#33444
Closes#34152
cc #34529 (new tracking issue)