Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of change
This change makes all our (Rust) crates opt in to the 2021 edition of Rust which entails bumping the minimum supported Rust version (MSRV) requirements to 1.56.1.
By opting in to the 2021 edition we get more precise closure captures and the behaviour regarding how the
IntoIterator
trait works for arrays will be more consistent with the rest of the language. The details of the 2021 edition are explained in detail here.Furthermore by increasing the MSRV to 1.56.1 compile times are expected to be faster due to the use of LLVM13 and we may for instance refactor things like this
to simply become this:
#![doc = include_str!("README.md")]
See the official Rust release logs for more improvements that have made it into (stable) Rust since 1.51.0 (our last MSRV).
Type of change
Add an
x
to the boxes that are relevant to your changes.How the change has been tested
I followed the transitioning guide. It is worth mentioning that the first step
$ cargo fix --edition
from the aforementioned guide did not report any problems. I also built and ran all the tests after building with the 2021 edition set in all the Cargo.toml files.Change checklist
Add an
x
to the boxes that are relevant to your changes.