Skip to content

Commit 02dbf24

Browse files
committed
Release notes for 1.60.0
1 parent 44628f7 commit 02dbf24

File tree

1 file changed

+146
-0
lines changed

1 file changed

+146
-0
lines changed

RELEASES.md

Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,149 @@
1+
Version 1.60.0 (2022-04-07)
2+
==========================
3+
4+
Language
5+
--------
6+
- [Stabilize `#[cfg(panic = "...")]` for either `"unwind"` or `"abort"`.][93658]
7+
- [Stabilize `#[cfg(target_has_atomic = "...")]` for each integer size and `"ptr"`.][93824]
8+
9+
Compiler
10+
--------
11+
- [Enable combining `+crt-static` and `relocation-model=pic` on `x86_64-unknown-linux-gnu`][86374]
12+
- [Fixes wrong `unreachable_pub` lints on nested and glob public reexport][87487]
13+
- [Stabilize `-Z instrument-coverage` as `-C instrument-coverage`][90132]
14+
- [Implement raw-dylib support for windows-gnu][90782]
15+
- [Stabilize `-Z print-link-args` as `--print link-args`][91606]
16+
- [`mips64-openwrt-linux-musl`: Add Tier 3 target][92300]
17+
- [Add new target `armv7-unknown-linux-uclibceabi` (softfloat)][92383]
18+
- [Fix invalid removal of newlines from doc comments][92357]
19+
- [Add kernel target for RustyHermit][92670]
20+
- [Deny mixing bin crate type with lib crate types][92933]
21+
- [Make rustc use `RUST_BACKTRACE=full` by default][93566]
22+
- [Upgrade to LLVM 14][93577]
23+
24+
Libraries
25+
---------
26+
- [Guarantee call order for `sort_by_cached_key`][89621]
27+
- [Improve `Duration::try_from_secs_f32`/`f64` accuracy by directly processing exponent and mantissa][90247]
28+
- [Switch all libraries to the 2021 edition][92068]
29+
- [Make `Instant::{duration_since, elapsed, sub}` saturating and remove workarounds][89926]
30+
- [Change PhantomData type for `BuildHasherDefault` (and more)][92630]
31+
32+
Stabilized APIs
33+
---------------
34+
- [`Arc::new_cyclic`][arc_new_cyclic]
35+
- [`Rc::new_cyclic`][rc_new_cyclic]
36+
- [`slice::EscapeAscii`][slice_escape_ascii]
37+
- [`<[u8]>::escape_ascii`][slice_u8_escape_ascii]
38+
- [`u8::escape_ascii`][u8_escape_ascii]
39+
- [`Vec::spare_capacity_mut`][vec_spare_capacity_mut]
40+
- [`MaybeUninit::assume_init_drop`][assume_init_drop]
41+
- [`MaybeUninit::assume_init_read`][assume_init_read]
42+
- [`i8::abs_diff`][i8_abs_diff]
43+
- [`i16::abs_diff`][i16_abs_diff]
44+
- [`i32::abs_diff`][i32_abs_diff]
45+
- [`i64::abs_diff`][i64_abs_diff]
46+
- [`i128::abs_diff`][i128_abs_diff]
47+
- [`isize::abs_diff`][isize_abs_diff]
48+
- [`u8::abs_diff`][u8_abs_diff]
49+
- [`u16::abs_diff`][u16_abs_diff]
50+
- [`u32::abs_diff`][u32_abs_diff]
51+
- [`u64::abs_diff`][u64_abs_diff]
52+
- [`u128::abs_diff`][u128_abs_diff]
53+
- [`usize::abs_diff`][usize_abs_diff]
54+
- [`Display for io::ErrorKind`][display_error_kind]
55+
- [`From<u8> for ExitCode`][from_u8_exit_code]
56+
- [`Not for !` (the "never" type)][not_never]
57+
- [_Op_`Assign<$t> for Wrapping<$t>`][wrapping_assign_ops]
58+
- [`arch::is_aarch64_feature_detected!`][is_aarch64_feature_detected]
59+
60+
Cargo
61+
-----
62+
- [Print executable name on `cargo test --no-run`.][cargo/9959]
63+
- [Port cargo from `toml-rs` to `toml_edit`][cargo/10086]
64+
- [Stabilize `-Ztimings` as `--timings`][cargo/10245]
65+
- [Accept more `cargo:rustc-link-arg-*` types from build script output.][cargo/10274]
66+
- [cargo-new should not add ignore rule on Cargo.lock inside subdirs][cargo/10379]
67+
68+
Misc
69+
----
70+
- [Drop rustc-docs from complete profile][93742]
71+
- [bootstrap: tidy up flag handling for llvm build][93918]
72+
73+
Compatibility Notes
74+
-------------------
75+
- [Remove compiler-rt linking hack on Android][83822]
76+
- [Remove deprecated LLVM-style inline assembly][92816]
77+
- [Reject unsupported naked functions][93153]
78+
- [Remove deprecated `--host` arg for cargo search and publish cmds][cargo/10327]
79+
80+
Internal Changes
81+
----------------
82+
83+
These changes provide no direct user facing benefits, but represent significant
84+
improvements to the internals and overall performance of rustc
85+
and related tools.
86+
87+
<!-- TODO: anything to highlight? -->
88+
89+
[83822]: https://github.com/rust-lang/rust/pull/83822
90+
[86374]: https://github.com/rust-lang/rust/pull/86374
91+
[87487]: https://github.com/rust-lang/rust/pull/87487
92+
[89621]: https://github.com/rust-lang/rust/pull/89621
93+
[89926]: https://github.com/rust-lang/rust/pull/89926
94+
[90132]: https://github.com/rust-lang/rust/pull/90132
95+
[90247]: https://github.com/rust-lang/rust/pull/90247
96+
[90782]: https://github.com/rust-lang/rust/pull/90782
97+
[91606]: https://github.com/rust-lang/rust/pull/91606
98+
[92068]: https://github.com/rust-lang/rust/pull/92068
99+
[92300]: https://github.com/rust-lang/rust/pull/92300
100+
[92357]: https://github.com/rust-lang/rust/pull/92357
101+
[92383]: https://github.com/rust-lang/rust/pull/92383
102+
[92630]: https://github.com/rust-lang/rust/pull/92630
103+
[92670]: https://github.com/rust-lang/rust/pull/92670
104+
[92816]: https://github.com/rust-lang/rust/pull/92816
105+
[92933]: https://github.com/rust-lang/rust/pull/92933
106+
[93153]: https://github.com/rust-lang/rust/pull/93153
107+
[93566]: https://github.com/rust-lang/rust/pull/93566
108+
[93577]: https://github.com/rust-lang/rust/pull/93577
109+
[93658]: https://github.com/rust-lang/rust/pull/93658
110+
[93742]: https://github.com/rust-lang/rust/pull/93742
111+
[93824]: https://github.com/rust-lang/rust/pull/93824
112+
[93918]: https://github.com/rust-lang/rust/pull/93918
113+
114+
[cargo/9959]: https://github.com/rust-lang/cargo/pull/9959
115+
[cargo/10086]: https://github.com/rust-lang/cargo/pull/10086
116+
[cargo/10245]: https://github.com/rust-lang/cargo/pull/10245
117+
[cargo/10274]: https://github.com/rust-lang/cargo/pull/10274
118+
[cargo/10379]: https://github.com/rust-lang/cargo/pull/10379
119+
[cargo/10327]: https://github.com/rust-lang/cargo/pull/10327
120+
121+
[arc_new_cyclic]: https://doc.rust-lang.org/stable/std/sync/struct.Arc.html#method.new_cyclic
122+
[rc_new_cyclic]: https://doc.rust-lang.org/stable/std/rc/struct.Rc.html#method.new_cyclic
123+
[slice_escape_ascii]: https://doc.rust-lang.org/stable/std/slice/struct.EscapeAscii.html
124+
[slice_u8_escape_ascii]: https://doc.rust-lang.org/stable/std/primitive.slice.html#method.escape_ascii
125+
[u8_escape_ascii]: https://doc.rust-lang.org/stable/std/primitive.u8.html#method.escape_ascii
126+
[vec_spare_capacity_mut]: https://doc.rust-lang.org/stable/std/vec/struct.Vec.html#method.spare_capacity_mut
127+
[assume_init_drop]: https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.assume_init_drop
128+
[assume_init_read]: https://doc.rust-lang.org/stable/std/mem/union.MaybeUninit.html#method.assume_init_read
129+
[i8_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.i8.html#method.abs_diff
130+
[i16_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.i16.html#method.abs_diff
131+
[i32_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.i32.html#method.abs_diff
132+
[i64_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.i64.html#method.abs_diff
133+
[i128_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.i128.html#method.abs_diff
134+
[isize_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.isize.html#method.abs_diff
135+
[u8_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.u8.html#method.abs_diff
136+
[u16_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.u16.html#method.abs_diff
137+
[u32_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.u32.html#method.abs_diff
138+
[u64_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.u64.html#method.abs_diff
139+
[u128_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.u128.html#method.abs_diff
140+
[usize_abs_diff]: https://doc.rust-lang.org/stable/std/primitive.usize.html#method.abs_diff
141+
[display_error_kind]: https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#impl-Display
142+
[from_u8_exit_code]: https://doc.rust-lang.org/stable/std/process/struct.ExitCode.html#impl-From%3Cu8%3E
143+
[not_never]: https://doc.rust-lang.org/stable/std/primitive.never.html#impl-Not
144+
[wrapping_assign_ops]: https://doc.rust-lang.org/stable/std/num/struct.Wrapping.html#trait-implementations
145+
[is_aarch64_feature_detected]: https://doc.rust-lang.org/stable/std/arch/macro.is_aarch64_feature_detected.html
146+
1147
Version 1.59.0 (2022-02-24)
2148
==========================
3149

0 commit comments

Comments
 (0)