Skip to content

Commit d6fa621

Browse files
author
Aaron Power
committed
Updated RELEASES.md for 1.34.0
1 parent eab3eb3 commit d6fa621

File tree

1 file changed

+153
-0
lines changed

1 file changed

+153
-0
lines changed

RELEASES.md

+153
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,153 @@
1+
Version v1.34.0 (2019-04-11)
2+
==========================
3+
4+
Language
5+
--------
6+
- [You can now use `#[deprecation = "reason"]`][58166] as a shorthand for
7+
`#[deprecation(note = "reason")]`. This was previously allowed as a syntax bug
8+
but had no effect.
9+
- [You can now accept token streams in `#[attr()]`,`#[attr[]]`, and
10+
`#[attr{}]` procedural macros.][57367]
11+
- [You can now write `extern crate self as foo;`][57407] to import the your
12+
crate's root into the extern prelude.
13+
14+
15+
Compiler
16+
--------
17+
- [You can now target `riscv64imac-unknown-none-elf` and
18+
`riscv64gc-unknown-none-elf`.][58406]
19+
- [You can now enable linker plugin LTO optimisations with
20+
`-C linker-plugin-lto`.][58057] This allows rustc to compile your Rust code
21+
into LLVM bitcode allowing LLVM to perform LTO optimisations across C/C++ FFI
22+
boundaries.
23+
- [You can now target `powerpc64-unknown-freebsd`.][57809]
24+
25+
26+
Libraries
27+
---------
28+
- [The trait bounds have been removed on some of `HashMap<K, V, S>`'s and
29+
`HashSet<T, S>`'s basic methods.][58370] Most notably you no longer require
30+
the `Hash` trait to create an iterator.
31+
- [Relax Ord trait bounds have been removed on some of `BinaryHeap<T>`'s basic
32+
methods.][58421] Most notably you no longer require the `Ord` trait to create
33+
an iterator.
34+
- [The methods `overflowing_neg` and `wrapping_neg` are now `const` functions
35+
for all numeric types.][58044]
36+
- [Indexing a `str` is now generic over all types that
37+
implement `SliceIndex<str>`.][57604]
38+
- [`str::trim`, `str::trim_matches`, `str::trim_{start, end}`, and
39+
`str::trim_{start, end}_matches` are now `#[must_use]`][57106] and will
40+
produce a warning if their returning type is unused.
41+
- [The methods `checked_pow`, `saturating_pow`, `wrapping_pow`, and
42+
`overflowing_pow` are now available for all numeric types.][57873] These are
43+
equivalvent to methods such as `wrapping_add` for the `pow` operation.
44+
45+
46+
Stabilized APIs
47+
---------------
48+
49+
#### std & core
50+
* [`Any::type_id`]
51+
* [`Error::type_id`]
52+
* [`atomic::AtomicI16`]
53+
* [`atomic::AtomicI32`]
54+
* [`atomic::AtomicI64`]
55+
* [`atomic::AtomicI8`]
56+
* [`atomic::AtomicU16`]
57+
* [`atomic::AtomicU32`]
58+
* [`atomic::AtomicU64`]
59+
* [`atomic::AtomicU8`]
60+
* [`convert::Infallible`]
61+
* [`convert::TryFrom`]
62+
* [`convert::TryInto`]
63+
* [`iter::FromFn`]
64+
* [`iter::Successors`]
65+
* [`iter::from_fn`]
66+
* [`iter::successors`]
67+
* [`num::NonZeroI128`]
68+
* [`num::NonZeroI16`]
69+
* [`num::NonZeroI32`]
70+
* [`num::NonZeroI64`]
71+
* [`num::NonZeroI8`]
72+
* [`num::NonZeroIsize`]
73+
* [`slice::sort_by_cached_key`]
74+
* [`str::escape_debug`]
75+
* [`str::escape_default`]
76+
* [`str::escape_unicode`]
77+
* [`str::split_ascii_whitespace`]
78+
79+
#### std
80+
* [`Instant::checked_add`]
81+
* [`Instant::checked_sub`]
82+
* [`SystemTime::checked_add`]
83+
* [`SystemTime::checked_sub`]
84+
85+
Cargo
86+
-----
87+
- [You can now use alternatives registries to crates.io.][cargo/6654]
88+
89+
Misc
90+
----
91+
- [You can now use the `?` operator in your documentation tests without manually
92+
adding `fn main() -> Result<(), _> {}`.][56470]
93+
94+
Compatibility Notes
95+
-------------------
96+
- [`Command::before_exec` is now deprecated in favor of the
97+
unsafe method `Command::pre_exec`.][58059]
98+
- [Use of `ATOMIC_{BOOL, ISIZE, USIZE}_INIT` is now deprecated.][57425] As you
99+
can now use `const` functions in `static` variables.
100+
101+
[58370]: https://github.com/rust-lang/rust/pull/58370/
102+
[58406]: https://github.com/rust-lang/rust/pull/58406/
103+
[58421]: https://github.com/rust-lang/rust/pull/58421/
104+
[58166]: https://github.com/rust-lang/rust/pull/58166/
105+
[58044]: https://github.com/rust-lang/rust/pull/58044/
106+
[58057]: https://github.com/rust-lang/rust/pull/58057/
107+
[58059]: https://github.com/rust-lang/rust/pull/58059/
108+
[57809]: https://github.com/rust-lang/rust/pull/57809/
109+
[57873]: https://github.com/rust-lang/rust/pull/57873/
110+
[57604]: https://github.com/rust-lang/rust/pull/57604/
111+
[57367]: https://github.com/rust-lang/rust/pull/57367/
112+
[57407]: https://github.com/rust-lang/rust/pull/57407/
113+
[57425]: https://github.com/rust-lang/rust/pull/57425/
114+
[57106]: https://github.com/rust-lang/rust/pull/57106/
115+
[56470]: https://github.com/rust-lang/rust/pull/56470/
116+
[cargo/6654]: https://github.com/rust-lang/cargo/pull/6654/
117+
[`Any::type_id`]: https://doc.rust-lang.org/std/any/trait.Any.html#tymethod.type_id
118+
[`Error::type_id`]: https://doc.rust-lang.org/std/error/trait.Error.html#tymethod.type_id
119+
[`atomic::AtomicI16`]: https://doc.rust-lang.org/std/atomic/struct.AtomicI16.html
120+
[`atomic::AtomicI32`]: https://doc.rust-lang.org/std/atomic/struct.AtomicI32.html
121+
[`atomic::AtomicI64`]: https://doc.rust-lang.org/std/atomic/struct.AtomicI64.html
122+
[`atomic::AtomicI8`]: https://doc.rust-lang.org/std/atomic/struct.AtomicI8.html
123+
[`atomic::AtomicU16`]: https://doc.rust-lang.org/std/atomic/struct.AtomicU16.html
124+
[`atomic::AtomicU32`]: https://doc.rust-lang.org/std/atomic/struct.AtomicU32.html
125+
[`atomic::AtomicU64`]: https://doc.rust-lang.org/std/atomic/struct.AtomicU64.html
126+
[`atomic::AtomicU8`]: https://doc.rust-lang.org/std/atomic/struct.AtomicU8.html
127+
[`convert::Infallible`]: https://doc.rust-lang.org/std/convert/enum.Infallible.html
128+
[`convert::TryFrom`]: https://doc.rust-lang.org/std/convert/trait.TryFrom.html
129+
[`convert::TryInto`]: https://doc.rust-lang.org/std/convert/trait.TryInto.html
130+
[`iter::FromFn`]: https://doc.rust-lang.org/std/iter/struct.FromFn.html
131+
[`iter::Successors`]: https://doc.rust-lang.org/std/iter/struct.Successors.html
132+
[`iter::from_fn`]: https://doc.rust-lang.org/std/iter/fn.from_fn.html
133+
[`iter::successors`]: https://doc.rust-lang.org/std/iter/fn.successors.html
134+
[`num::NonZeroI128`]: https://doc.rust-lang.org/std/num/struct.NonZeroI128.html
135+
[`num::NonZeroI16`]: https://doc.rust-lang.org/std/num/struct.NonZeroI16.html
136+
[`num::NonZeroI32`]: https://doc.rust-lang.org/std/num/struct.NonZeroI32.html
137+
[`num::NonZeroI64`]: https://doc.rust-lang.org/std/num/struct.NonZeroI64.html
138+
[`num::NonZeroI8`]: https://doc.rust-lang.org/std/num/struct.NonZeroI8.html
139+
[`num::NonZeroIsize`]: https://doc.rust-lang.org/std/num/struct.NonZeroIsize.html
140+
[`slice::sort_by_cached_key`]: https://doc.rust-lang.org/std/slice/fn.sort_by_cached_key
141+
[`str::escape_debug`]: https://doc.rust-lang.org/std/primitive.str.html#method.escape_debug
142+
[`str::escape_default`]: https://doc.rust-lang.org/std/primitive.str.html#method.escape_default
143+
[`str::escape_unicode`]: https://doc.rust-lang.org/std/primitive.str.html#method.escape_unicode
144+
[`str::split_ascii_whitespace`]: https://doc.rust-lang.org/std/primitive.str.html#method.split_ascii_whitespace
145+
[`Instant::checked_add`]: https://doc.rust-lang.org/std/time/struct.Instant.html#method.checked_add
146+
[`Instant::checked_sub`]: https://doc.rust-lang.org/std/time/struct.Instant.html#method.checked_sub
147+
[`SystemTime::checked_add`]: https://doc.rust-lang.org/std/time/struct.SystemTime.html#method.checked_add
148+
[`SystemTime::checked_sub`]: https://doc.rust-lang.org/std/time/struct.SystemTime.html#method.checked_sub
149+
150+
1151
Version 1.33.0 (2019-02-28)
2152
==========================
3153

@@ -99,6 +249,8 @@ Stabilized APIs
99249

100250
Cargo
101251
-----
252+
- [You can now publish crates which require a feature flag to compile with
253+
`cargo publish --features` or `cargo publish --all-features`.][cargo/6453]
102254
- [Cargo should now rebuild a crate if a file was modified during the initial
103255
build.][cargo/6484]
104256

@@ -135,6 +287,7 @@ Compatibility Notes
135287
[57535]: https://github.com/rust-lang/rust/pull/57535/
136288
[57566]: https://github.com/rust-lang/rust/pull/57566/
137289
[57615]: https://github.com/rust-lang/rust/pull/57615/
290+
[cargo/6453]: https://github.com/rust-lang/cargo/pull/6453/
138291
[cargo/6484]: https://github.com/rust-lang/cargo/pull/6484/
139292
[`unix::FileExt::read_exact_at`]: https://doc.rust-lang.org/std/os/unix/fs/trait.FileExt.html#method.read_exact_at
140293
[`unix::FileExt::write_all_at`]: https://doc.rust-lang.org/std/os/unix/fs/trait.FileExt.html#method.write_all_at

0 commit comments

Comments
 (0)