From d2241e3635b2ba2b0d46e2caa392170c1539b3c8 Mon Sep 17 00:00:00 2001 From: Erin Power Date: Fri, 21 May 2021 12:27:43 +0200 Subject: [PATCH 01/14] Update RELEASES.md for 1.53.0 --- RELEASES.md | 184 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 184 insertions(+) diff --git a/RELEASES.md b/RELEASES.md index 60b3359c1b6..977b7f34f37 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1,3 +1,187 @@ +Version 1.53.0 (2021-06-17) +============================ + +Language +----------------------- +- [You can now use unicode for identifiers.][83799] This allows multilingual + identifiers but still doesn't allow glyphs that not considered characters + such as `◆` or `🦀`. More specifically you can now use any identifier that + matches the UAX #31 "Unicode Identifier and Pattern Syntax" standard. This + is the same standard as languages like Python, however Rust uses NFC + normalisation which may be different from other languages. +- [You can now specify "or patterns" inside pattern matches.][79278] + Previously you could only use `|` (OR) on complete patterns. E.g. + ```rust + let x = Some(2u8); + // Before + matches!(x, Some(1) | Some(2)); + // Now + matches!(x, Some(1 | 2)); + ``` +- [Added the `:pat_param` `macro_rules!` matcher.][83386] This matcher + has the same semantics as the `:pat` matcher. This is to allow `:pat` + to change semantics to being a pattern fragment in a future edition. + +Compiler +----------------------- +- [Updated to build with LLVM 12 by , and enabled `mutable-noalias` when + built LLVM 12 or greater.][82834] +- [Updated the minimum external LLVM version to LLVM 10.][83387] +- [Added Tier 3\* support for the `wasm64-unknown-unknown` target.][80525] +- [Improved debuginfo for closures and async functions on Windows MSVC.][83941] + +Libraries +----------------------- +- [Abort messages will now forward to `android_set_abort_message` on + Android platforms when available.][81469] +- [`slice::IterMut<'_, T>` now implements `AsRef<[T]>`][82771] +- [Arrays of any length now implement `IntoIterator`.][84147] + Currently `.into_iter()` will return `slice::Iter` (`Item=&T`), but + this may change in a future edition to return `Item=T`. +- [`NonZero::{leading_zeros, trailing_zeros}` is now `const`.][84082] +- [`{f32, f64}::from_str` now parse and print special values + (`NaN`, `-0`) according to IEEE RFC 754.][78618] +- [You can now index into slices using `(Bound, Bound)`.][77704] +- [Add the `BITS` associated constant to all numeric types.][82565] + +Stabilised APIs +--------------- +- [`AtomicBool::fetch_update`] +- [`AtomicPtr::fetch_update`] +- [`BTreeMap::retain`] +- [`BTreeSet::retain`] +- [`BufReader::seek_relative`] +- [`DebugStruct::non_exhaustive`] +- [`Duration::MAX`] +- [`Duration::ZERO`] +- [`Duration::is_zero`] +- [`Duration::saturating_add`] +- [`Duration::saturating_mul`] +- [`Duration::saturating_sub`] +- [`ErrorKind::Unsupported`] +- [`Option::insert`] +- [`Ordering::is_eq`] +- [`Ordering::is_ge`] +- [`Ordering::is_gt`] +- [`Ordering::is_le`] +- [`Ordering::is_lt`] +- [`Ordering::is_ne`] +- [`OsStr::is_ascii`] +- [`OsStr::make_ascii_lowercase`] +- [`OsStr::make_ascii_uppercase`] +- [`OsStr::to_ascii_lowercase`] +- [`OsStr::to_ascii_uppercase`] +- [`Peekable::peek_mut`] +- [`Rc::decrement_strong_count`] +- [`Rc::increment_strong_count`] +- [`Vec::extend_from_within`] +- [`array::from_mut`] +- [`array::from_ref`] +- [`char::MAX`] +- [`char::REPLACEMENT_CHARACTER`] +- [`char::UNICODE_VERSION`] +- [`char::decode_utf16`] +- [`char::from_digit`] +- [`char::from_u32_unchecked`] +- [`char::from_u32`] +- [`cmp::max_by_key`] +- [`cmp::max_by`] +- [`cmp::min_by_key`] +- [`cmp::min_by`] +- [`f32::is_subnormal`] +- [`f64::is_subnormal`] + +Cargo +----------------------- +- [Expose build.target .cargo/config setting as packages.target in Cargo.toml][cargo/9030] + +Rustdoc +----------------------- +- [Added the `rustdoc::bare_urls` lint that warns when you have URLs + without hyperlinks.][81764] + +Compatibility Notes +------------------- +- [Implement token-based handling of attributes during expansion][82608] +- [`Ipv4::from_str` will now reject octal format IP addresses.][83652] The octal format + can lead confusion and potential security vulnerablities and is no longer recommended. + +Internal Only +------------- +- [Rework the `std::sys::windows::alloc` implementation.][83065] +- [rustdoc: Don't enter an infer_ctxt in get_blanket_impls for impls that aren't blanket impls.][82864] +- [rustdoc: Only look at blanket impls in `get_blanket_impls`][83681] +- [Rework rustdoc const type][82873] + +[83386]: https://github.com/rust-lang/rust/pull/83386 +[82771]: https://github.com/rust-lang/rust/pull/82771 +[84147]: https://github.com/rust-lang/rust/pull/84147 +[84082]: https://github.com/rust-lang/rust/pull/84082 +[83799]: https://github.com/rust-lang/rust/pull/83799 +[83681]: https://github.com/rust-lang/rust/pull/83681 +[83652]: https://github.com/rust-lang/rust/pull/83652 +[83387]: https://github.com/rust-lang/rust/pull/83387 +[82873]: https://github.com/rust-lang/rust/pull/82873 +[82864]: https://github.com/rust-lang/rust/pull/82864 +[82608]: https://github.com/rust-lang/rust/pull/82608 +[82565]: https://github.com/rust-lang/rust/pull/82565 +[80525]: https://github.com/rust-lang/rust/pull/80525 +[79278]: https://github.com/rust-lang/rust/pull/79278 +[78618]: https://github.com/rust-lang/rust/pull/78618 +[77704]: https://github.com/rust-lang/rust/pull/77704 +[83941]: https://github.com/rust-lang/rust/pull/83941 +[83065]: https://github.com/rust-lang/rust/pull/83065 +[82834]: https://github.com/rust-lang/rust/pull/82834 +[81764]: https://github.com/rust-lang/rust/pull/81764 +[81469]: https://github.com/rust-lang/rust/pull/81469 +[cargo/9030]: https://github.com/rust-lang/cargo/pull/9030 +[`char::MAX`]: https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.MAX +[`char::REPLACEMENT_CHARACTER`]: https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.REPLACEMENT_CHARACTER +[`char::UNICODE_VERSION`]: https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.UNICODE_VERSION +[`char::decode_utf16`]: https://doc.rust-lang.org/std/primitive.char.html#method.decode_utf16 +[`char::from_u32`]: https://doc.rust-lang.org/std/primitive.char.html#method.from_u32 +[`char::from_u32_unchecked`]: https://doc.rust-lang.org/std/primitive.char.html#method.from_u32_unchecked +[`char::from_digit`]: https://doc.rust-lang.org/std/primitive.char.html#method.from_digit +[`AtomicBool::fetch_update`]: https://doc.rust-lang.org/std/sync/atomic/struct.AtomicBool.html#method.fetch_update +[`AtomicPtr::fetch_update`]: https://doc.rust-lang.org/std/sync/atomic/struct.AtomicPtr.html#method.fetch_update +[`BTreeMap::retain`]: https://doc.rust-lang.org/std/collections/struct.BTreeMap.html#method.retain +[`BTreeSet::retain`]: https://doc.rust-lang.org/std/collections/struct.BTreeSet.html#method.retain +[`BufReader::seek_relative`]: https://doc.rust-lang.org/std/io/struct.BufReader.html#method.seek_relative +[`DebugStruct::non_exhaustive`]: https://doc.rust-lang.org/std/fmt/struct.DebugStruct.html#method.finish_non_exhaustive +[`Duration::MAX`]: https://doc.rust-lang.org/std/time/struct.Duration.html#associatedconstant.MAX +[`Duration::ZERO`]: https://doc.rust-lang.org/std/time/struct.Duration.html#associatedconstant.ZERO +[`Duration::is_zero`]: https://doc.rust-lang.org/std/time/struct.Duration.html#method.is_zero +[`Duration::saturating_add`]: https://doc.rust-lang.org/std/time/struct.Duration.html#method.saturating_add +[`Duration::saturating_mul`]: https://doc.rust-lang.org/std/time/struct.Duration.html#method.saturating_mul +[`Duration::saturating_sub`]: https://doc.rust-lang.org/std/time/struct.Duration.html#method.saturating_sub +[`ErrorKind::Unsupported`]: https://doc.rust-lang.org/std/io/enum.ErrorKind.html#variant.Unsupported +[`Option::insert`]: https://doc.rust-lang.org/std/option/enum.Option.html#method.insert +[`Ordering::is_eq`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.is_eq +[`Ordering::is_ge`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.is_ge +[`Ordering::is_gt`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.is_gt +[`Ordering::is_le`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.is_le +[`Ordering::is_lt`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.is_lt +[`Ordering::is_ne`]: https://doc.rust-lang.org/std/cmp/enum.Ordering.html#method.is_ne +[`OsStr::eq_ignore_ascii_case`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.eq_ignore_ascii_case +[`OsStr::is_ascii`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.is_ascii +[`OsStr::make_ascii_lowercase`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.make_ascii_lowercase +[`OsStr::make_ascii_uppercase`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.make_ascii_uppercase +[`OsStr::to_ascii_lowercase`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.to_ascii_lowercase +[`OsStr::to_ascii_uppercase`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.to_ascii_uppercase +[`Peekable::peek_mut`]: https://doc.rust-lang.org/std/iter/struct.Peekable.html#method.peek_mut +[`Rc::decrement_strong_count`]: https://doc.rust-lang.org/std/rc/struct.Rc.html#method.increment_strong_count +[`Rc::increment_strong_count`]: https://doc.rust-lang.org/std/rc/struct.Rc.html#method.increment_strong_count +[`Vec::extend_from_within`]: https://doc.rust-lang.org/beta/std/vec/struct.Vec.html#method.extend_from_within +[`array::from_mut`]: https://doc.rust-lang.org/beta/std/array/fn.from_mut.html +[`array::from_ref`]: https://doc.rust-lang.org/beta/std/array/fn.from_ref.html +[`cmp::max_by_key`]: https://doc.rust-lang.org/beta/std/cmp/fn.max_by_key.html +[`cmp::max_by`]: https://doc.rust-lang.org/beta/std/cmp/fn.max_by.html +[`cmp::min_by_key`]: https://doc.rust-lang.org/beta/std/cmp/fn.min_by_key.html +[`cmp::min_by`]: https://doc.rust-lang.org/beta/std/cmp/fn.min_by.html +[`f32::is_subnormal`]: https://doc.rust-lang.org/f32.html#method.is_subnormal +[`f64::is_subnormal`]: https://doc.rust-lang.org/f64.html#method.is_subnormal + + Version 1.52.1 (2021-05-10) ============================ From ac5d15a4ca728cb1e7795425bc12a8391c9b38dc Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Fri, 21 May 2021 12:56:35 +0200 Subject: [PATCH 02/14] Update RELEASES.md --- RELEASES.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/RELEASES.md b/RELEASES.md index 977b7f34f37..155d47414b0 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -30,6 +30,9 @@ Compiler - [Added Tier 3\* support for the `wasm64-unknown-unknown` target.][80525] - [Improved debuginfo for closures and async functions on Windows MSVC.][83941] +\* Refer to Rust's [platform support page][platform-support-doc] for more +information on Rust's tiered platform support. + Libraries ----------------------- - [Abort messages will now forward to `android_set_abort_message` on @@ -108,6 +111,10 @@ Compatibility Notes Internal Only ------------- +These changes provide no direct user facing benefits, but represent significant +improvements to the internals and overall performance of rustc and +related tools. + - [Rework the `std::sys::windows::alloc` implementation.][83065] - [rustdoc: Don't enter an infer_ctxt in get_blanket_impls for impls that aren't blanket impls.][82864] - [rustdoc: Only look at blanket impls in `get_blanket_impls`][83681] From bc86e8111a618bb0f89f713e1f0c4efb3501358b Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Fri, 21 May 2021 13:40:24 +0200 Subject: [PATCH 03/14] Update RELEASES.md --- RELEASES.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index 155d47414b0..3ef242292d0 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -24,8 +24,7 @@ Language Compiler ----------------------- -- [Updated to build with LLVM 12 by , and enabled `mutable-noalias` when - built LLVM 12 or greater.][82834] +- [Enabled `mutable-noalias` when built with LLVM 12 or greater.][82834] - [Updated the minimum external LLVM version to LLVM 10.][83387] - [Added Tier 3\* support for the `wasm64-unknown-unknown` target.][80525] - [Improved debuginfo for closures and async functions on Windows MSVC.][83941] From b7cad35f7f251478fb166dab9dfe88b40c50c463 Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Fri, 21 May 2021 13:53:18 +0200 Subject: [PATCH 04/14] Update RELEASES.md --- RELEASES.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index 3ef242292d0..8a1d686febc 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -95,7 +95,12 @@ Stabilised APIs Cargo ----------------------- -- [Expose build.target .cargo/config setting as packages.target in Cargo.toml][cargo/9030] +- [Cargo now supports git repositories where the default `HEAD` branch is not + "master".][cargo/9392] This also includes a switch to the version 3 `Cargo.lock` format + which can handle default branches correctly. +- [macOS targets now default to `unpacked` split-debuginfo.][cargo/9298] +- [The `authors` field is no longer included in `Cargo.toml` for new + projects.][cargo/9282] Rustdoc ----------------------- @@ -140,7 +145,9 @@ related tools. [82834]: https://github.com/rust-lang/rust/pull/82834 [81764]: https://github.com/rust-lang/rust/pull/81764 [81469]: https://github.com/rust-lang/rust/pull/81469 -[cargo/9030]: https://github.com/rust-lang/cargo/pull/9030 +[cargo/9298]: https://github.com/rust-lang/cargo/pull/9298 +[cargo/9282]: https://github.com/rust-lang/cargo/pull/9282 +[cargo/9392]: https://github.com/rust-lang/cargo/pull/9392 [`char::MAX`]: https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.MAX [`char::REPLACEMENT_CHARACTER`]: https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.REPLACEMENT_CHARACTER [`char::UNICODE_VERSION`]: https://doc.rust-lang.org/std/primitive.char.html#associatedconstant.UNICODE_VERSION From b36e1a63e013f75a9b69b3e149f112dee2cfd6f4 Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Sat, 22 May 2021 18:52:06 +0200 Subject: [PATCH 05/14] Update RELEASES.md Co-authored-by: Joshua Nelson --- RELEASES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index 8a1d686febc..2aadd5a9e33 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -8,7 +8,7 @@ Language such as `◆` or `🦀`. More specifically you can now use any identifier that matches the UAX #31 "Unicode Identifier and Pattern Syntax" standard. This is the same standard as languages like Python, however Rust uses NFC - normalisation which may be different from other languages. + normalization which may be different from other languages. - [You can now specify "or patterns" inside pattern matches.][79278] Previously you could only use `|` (OR) on complete patterns. E.g. ```rust From 3fcf5f3150565fbf4441d8ffd2ec7b955e93037f Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Wed, 26 May 2021 14:20:50 +0200 Subject: [PATCH 06/14] Update RELEASES.md --- RELEASES.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index 2aadd5a9e33..d4540bf2b2e 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -111,7 +111,8 @@ Compatibility Notes ------------------- - [Implement token-based handling of attributes during expansion][82608] - [`Ipv4::from_str` will now reject octal format IP addresses.][83652] The octal format - can lead confusion and potential security vulnerablities and is no longer recommended. + can lead confusion and potential security vulnerablities and [is no longer recommended][ietf6943]. + Internal Only ------------- @@ -193,6 +194,7 @@ related tools. [`cmp::min_by`]: https://doc.rust-lang.org/beta/std/cmp/fn.min_by.html [`f32::is_subnormal`]: https://doc.rust-lang.org/f32.html#method.is_subnormal [`f64::is_subnormal`]: https://doc.rust-lang.org/f64.html#method.is_subnormal +[ietf6943]: https://datatracker.ietf.org/doc/html/rfc6943#section-3.1.1 Version 1.52.1 (2021-05-10) From 9348118c30ed28d22f43fe3f9471c8a02770574c Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Wed, 26 May 2021 14:22:19 +0200 Subject: [PATCH 07/14] Update RELEASES.md --- RELEASES.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index d4540bf2b2e..fb2c06d0cff 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -24,7 +24,6 @@ Language Compiler ----------------------- -- [Enabled `mutable-noalias` when built with LLVM 12 or greater.][82834] - [Updated the minimum external LLVM version to LLVM 10.][83387] - [Added Tier 3\* support for the `wasm64-unknown-unknown` target.][80525] - [Improved debuginfo for closures and async functions on Windows MSVC.][83941] @@ -143,7 +142,6 @@ related tools. [77704]: https://github.com/rust-lang/rust/pull/77704 [83941]: https://github.com/rust-lang/rust/pull/83941 [83065]: https://github.com/rust-lang/rust/pull/83065 -[82834]: https://github.com/rust-lang/rust/pull/82834 [81764]: https://github.com/rust-lang/rust/pull/81764 [81469]: https://github.com/rust-lang/rust/pull/81469 [cargo/9298]: https://github.com/rust-lang/cargo/pull/9298 From 9f1ad43e6911ed7c7e939ab9e0cd66897ebd59af Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Wed, 26 May 2021 18:40:36 +0200 Subject: [PATCH 08/14] Apply suggestions from code review Co-authored-by: memoryruins --- RELEASES.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index fb2c06d0cff..69d2e98e511 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -4,7 +4,7 @@ Version 1.53.0 (2021-06-17) Language ----------------------- - [You can now use unicode for identifiers.][83799] This allows multilingual - identifiers but still doesn't allow glyphs that not considered characters + identifiers but still doesn't allow glyphs that are not considered characters such as `◆` or `🦀`. More specifically you can now use any identifier that matches the UAX #31 "Unicode Identifier and Pattern Syntax" standard. This is the same standard as languages like Python, however Rust uses NFC @@ -110,7 +110,7 @@ Compatibility Notes ------------------- - [Implement token-based handling of attributes during expansion][82608] - [`Ipv4::from_str` will now reject octal format IP addresses.][83652] The octal format - can lead confusion and potential security vulnerablities and [is no longer recommended][ietf6943]. + can lead to confusion and potential security vulnerabilities and [is no longer recommended][ietf6943]. Internal Only From b906953d59530a8fe12a5d912b1555a0c201524b Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Thu, 27 May 2021 11:22:47 +0200 Subject: [PATCH 09/14] Update RELEASES.md --- RELEASES.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index 69d2e98e511..add3e16ddb7 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -190,8 +190,8 @@ related tools. [`cmp::max_by`]: https://doc.rust-lang.org/beta/std/cmp/fn.max_by.html [`cmp::min_by_key`]: https://doc.rust-lang.org/beta/std/cmp/fn.min_by_key.html [`cmp::min_by`]: https://doc.rust-lang.org/beta/std/cmp/fn.min_by.html -[`f32::is_subnormal`]: https://doc.rust-lang.org/f32.html#method.is_subnormal -[`f64::is_subnormal`]: https://doc.rust-lang.org/f64.html#method.is_subnormal +[`f32::is_subnormal`]: https://doc.rust-lang.org/std/primitive.f64.html#method.is_subnormal +[`f64::is_subnormal`]: https://doc.rust-lang.org/std/primitive.f64.html#method.is_subnormal [ietf6943]: https://datatracker.ietf.org/doc/html/rfc6943#section-3.1.1 From 72c109e65c6bf75b4cdd0ef309bbd37e63474eba Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Thu, 27 May 2021 13:29:37 +0200 Subject: [PATCH 10/14] Update RELEASES.md --- RELEASES.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index add3e16ddb7..5a5bfd2899e 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -37,8 +37,10 @@ Libraries Android platforms when available.][81469] - [`slice::IterMut<'_, T>` now implements `AsRef<[T]>`][82771] - [Arrays of any length now implement `IntoIterator`.][84147] - Currently `.into_iter()` will return `slice::Iter` (`Item=&T`), but - this may change in a future edition to return `Item=T`. + Currently call `.into_iter()` as a method on an array will + return `impl Iterator`, but this may change in a + future edition to change `Item` to `T`. Calling `IntoIterator::into_iter` + directly on arrays will provide `impl Iterator` as expected. - [`NonZero::{leading_zeros, trailing_zeros}` is now `const`.][84082] - [`{f32, f64}::from_str` now parse and print special values (`NaN`, `-0`) according to IEEE RFC 754.][78618] From 1554c8d482f273a9d371a6fbefe00a1a629ce2ec Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Thu, 27 May 2021 13:33:25 +0200 Subject: [PATCH 11/14] Update RELEASES.md --- RELEASES.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index 5a5bfd2899e..b1ee6d78101 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -41,7 +41,8 @@ Libraries return `impl Iterator`, but this may change in a future edition to change `Item` to `T`. Calling `IntoIterator::into_iter` directly on arrays will provide `impl Iterator` as expected. -- [`NonZero::{leading_zeros, trailing_zeros}` is now `const`.][84082] +- [`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] - [You can now index into slices using `(Bound, Bound)`.][77704] From 9e2ad50a69dbfbd698e3bd8ab4bb84df9b67ab73 Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Thu, 27 May 2021 13:35:22 +0200 Subject: [PATCH 12/14] Update RELEASES.md --- RELEASES.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/RELEASES.md b/RELEASES.md index b1ee6d78101..ebf76d8158e 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -112,8 +112,10 @@ Rustdoc Compatibility Notes ------------------- - [Implement token-based handling of attributes during expansion][82608] -- [`Ipv4::from_str` will now reject octal format IP addresses.][83652] The octal format - can lead to confusion and potential security vulnerabilities and [is no longer recommended][ietf6943]. +- [`Ipv4::from_str` will now reject octal format IP addresses in addition + to rejecting hexadecimal IP addresses.][83652] The octal format can lead + to confusion and potential security vulnerabilities and [is no + longer recommended][ietf6943]. Internal Only From e94eda2473a32cebfc437fec8535f449dd22d0d6 Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Fri, 28 May 2021 05:37:41 +0200 Subject: [PATCH 13/14] Update RELEASES.md Co-authored-by: Alexander Ronald Altman --- RELEASES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index ebf76d8158e..ca8ae4a924a 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -37,7 +37,7 @@ Libraries Android platforms when available.][81469] - [`slice::IterMut<'_, T>` now implements `AsRef<[T]>`][82771] - [Arrays of any length now implement `IntoIterator`.][84147] - Currently call `.into_iter()` as a method on an array will + Currently calling `.into_iter()` as a method on an array will return `impl Iterator`, but this may change in a future edition to change `Item` to `T`. Calling `IntoIterator::into_iter` directly on arrays will provide `impl Iterator` as expected. From 6314a639b36cf789b00b43c64ad739795d683c6a Mon Sep 17 00:00:00 2001 From: XAMPPRocky <4464295+XAMPPRocky@users.noreply.github.com> Date: Fri, 28 May 2021 11:56:33 +0200 Subject: [PATCH 14/14] Update RELEASES.md Co-authored-by: klensy --- RELEASES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASES.md b/RELEASES.md index ca8ae4a924a..8adc450ac98 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -187,7 +187,7 @@ related tools. [`OsStr::to_ascii_uppercase`]: https://doc.rust-lang.org/std/ffi/struct.OsStr.html#method.to_ascii_uppercase [`Peekable::peek_mut`]: https://doc.rust-lang.org/std/iter/struct.Peekable.html#method.peek_mut [`Rc::decrement_strong_count`]: https://doc.rust-lang.org/std/rc/struct.Rc.html#method.increment_strong_count -[`Rc::increment_strong_count`]: https://doc.rust-lang.org/std/rc/struct.Rc.html#method.increment_strong_count +[`Rc::increment_strong_count`]: https://doc.rust-lang.org/std/rc/struct.Rc.html#method.increment_strong_count [`Vec::extend_from_within`]: https://doc.rust-lang.org/beta/std/vec/struct.Vec.html#method.extend_from_within [`array::from_mut`]: https://doc.rust-lang.org/beta/std/array/fn.from_mut.html [`array::from_ref`]: https://doc.rust-lang.org/beta/std/array/fn.from_ref.html