]> git.lizzy.rs Git - rust.git/blobdiff - RELEASES.md
Auto merge of #87851 - JohnTitor:rollup-odvmr47, r=JohnTitor
[rust.git] / RELEASES.md
index 8485dd5c02336fc7a36ed5565aaf202d1e0a2877..19fe97deacca691d621f0bd071c560f7a6de6613 100644 (file)
@@ -4,7 +4,7 @@ Version 1.54.0 (2021-07-29)
 Language
 -----------------------
 
-- [You can now use macros for values in key-value attributes.][83366]
+- [You can now use macros for values in built-in attribute macros.][83366]
   While a seemingly minor addition on its own, this enables a lot of
   powerful functionality when combined correctly. Most notably you can
   now include external documentation in your crate by writing the following.
@@ -22,7 +22,7 @@ Language
 - [You can now use multiple generic lifetimes with `impl Trait` where the
    lifetimes don't explicitly outlive another.][84701] In code this means
    that you can now have `impl Trait<'a, 'b>` where as before you could
-   only have `impl Trait<'a, 'b: 'a>`.
+   only have `impl Trait<'a, 'b> where 'b: 'a`.
 
 Compiler
 -----------------------
@@ -68,7 +68,7 @@ Stabilized APIs
 - [`VecDeque::partition_point`]
 
 Cargo
------------------------
+-----
 
 - [Added the `--prune <spec>` option to `cargo-tree` to remove a package from
   the dependency graph.][cargo/9520]
@@ -80,6 +80,20 @@ Cargo
   This variable points to a directory that integration tests and benches
   can use as a "scratchpad" for testing filesystem operations.
 
+Compatibility Notes
+-------------------
+- [Mixing Option and Result via `?` is no longer permitted in closures for inferred types.][86831]
+- [Previously unsound code is no longer permitted where different constructors in branches
+  could require different lifetimes.][85574]
+- As previously mentioned the [`std::arch` instrinsics now uses stricter const checking][83278]
+  than before and may reject some previously accepted code.
+- [`i128` multiplication on Cortex M0+ platforms currently unconditionally causes overflow
+   when compiled with `codegen-units = 1`.][86063]
+
+[85574]: https://github.com/rust-lang/rust/issues/85574
+[86831]: https://github.com/rust-lang/rust/issues/86831
+[86063]: https://github.com/rust-lang/rust/issues/86063
+[86831]: https://github.com/rust-lang/rust/issues/86831
 [79608]: https://github.com/rust-lang/rust/pull/79608
 [84988]: https://github.com/rust-lang/rust/pull/84988
 [84701]: https://github.com/rust-lang/rust/pull/84701
@@ -154,7 +168,7 @@ Libraries
 - [`leading_zeros`, and `trailing_zeros` are now available on all
   `NonZero` integer types.][84082]
 - [`{f32, f64}::from_str` now parse and print special values
-  (`NaN`, `-0`) according to IEEE RFC 754.][78618]
+  (`NaN`, `-0`) according to IEEE 754.][78618]
 - [You can now index into slices using `(Bound<usize>, Bound<usize>)`.][77704]
 - [Add the `BITS` associated constant to all numeric types.][82565]