-
-
Notifications
You must be signed in to change notification settings - Fork 75
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Set MSRV to 1.76 #871
Set MSRV to 1.76 #871
Conversation
062f2af
to
b84ac7e
Compare
39f299f
to
b64bd19
Compare
"panic_info", | ||
]; | ||
const NIGHTLY_SNAPSHOT_TESTS: &[&str] = &["alloc"]; | ||
const POST_MSRV_SNAPSHOT_TESTS: &[&str] = &["net"]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's unclear to me what "post msrv snapshot tests" are. If we raise the msrv should this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. We have three brackets of tests
- tests that work on the msrv, stable and nightly
- tests that work on stable and nightly
- tests that work on nightly only
Regarding 2: The default
defmt features support the msrv, but some of the optional features require a newer version, e.g. ip_in_core
. These tests are the ones in POST_MSRV_TESTS
. Maybe OPTIONAL_FEATURE_TESTS
is better?
Regarding 3: These tests use unstable features.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So POST_MSRV
means "any version above our MSRV"? If so, a little comment would be really nice:
// Tests which run on all Rustc versions later than our MSRV
const POST_MSRV_SNAPSHOT_TESTS: &[&str] = &["net"];
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well it's not all versions. It's some version in MSRV..=STABLE
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No blockers. :)
This PR documents and tests Rust 1.76 as our MSRV. This is the version Ferrocene 24.05 is based on. Before we only guaranteed to support the latest stable.
I tried to store the MSRV in an env variable in the workflow file, but unfortunately env variables are not available in the strategy matrix, so it has to be repeated.