-
Notifications
You must be signed in to change notification settings - Fork 4
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
minimal-versions: run tests using stable
Rust
#33
Conversation
Adds a configurable `toolchain` parameter to the reusable workflow for minimal-versions which allows a different toolchain than `nightly` to be used for the purposes of running tests. `nightly` is only needed for the `-Z minimal-versions` resolution of Cargo.lock. We can avoid nightly breakages of which we've hit quite a few lately by reducing the scope of what we use `nightly` for to *just* that version resolution. Additionally, this moves the resolution of Cargo.lock to earlier in the workflow so it applies to all steps. Previously benchmarks were being tested before the `-Z minimal-versions` resolution took place.
FWIW I think using I think we could get by with just testing a few different feature combinations like |
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.
FWIW I think using cargo hack in this workflow is overkill and means it can't be used with crates that have a large number of features due to the combinatorial explosion.
It may be worth to make the test command a configurable parameter as well, with the cargo hack test
being the default.
I feel like I've been dealing with many, many subprojects that have excessively long |
|
Ran into another seemingly nightly-related failure, so hopefully this fixes it: https://github.com/RustCrypto/traits/actions/runs/6837021752/job/18592552010 |
Adds a configurable
toolchain
parameter to the reusable workflow for minimal-versions which allows a different toolchain thannightly
to be used for the purposes of running tests.nightly
is only needed for the-Z minimal-versions
resolution of Cargo.lock. We can avoid nightly breakages of which we've hit quite a few lately by reducing the scope of what we usenightly
for to just that version resolution.Additionally, this moves the resolution of Cargo.lock to earlier in the workflow so it applies to all steps. Previously benchmarks were being tested before the
-Z minimal-versions
resolution took place.