Skip to content

Commit 4b3a1d9

Browse files
committed
Auto merge of #56102 - nikomatsakis:beta, r=alexcrichton
beta backport rollup Backports of some beta-approved PRs - [x] #55385: NLL: cast causes failure to promote to static - [x] #56043: remove "approx env bounds" if we already know from trait - [x] #56003: do not propagate inferred bounds on trait objects if they involve `Self` - [x] #55852: Rewrite `...` as `..=` as a `MachineApplicable` 2018 idiom lint - [x] #55804: rustdoc: don't inline `pub use some_crate` unless directly asked to - [x] #56059: Increase `Duration` approximate equal threshold to 1us - [x] Keep resolved defs in path prefixes and emit them in save-analysis #54145 - [x] Adjust Ids of path segments in visibility modifiers #55487 - [x] save-analysis: bug fix and optimisation. #55521 - [x] save-analysis: be even more aggressive about ignorning macro-generated defs #55936 - [x] save-analysis: fallback to using path id #56060 - [x] save-analysis: Don't panic for macro-generated use globs #55879 - [x] Add temporary renames to manifests for rustfmt/clippy #56081 - [x] Revert #51601 #56049 - [x] Fix stability hole with `static _` #55983 - [x] #56077 - [x] Fix Rustdoc ICE when checking blanket impls #55258 - [x] Updated RELEASES.md for 1.31.0 #55678 - [x] ~~#56061~~ #56111 - [x] Stabilize `extern_crate_item_prelude` #56032 Still running tests locally, and I plan to backport @nrc's other PRs too (cc @petrochenkov -- thanks for the advice)
2 parents d08a0a8 + 93704f2 commit 4b3a1d9

File tree

102 files changed

+1782
-1399
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

102 files changed

+1782
-1399
lines changed

RELEASES.md

+77
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,80 @@
1+
Version 1.31.0 (2018-12-06)
2+
==========================
3+
4+
Language
5+
--------
6+
- 🎉 [This version marks the release of the 2018 edition of Rust.][54057] 🎉
7+
- [New lifetime elision rules now allow for eliding lifetimes in functions and
8+
impl headers.][54778] E.g. `impl<'a> Reader for BufReader<'a> {}` can now be
9+
`impl Reader for BufReader<'_> {}`. Lifetimes are still required to be defined
10+
in structs.
11+
- [You can now define and use `const` functions.][54835] These are currently
12+
a strict minimal subset of the [const fn RFC][RFC-911]. Refer to the
13+
[language reference][const-reference] for what exactly is available.
14+
- [You can now use tool lints, which allow you to scope lints from external
15+
tools using attributes.][54870] E.g. `#[allow(clippy::filter_map)]`.
16+
- [`#[no_mangle]` and `#[export_name]` attributes can now be located anywhere in
17+
a crate, not just in exported functions.][54451]
18+
- [You can now use parentheses in pattern matches.][54497]
19+
20+
Compiler
21+
--------
22+
- [Updated musl to 1.1.20][54430]
23+
24+
Libraries
25+
---------
26+
- [You can now convert `num::NonZero*` types to their raw equivalvents using the
27+
`From` trait.][54240] E.g. `u8` now implements `From<NonZeroU8>`.
28+
- [You can now convert a `&Option<T>` into `Option<&T>` and `&mut Option<T>`
29+
into `Option<&mut T>` using the `From` trait.][53218]
30+
- [You can now multiply (`*`) a `time::Duration` by a `u32`.][52813]
31+
32+
33+
Stabilized APIs
34+
---------------
35+
- [`slice::align_to`]
36+
- [`slice::align_to_mut`]
37+
- [`slice::chunks_exact`]
38+
- [`slice::chunks_exact_mut`]
39+
- [`slice::rchunks`]
40+
- [`slice::rchunks_mut`]
41+
- [`slice::rchunks_exact`]
42+
- [`slice::rchunks_exact_mut`]
43+
- [`Option::replace`]
44+
45+
Cargo
46+
-----
47+
- [Cargo will now download crates in parallel using HTTP/2.][cargo/6005]
48+
- [You can now rename packages in your Cargo.toml][cargo/6319] We have a guide
49+
on [how to use the `package` key in your dependencies.][cargo-rename-reference]
50+
51+
[52813]: https://github.com/rust-lang/rust/pull/52813/
52+
[53218]: https://github.com/rust-lang/rust/pull/53218/
53+
[53555]: https://github.com/rust-lang/rust/issues/53555/
54+
[54057]: https://github.com/rust-lang/rust/pull/54057/
55+
[54240]: https://github.com/rust-lang/rust/pull/54240/
56+
[54430]: https://github.com/rust-lang/rust/pull/54430/
57+
[54451]: https://github.com/rust-lang/rust/pull/54451/
58+
[54497]: https://github.com/rust-lang/rust/pull/54497/
59+
[54778]: https://github.com/rust-lang/rust/pull/54778/
60+
[54835]: https://github.com/rust-lang/rust/pull/54835/
61+
[54870]: https://github.com/rust-lang/rust/pull/54870/
62+
[RFC-911]: https://github.com/rust-lang/rfcs/pull/911
63+
[`Option::replace`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.replace
64+
[`slice::align_to_mut`]: https://doc.rust-lang.org/std/primitive.slice.html#method.align_to_mut
65+
[`slice::align_to`]: https://doc.rust-lang.org/std/primitive.slice.html#method.align_to
66+
[`slice::chunks_exact_mut`]: https://doc.rust-lang.org/std/primitive.slice.html#method.chunks_exact_mut
67+
[`slice::chunks_exact`]: https://doc.rust-lang.org/std/primitive.slice.html#method.chunks_exact
68+
[`slice::rchunks_exact_mut`]: https://doc.rust-lang.org/std/primitive.slice.html#method.rchunks_mut
69+
[`slice::rchunks_exact`]: https://doc.rust-lang.org/std/primitive.slice.html#method.rchunks_exact
70+
[`slice::rchunks_mut`]: https://doc.rust-lang.org/std/primitive.slice.html#method.rchunks_mut
71+
[`slice::rchunks`]: https://doc.rust-lang.org/std/primitive.slice.html#method.rchunks
72+
[cargo/6005]: https://github.com/rust-lang/cargo/pull/6005/
73+
[cargo/6319]: https://github.com/rust-lang/cargo/pull/6319/
74+
[cargo-rename-reference]: https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#renaming-dependencies-in-cargotoml
75+
[const-reference]: https://doc.rust-lang.org/reference/items/functions.html#const-functions
76+
77+
178
Version 1.30.0 (2018-10-25)
279
==========================
380

0 commit comments

Comments
 (0)