Skip to content

Commit a8a012f

Browse files
committed
Add release notes for 1.13.0
1 parent 81601cd commit a8a012f

File tree

1 file changed

+263
-0
lines changed

1 file changed

+263
-0
lines changed

RELEASES.md

+263
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,266 @@
1+
Version 1.13.0 (2016-11-10)
2+
===========================
3+
4+
Language
5+
--------
6+
7+
* [Stabilize macros in type position][36014]. [RFC 873].
8+
* [Fix `#[derive]` for empty tuple structs/variants][35728]
9+
* [Fix lifetime rules for 'if' conditions][36029]
10+
* [Avoid loading and parsing unconfigured non-inline modules][36482]
11+
12+
Compiler
13+
--------
14+
15+
* [Add the `-C link-arg` argument][36574]
16+
* [Remove the old AST-based backend from rustc_trans][35764]
17+
* [Don't enable NEON by default on armv7 Linux][35814]
18+
* [Fix debug line number info for macro expansions][35238]
19+
* [Do not emit "class method" debuginfo for types that are not
20+
DICompositeType][36008]
21+
* [Warn about multiple conflicting #[repr] hints][34623]
22+
* [When sizing DST, don't double-count nested struct prefixes][36351]
23+
* [Default RUST_MIN_STACK to 16MiB for now][36505]
24+
* [Improve rlib metadata format][36551]. Reduces rlib size significantly.
25+
* [Reject macros with empty repetitions to avoid infinite loop][36721]
26+
* [Expand macros without recursing to avoid stack overflows][36214]
27+
28+
Diagnostics
29+
-----------
30+
31+
* [Replace macro backtraces with labeled local uses][35702]
32+
* [Improve error message for missplaced doc comments][33922]
33+
* [Buffer unix and lock windows to prevent message interleaving][35975]
34+
* [Update lifetime errors to specifically note temporaries][36171]
35+
* [Special case a few colors for Windows][36178]
36+
* [Suggest `use self` when such an import resolves][36289]
37+
* [Be more specific when type parameter shadows primitive type][36338]
38+
* Many minor improvements
39+
40+
Compile-time Optimizations
41+
--------------------------
42+
43+
* [Compute and cache HIR hashes at beginning][35854]
44+
* [Don't hash types in loan paths][36004]
45+
* [Cache projections in trans][35761]
46+
* [Optimize the parser's last token handling][36527]
47+
* [Only instantiate #[inline] functions in codegen units referencing
48+
them][36524]. This leads to big improvements in rare cases, including the
49+
common winapi crate.
50+
* [Lazily allocate TypedArena's first chunk][36592]
51+
* [Don't allocate during default HashSet creation][36734]
52+
53+
Stabilized APIs
54+
---------------
55+
56+
* [`checked_abs`]
57+
* [`wrapping_abs`]
58+
* [`overflowing_abs`]
59+
* [`RefCell::try_borrow`]
60+
* [`RefCell::try_borrow_mut`]
61+
62+
Libraries
63+
---------
64+
65+
* [Add `assert_ne!` and `debug_assert_ne!`][35074]
66+
* [Make `vec_deque::Drain`, `hash_map::Drain`, and `hash_set::Drain`
67+
covariant][35354]
68+
* [Implement `AsRef<[T]>` for `std::slice::Iter`][35559]
69+
* [Implement `Debug` for `std::vec::IntoIter`][35707]
70+
* [`CString`: avoid excessive growth just to 0-terminate][35871]
71+
* [Implement `CoerceUnsized` for `{Cell, RefCell, UnsafeCell}`][35627]
72+
* [Use arc4rand on FreeBSD][35884]
73+
* [memrchr: Correct aligned offset computation][35969]
74+
* [Improve Demangling of Rust Symbols][36059]
75+
* [Use monotonic time in condition variables][35048]
76+
* [Implement `Debug` for `std::path::{Components,Iter}`][36101]
77+
* [Implement conversion traits for `char`][35755]
78+
* [Fix illegal instruction caused by overflow in channel cloning][36104]
79+
* [Zero first byte of CString on drop][36264]
80+
* [Inherit overflow checks for sum and product][36372]
81+
* [Add missing Eq implementations][36423]
82+
* [Implement `Debug` for `DirEntry`][36631]
83+
* [When `getaddrinfo` returns `EAI_SYSTEM` retrieve actual error from
84+
`errno`][36754]
85+
* [`SipHasher`] is deprecated. Use [`DefaultHasher`].
86+
* [Implement more traits for `std::io::ErrorKind`][35911]
87+
* [Optimize BinaryHeap bounds checking][36072]
88+
* [Work around pointer aliasing issue in `Vec::extend_from_slice`,
89+
`extend_with_element`][36355]
90+
* [Fix overflow checking in unsigned pow()][34942]
91+
92+
Cargo
93+
-----
94+
95+
* This release includes security fixes to both curl and OpenSSL.
96+
* [Fix transitive doctests when panic=abort][cargo/3021]
97+
* [Add --all-features flag to cargo][cargo/3038]
98+
* [Reject path-based dependencies in `cargo package`][cargo/3060]
99+
* [Don't parse the home directory more than once][cargo/3078]
100+
* [Don't try to generate Gargo.lock on empty workspaces][cargo/3092]
101+
* [Update OpenSSL to 1.0.2j][cargo/3121]
102+
* [Add license and license_file to cargo metadata output][cargo/3110]
103+
* [Make crates-io registry URL optional in config; ignore all changes to
104+
source.crates-io][cargo/3089]
105+
* [Don't download dependencies from other platforms][cargo/3123]
106+
* [Build transitive dev-dependencies when needed][cargo/3125]
107+
* [Add support for per-target rustflags in .cargo/config][cargo/3157]
108+
* [Avoid updating registry when adding existing deps][cargo/3144]
109+
* [Warn about path overrides that won't work][cargo/3136]
110+
* [Use workspaces during `cargo install`][cargo/3146]
111+
* [Leak mspdbsrv.exe processes on Windows][cargo/3162]
112+
* [Add --message-format flag][cargo/3000]
113+
* [Pass target environment for rustdoc][cargo/3205]
114+
* [Use `CommandExt::exec` for `cargo run` on Unix][cargo/2818]
115+
* [Update curl and curl-sys][cargo/3241]
116+
* [Call rustdoc test with the correct cfg flags of a package][cargo/3242]
117+
118+
Tooling
119+
-------
120+
121+
* [rustdoc: Add the `--sysroot` argument][36586]
122+
* [rustdoc: Fix a couple of issues with the search results][35655]
123+
* [rustdoc: remove the `!` from macro URLs and titles][35234]
124+
* [gdb: Fix pretty-printing special-cased Rust types][35585]
125+
* [rustdoc: Filter more incorrect methods inherited through Deref][36266]
126+
* When installing via [rustup], the documentation is now optional and not
127+
installed by default. Install it with `rustup component add rust-docs`.
128+
129+
Misc
130+
----
131+
132+
* [Remove unmaintained style guide][35124]
133+
* [Add s390x support][36369]
134+
* [Initial work at Haiku OS support][36727]
135+
* [Add mips-uclibc targets][35734]
136+
* [Crate-ify compiler-rt into compiler-builtins][35021]
137+
* [Add rustc version info (git hash + date) to dist tarball][36213]
138+
* Many documentation improvements
139+
* This release includes builds for several new platforms, the standard library,
140+
compiler, and cargo:
141+
- powerpc-unknown-linux-gnu
142+
- powerpc64-unknown-linux-gnu
143+
- powerpc64le-unknown-linux-gnu
144+
- mips-unknown-linux-gnu
145+
- mipsel-unknown-linux-gnu
146+
- mips64-unknown-linux-gnuabi64
147+
- mips64el-unknown-linux-gnuabi64
148+
- s390x-unknown-linux-gnu
149+
150+
Compatibility Notes
151+
-------------------
152+
153+
* [`SipHasher`] is deprecated. Use [`DefaultHasher`].
154+
* [Deny (by default) transmuting from fn item types to pointer-sized
155+
types][34923]. Continuing the long transition to zero-sized fn items,
156+
per [RFC 401].
157+
* [Fix `#[derive]` for empty tuple structs/variants][35728].
158+
Part of [RFC 1506].
159+
* [Issue deprecation warnings for safe accesses to extern statics][36173]
160+
* [Fix lifetime rules for 'if' conditions][36029].
161+
* [Inherit overflow checks for sum and product][36372].
162+
* [Forbid user-defined macros named "macro_rules"][36730].
163+
164+
[33922]: https://github.com/rust-lang/rust/pull/33922
165+
[34623]: https://github.com/rust-lang/rust/pull/34623
166+
[34923]: https://github.com/rust-lang/rust/pull/34923
167+
[34942]: https://github.com/rust-lang/rust/pull/34942
168+
[34982]: https://github.com/rust-lang/rust/pull/34982
169+
[35021]: https://github.com/rust-lang/rust/pull/35021
170+
[35048]: https://github.com/rust-lang/rust/pull/35048
171+
[35074]: https://github.com/rust-lang/rust/pull/35074
172+
[35124]: https://github.com/rust-lang/rust/pull/35124
173+
[35234]: https://github.com/rust-lang/rust/pull/35234
174+
[35238]: https://github.com/rust-lang/rust/pull/35238
175+
[35354]: https://github.com/rust-lang/rust/pull/35354
176+
[35559]: https://github.com/rust-lang/rust/pull/35559
177+
[35585]: https://github.com/rust-lang/rust/pull/35585
178+
[35627]: https://github.com/rust-lang/rust/pull/35627
179+
[35655]: https://github.com/rust-lang/rust/pull/35655
180+
[35702]: https://github.com/rust-lang/rust/pull/35702
181+
[35707]: https://github.com/rust-lang/rust/pull/35707
182+
[35728]: https://github.com/rust-lang/rust/pull/35728
183+
[35734]: https://github.com/rust-lang/rust/pull/35734
184+
[35755]: https://github.com/rust-lang/rust/pull/35755
185+
[35761]: https://github.com/rust-lang/rust/pull/35761
186+
[35764]: https://github.com/rust-lang/rust/pull/35764
187+
[35814]: https://github.com/rust-lang/rust/pull/35814
188+
[35854]: https://github.com/rust-lang/rust/pull/35854
189+
[35871]: https://github.com/rust-lang/rust/pull/35871
190+
[35884]: https://github.com/rust-lang/rust/pull/35884
191+
[35911]: https://github.com/rust-lang/rust/pull/35911
192+
[35969]: https://github.com/rust-lang/rust/pull/35969
193+
[35975]: https://github.com/rust-lang/rust/pull/35975
194+
[36004]: https://github.com/rust-lang/rust/pull/36004
195+
[36008]: https://github.com/rust-lang/rust/pull/36008
196+
[36014]: https://github.com/rust-lang/rust/pull/36014
197+
[36029]: https://github.com/rust-lang/rust/pull/36029
198+
[36059]: https://github.com/rust-lang/rust/pull/36059
199+
[36072]: https://github.com/rust-lang/rust/pull/36072
200+
[36101]: https://github.com/rust-lang/rust/pull/36101
201+
[36104]: https://github.com/rust-lang/rust/pull/36104
202+
[36171]: https://github.com/rust-lang/rust/pull/36171
203+
[36173]: https://github.com/rust-lang/rust/pull/36173
204+
[36178]: https://github.com/rust-lang/rust/pull/36178
205+
[36213]: https://github.com/rust-lang/rust/pull/36213
206+
[36214]: https://github.com/rust-lang/rust/pull/36214
207+
[36264]: https://github.com/rust-lang/rust/pull/36264
208+
[36266]: https://github.com/rust-lang/rust/pull/36266
209+
[36289]: https://github.com/rust-lang/rust/pull/36289
210+
[36338]: https://github.com/rust-lang/rust/pull/36338
211+
[36351]: https://github.com/rust-lang/rust/pull/36351
212+
[36355]: https://github.com/rust-lang/rust/pull/36355
213+
[36369]: https://github.com/rust-lang/rust/pull/36369
214+
[36372]: https://github.com/rust-lang/rust/pull/36372
215+
[36423]: https://github.com/rust-lang/rust/pull/36423
216+
[36482]: https://github.com/rust-lang/rust/pull/36482
217+
[36505]: https://github.com/rust-lang/rust/pull/36505
218+
[36524]: https://github.com/rust-lang/rust/pull/36524
219+
[36527]: https://github.com/rust-lang/rust/pull/36527
220+
[36551]: https://github.com/rust-lang/rust/pull/36551
221+
[36574]: https://github.com/rust-lang/rust/pull/36574
222+
[36586]: https://github.com/rust-lang/rust/pull/36586
223+
[36592]: https://github.com/rust-lang/rust/pull/36592
224+
[36631]: https://github.com/rust-lang/rust/pull/36631
225+
[36639]: https://github.com/rust-lang/rust/pull/36639
226+
[36721]: https://github.com/rust-lang/rust/pull/36721
227+
[36727]: https://github.com/rust-lang/rust/pull/36727
228+
[36730]: https://github.com/rust-lang/rust/pull/36730
229+
[36734]: https://github.com/rust-lang/rust/pull/36734
230+
[36754]: https://github.com/rust-lang/rust/pull/36754
231+
[cargo/3021]: https://github.com/rust-lang/cargo/pull/3021
232+
[cargo/3038]: https://github.com/rust-lang/cargo/pull/3038
233+
[cargo/3060]: https://github.com/rust-lang/cargo/pull/3060
234+
[cargo/3078]: https://github.com/rust-lang/cargo/pull/3078
235+
[cargo/3092]: https://github.com/rust-lang/cargo/pull/3092
236+
[cargo/3121]: https://github.com/rust-lang/cargo/pull/3121
237+
[cargo/3110]: https://github.com/rust-lang/cargo/pull/3110
238+
[cargo/3089]: https://github.com/rust-lang/cargo/pull/3089
239+
[cargo/3123]: https://github.com/rust-lang/cargo/pull/3123
240+
[cargo/3125]: https://github.com/rust-lang/cargo/pull/3125
241+
[cargo/3157]: https://github.com/rust-lang/cargo/pull/3157
242+
[cargo/3144]: https://github.com/rust-lang/cargo/pull/3144
243+
[cargo/3136]: https://github.com/rust-lang/cargo/pull/3136
244+
[cargo/3146]: https://github.com/rust-lang/cargo/pull/3146
245+
[cargo/3162]: https://github.com/rust-lang/cargo/pull/3162
246+
[cargo/3000]: https://github.com/rust-lang/cargo/pull/3000
247+
[cargo/3205]: https://github.com/rust-lang/cargo/pull/3205
248+
[cargo/2818]: https://github.com/rust-lang/cargo/pull/2818
249+
[cargo/3241]: https://github.com/rust-lang/cargo/pull/3241
250+
[cargo/3242]: https://github.com/rust-lang/cargo/pull/3242
251+
[RFC 1506]: https://github.com/rust-lang/rfcs/blob/master/text/1506-adt-kinds.md
252+
[RFC 401]: https://github.com/rust-lang/rfcs/blob/master/text/0401-coercions.md
253+
[RFC 873]: https://github.com/rust-lang/rfcs/blob/master/text/0873-type-macros.md
254+
[rustup]: https://www.rustup.rs
255+
[`checked_abs`]: https://doc.rust-lang.org/std/primitive.i32.html#method.checked_abs
256+
[`wrapping_abs`]: https://doc.rust-lang.org/std/primitive.i32.html#method.wrapping_abs
257+
[`overflowing_abs`]: https://doc.rust-lang.org/std/primitive.i32.html#method.overflowing_abs
258+
[`RefCell::try_borrow`]: https://doc.rust-lang.org/std/cell/struct.RefCell.html#method.try_borrow
259+
[`RefCell::try_borrow_mut`]: https://doc.rust-lang.org/std/cell/struct.RefCell.html#method.try_borrow_mut
260+
[`SipHasher`]: https://doc.rust-lang.org/std/hash/struct.SipHasher.html
261+
[`DefaultHasher`]: https://doc.rust-lang.org/std/collections/hash_map/struct.DefaultHasher.html
262+
263+
1264
Version 1.12.0 (2016-09-29)
2265
===========================
3266

0 commit comments

Comments
 (0)