chore: Set rust-version
in Cargo.toml
#7
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.
Maintaining an appropriate
rust-version
will better support downstreams resolving dependencies with compatible releases via-Z msrv-policy
(or the eventual stabilized equivalent).Context
Looks like the minimum supported version is Rust
1.63.0
, at least when opt-out of the default features (std
); otherwise it's Rust1.64.0
.For reference
hashbrown 0.14.2
release relaxed their MSRV from1.64.0
to1.63
:0.2.9
(0.2.10
is compatible too) or the related default feature in hashbrown is disabled.hashbrown
with Rust 1.63.In future, if this sort of change happens it could be better resolved if
rust-version
was adopted instead. Presently without updatingCargo.lock
with a pin forhashbrown
, the implicitallocator-api2
dep will resolve to a version incompatible withrust-version = "1.63.0"
, but-Z msrv-policy
won't be able to infer that due to lack ofrust-version
.allocator-api2
should likewise adoptrust-version
.1.64.0
might go more smoothly in the ecosystem (Preferred).1.63.0
is more accurate and may avoid adding friction.If preferring
rust-version = "1.64.0"
, it should rollback to the prior release when this condition is not satisfied (eg:-Z msrv-policy
). Thus only a concern if downstreams still expect to compile newer releases with1.63.0
?For context the
0.2.9
release was1.63.0
regardless ofstd
vsnostd
builds below.Reproduction with
cargo-msrv
std (default) => MSRV 1.64
nostd (default-features = false) => MSRV 1.63