Skip to content

Commit 553ac52

Browse files
author
Aaron Power
committed
Updated release notes for 1.20
1 parent 12aad38 commit 553ac52

File tree

1 file changed

+137
-1
lines changed

1 file changed

+137
-1
lines changed

RELEASES.md

Lines changed: 137 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,139 @@
1+
Version 1.20.0 (2017-08-31)
2+
===========================
3+
4+
Language
5+
--------
6+
- [Associated constants in traits is now stabilised.][42809]
7+
- [A lot of macro bugs are now fixed.][42913]
8+
9+
Compiler
10+
--------
11+
12+
- [Struct fields are now properly to the expected field type.][42807]
13+
- [Enabled wasm LLVM backend][42571] WASM can now be built with the
14+
`wasm32-experimental-emscripten` target.
15+
- [Changed some of the error messages to be more helpful.][42033]
16+
- [Add support for RELRO(RELocation Read-Only) for platforms that support
17+
it.][43170]
18+
- [rustc now reports the total number of errors on compilation failure][43015]
19+
previously this was only the number of errors in the pass that failed.
20+
- [Expansion in rustc has been sped up 29x.][42533]
21+
- [added `msp430-none-elf` target.][43099]
22+
- [rustc will now suggest one-argument enum variant to fix type mismatch when
23+
applicable][43178]
24+
- [Fixes backtraces on Redox][43228]
25+
- [rustc now identifies different versions of same crate when absolute paths of
26+
different types match in an error message.][42826]
27+
28+
Libraries
29+
---------
30+
31+
- [`Ref`, `RefMut`, `MutexGuard`, `RwLockReadGuard`, `RwLockWriteGuard`
32+
now impl `fmt::Display` & `fmt::Debug`.][42822]
33+
- [Relaxed Debug constraints on {HashMap,BTreeMap}::{Keys,Values}.][42854]
34+
- [Implement `PartialEq`, `Eq`, `PartialOrd`, `Ord`, `Debug`, `Hash` for unsized
35+
tuples.][43011]
36+
- [Impl `Clone` for `DefaultHasher`.][42799]
37+
- [Implement `Sync` for `SyncSender`.][42397]
38+
- [Fixed how `{f32, f64}::{is_sign_negative, is_sign_positive}` handles
39+
NaN.][42431]
40+
- [allow messages in the `unimplemented!()` macro.][42155]
41+
ie. `unimplemented!("Waiting for 1.21 to be stable")`
42+
- [`char`now impls `FromStr`.][42271]
43+
- [support pub(restricted) in thread_local! (round 2)][43185]
44+
- [Upgrade to Unicode 10.0.0][42999]
45+
- [Reimplemented `{f32, f64}::{min, max}` in Rust instead of using CMath.][42430]
46+
- [Skip the main thread's manual stack guard on Linux][43072]
47+
- [Iterator::nth for `ops::{Range, RangeFrom}` is now done in O(1) time][43077]
48+
- [`#cfg[align(N)]` attribute max number is now 2^31 - 1.][43097] This was
49+
previously 2^15.
50+
- [`{OsStr, Path}::Display` now avoids allocations where possible][42613]
51+
52+
Stabilized APIs
53+
---------------
54+
55+
- [`Chain::get_mut`]
56+
- [`Chain::get_ref`]
57+
- [`Chain::into_inner`]
58+
- [`Take::get_mut`]
59+
- [`Take::get_ref`]
60+
- [`f32::from_bits`]
61+
- [`f32::to_bits`]
62+
- [`f64::from_bits`]
63+
- [`f64::to_bits`]
64+
- [`slice::sort_unstable`]
65+
- [`slice::sort_unstable_by`]
66+
- [`slice::sort_unstable_by_key`]
67+
68+
Cargo
69+
-----
70+
- [Cargo API token location moved from `~/.cargo/config` to
71+
`~/cargo/credentials`.][cargo/3978]
72+
- [Cargo will now build multiple `main.rs` binaries in different
73+
directories.][cargo/4214] ie. Having `src/server/main.rs` and
74+
`src/client/main.rs` generates `target/debug/server` and `target/debug/client`
75+
- [You can now specify version of a binary when installed through
76+
`cargo install` using `--vers`.][cargo/4229]
77+
- [Added `--no-fail-fast` flag to cargo to run all benchmarks regardless of
78+
failure.][cargo/4248]
79+
- [Changed the convention around which file is the crate root.][cargo/4259]
80+
- [The `include`/`exclude` property in `Cargo.toml` now accepts gitignore paths
81+
instead of glob patterns][cargo/4270]. Glob patterns are now deprecated.
82+
83+
Compatibility Notes
84+
-------------------
85+
86+
- [Functions with `'static` in their return types will now not be as usable as
87+
if they were using lifetime parameters instead.][42417]
88+
89+
[42033]: https://github.com/rust-lang/rust/pull/42033
90+
[42155]: https://github.com/rust-lang/rust/pull/42155
91+
[42271]: https://github.com/rust-lang/rust/pull/42271
92+
[42397]: https://github.com/rust-lang/rust/pull/42397
93+
[42417]: https://github.com/rust-lang/rust/pull/42417
94+
[42430]: https://github.com/rust-lang/rust/pull/42430
95+
[42431]: https://github.com/rust-lang/rust/pull/42431
96+
[42533]: https://github.com/rust-lang/rust/pull/42533
97+
[42571]: https://github.com/rust-lang/rust/pull/42571
98+
[42613]: https://github.com/rust-lang/rust/pull/42613
99+
[42799]: https://github.com/rust-lang/rust/pull/42799
100+
[42807]: https://github.com/rust-lang/rust/pull/42807
101+
[42809]: https://github.com/rust-lang/rust/pull/42809
102+
[42822]: https://github.com/rust-lang/rust/pull/42822
103+
[42826]: https://github.com/rust-lang/rust/pull/42826
104+
[42854]: https://github.com/rust-lang/rust/pull/42854
105+
[42913]: https://github.com/rust-lang/rust/pull/42913
106+
[42999]: https://github.com/rust-lang/rust/pull/42999
107+
[43011]: https://github.com/rust-lang/rust/pull/43011
108+
[43015]: https://github.com/rust-lang/rust/pull/43015
109+
[43072]: https://github.com/rust-lang/rust/pull/43072
110+
[43077]: https://github.com/rust-lang/rust/pull/43077
111+
[43097]: https://github.com/rust-lang/rust/pull/43097
112+
[43099]: https://github.com/rust-lang/rust/pull/43099
113+
[43170]: https://github.com/rust-lang/rust/pull/43170
114+
[43178]: https://github.com/rust-lang/rust/pull/43178
115+
[43185]: https://github.com/rust-lang/rust/pull/43185
116+
[43228]: https://github.com/rust-lang/rust/pull/43228
117+
[cargo/3978]: https://github.com/rust-lang/cargo/pull/3978
118+
[cargo/4214]: https://github.com/rust-lang/cargo/pull/4214
119+
[cargo/4229]: https://github.com/rust-lang/cargo/pull/4229
120+
[cargo/4248]: https://github.com/rust-lang/cargo/pull/4248
121+
[cargo/4259]: https://github.com/rust-lang/cargo/pull/4259
122+
[cargo/4270]: https://github.com/rust-lang/cargo/pull/4270
123+
[`Chain::get_mut`]: https://doc.rust-lang.org/std/io/struct.Chain.html#method.get_mut
124+
[`Chain::get_ref`]: https://doc.rust-lang.org/std/io/struct.Chain.html#method.get_ref
125+
[`Chain::into_inner`]: https://doc.rust-lang.org/std/io/struct.Chain.html#method.into_inner
126+
[`Take::get_mut`]: https://doc.rust-lang.org/std/io/struct.Take.html#method.get_mut
127+
[`Take::get_ref`]: https://doc.rust-lang.org/std/io/struct.Take.html#method.get_ref
128+
[`f32::from_bits`]: https://doc.rust-lang.org/std/primitive.f32.html#method.from_bits
129+
[`f32::to_bits`]: https://doc.rust-lang.org/std/primitive.f32.html#method.to_bits
130+
[`f64::from_bits`]: https://doc.rust-lang.org/std/primitive.f64.html#method.from_bits
131+
[`f64::to_bits`]: https://doc.rust-lang.org/std/primitive.f64.html#method.to_bits
132+
[`slice::sort_unstable_by_key`]: https://doc.rust-lang.org/std/primitive.slice.html#method.sort_unstable_by_key
133+
[`slice::sort_unstable_by`]: https://doc.rust-lang.org/std/primitive.slice.html#method.sort_unstable_by
134+
[`slice::sort_unstable`]: https://doc.rust-lang.org/std/primitive.slice.html#method.sort_unstable
135+
136+
1137
Version 1.19.0 (2017-07-20)
2138
===========================
3139

@@ -1679,7 +1815,7 @@ Tooling
16791815

16801816
* [Test binaries now support a `--test-threads` argument to specify the number
16811817
of threads used to run tests, and which acts the same as the
1682-
`RUST_TEST_THREADS` environment variable](https://github.com/rust-lang/rust/pull/35414)
1818+
`RUST_TEST_THREADS` environment variable](https://github.com/rust-lang/rust/pull/35414)
16831819
* [The test runner now emits a warning when tests run over 60 seconds](https://github.com/rust-lang/rust/pull/35405)
16841820
* [rustdoc: Fix methods in search results](https://github.com/rust-lang/rust/pull/34752)
16851821
* [`rust-lldb` warns about unsupported versions of LLDB](https://github.com/rust-lang/rust/pull/34646)

0 commit comments

Comments
 (0)