Skip to content

Commit a9ace8c

Browse files
XAMPPRockypietroalbini
authored andcommitted
Update RELEASES.md for 1.48.0
1 parent 2101eca commit a9ace8c

File tree

1 file changed

+122
-0
lines changed

1 file changed

+122
-0
lines changed

RELEASES.md

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,125 @@
1+
Version 1.48.0 (2020-11-19)
2+
==========================
3+
4+
Language
5+
--------
6+
7+
- [The `unsafe` keyword is now syntactically permitted on modules.][75857] This
8+
is still rejected *semantically*, but can now be parsed by procedural macros.
9+
10+
Compiler
11+
--------
12+
- [Stabilised the `-C link=<yes|no>`][76158] Which tells `rustc` whether to link
13+
its own libraries or to rely on a external linker. (supported only on
14+
`windows-gnu`, `linux-musl`, and `wasi` platforms.)
15+
- [You can now use `-C target-feature=+crt-static` on `linux-gnu` targets.][77386]
16+
- [Added tier 2\* support for `aarch64-unknown-linux-musl`.][76420]
17+
18+
Libraries
19+
---------
20+
- [`io::Write` is now implemented for `&ChildStdin` `&Sink`, `&Stdout`,
21+
and `&Stderr`.][76275]
22+
- [All arrays now implement `TryFrom<Vec<T>>`.][76310]
23+
- [The `matches!` macro now supports having a trailing comma.][74880]
24+
- [`Vec<A>` now implements `PartialEq<[B]>` where `A: PartialEq<B>`.][74194]
25+
- [Nearly all of `Cell`'s panicking functions now use the `#[track_caller]`
26+
attribute.][77055]
27+
28+
Stabilized APIs
29+
---------------
30+
- [`slice::as_ptr_range`]
31+
- [`slice::as_mut_ptr_range`]
32+
- [`VecDeque::make_contiguous`]
33+
- [`future::pending`]
34+
- [`future::ready`]
35+
36+
The following previously stable methods are now `const fn`'s:
37+
38+
- [`Option::is_some`]
39+
- [`Option::is_none`]
40+
- [`Option::as_ref`]
41+
- [`Result::is_ok`]
42+
- [`Result::is_err`]
43+
- [`Result::as_ref`]
44+
- [`Ordering::reverse`]
45+
- [`Ordering::then`]
46+
47+
Cargo
48+
-----
49+
50+
Misc
51+
----
52+
- [You can now link to different items in `rustdoc` using the intra-doc link
53+
syntax.][74430] E.g. ``/// Uses [`std::future`] `` will automatically generate
54+
a link to `std::future`'s documentation. See ["Linking to items by
55+
name"][intradoc-links] for more information.
56+
- [You can now specify `#[doc(alias = "<alias>")]` on items to add search aliases
57+
when searching through `rustdoc`'s UI.][75740]
58+
- [You can now use `rustup install <major>.<minor>` to specify installing the
59+
latest availeble patch of that minor version of the toolchain.][76107] E.g.
60+
`rustup install 1.45` would install `1.45.2`, and `1.46` would install `1.46.0`.
61+
62+
Compatibility Notes
63+
-------------------
64+
- [`const fn`s are now implicitly promoted to `const`.][75502] Meaning that it
65+
will only warn if your code fails `const` evaluation, and not produce an error.
66+
- [Associated type bindings on trait objects are now verified to meet the bounds
67+
declared on the trait when checking that they implement the trait.][27675]
68+
- [When traits bounds on associated types or opaque types are ambiguous the
69+
compiler no longer makes an arbitrary choice on which bound to use.][54121]
70+
- [Fixed recursive nonterminals not being expended in macros during
71+
pretty-print/reparse check.][77153] This may cause errors if your macro wasn't
72+
correctly handling recursive nonterminal tokens.
73+
- [`&mut` references to non zero-sized types are not longer promoted.][75585]
74+
- [`rustc` will now warn if you use attributes like `#[link_name]` or `#[cold]`
75+
in places where they have no effect.][73461]
76+
- [Updated `_mm256_extract_epi8` and `_mm256_extract_epi16` signatures in
77+
`arch::{x86, x86_64}` to return `i32` to match the vendor signatures.][73166]
78+
79+
80+
81+
Internal Only
82+
-------------
83+
- [Building `rustc` from source now uses `ninja` by default over `make`.][74922]
84+
You can continue building with `make` by setting `ninja=false` in
85+
your `config.toml`.
86+
87+
[27675]: https://github.com/rust-lang/rust/issues/27675/
88+
[54121]: https://github.com/rust-lang/rust/issues/54121/
89+
[77386]: https://github.com/rust-lang/rust/pull/77386/
90+
[77153]: https://github.com/rust-lang/rust/pull/77153/
91+
[77055]: https://github.com/rust-lang/rust/pull/77055/
92+
[76275]: https://github.com/rust-lang/rust/pull/76275/
93+
[76310]: https://github.com/rust-lang/rust/pull/76310/
94+
[76420]: https://github.com/rust-lang/rust/pull/76420/
95+
[76107]: https://github.com/rust-lang/rust/pull/76107/
96+
[76158]: https://github.com/rust-lang/rust/pull/76158/
97+
[75857]: https://github.com/rust-lang/rust/pull/75857/
98+
[75585]: https://github.com/rust-lang/rust/pull/75585/
99+
[75740]: https://github.com/rust-lang/rust/pull/75740/
100+
[75502]: https://github.com/rust-lang/rust/pull/75502/
101+
[74880]: https://github.com/rust-lang/rust/pull/74880/
102+
[74922]: https://github.com/rust-lang/rust/pull/74922/
103+
[74430]: https://github.com/rust-lang/rust/pull/74430/
104+
[74194]: https://github.com/rust-lang/rust/pull/74194/
105+
[73461]: https://github.com/rust-lang/rust/pull/73461/
106+
[73166]: https://github.com/rust-lang/rust/pull/73166/
107+
[intradoc-links]: https://doc.rust-lang.org/rustdoc/linking-to-items-by-name.html
108+
[`Option::is_some`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.is_some
109+
[`Option::is_none`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.is_none
110+
[`Option::as_ref`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.as_ref
111+
[`Result::is_ok`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.is_ok
112+
[`Result::is_err`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.is_err
113+
[`Result::as_ref`]: https://doc.rust-lang.org/std/result/enum.Result.html#method.as_ref
114+
[`Ordering::reverse`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.reverse
115+
[`Ordering::then`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.then
116+
[`slice::as_ptr_range`]: https://doc.rust-lang.org/std/primitive.slice.html#method.as_ptr_range
117+
[`slice::as_mut_ptr_range`]: https://doc.rust-lang.org/std/primitive.slice.html#method.as_mut_ptr_range
118+
[`VecDeque::make_contiguous`]: https://doc.rust-lang.org/std/collections/struct.VecDeque.html#method.make_contiguous
119+
[`future::pending`]: https://doc.rust-lang.org/std/future/fn.pending.html
120+
[`future::ready`]: https://doc.rust-lang.org/std/future/fn.ready.html
121+
122+
1123
Version 1.47.0 (2020-10-08)
2124
==========================
3125

0 commit comments

Comments
 (0)