Skip to content

Conversation

@hanna-kruppe
Copy link
Contributor

Closes #282

@coveralls
Copy link

coveralls commented Nov 13, 2025

Pull Request Test Coverage Report for Build 19340145823

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 54.299%

Totals Coverage Status
Change from base Build 19340130212: 0.0%
Covered Lines: 1421
Relevant Lines: 2617

💛 - Coveralls

@hanna-kruppe hanna-kruppe force-pushed the windows-sys-0.61 branch 2 times, most recently from 4abf361 to 16cddf3 Compare November 13, 2025 13:44
@hanna-kruppe
Copy link
Contributor Author

So, the MSRV jobs passed because I didn't touch the lockfile. If I bump the locked version of windows-sys, those jobs would probably fail. But a plain cargo update, as done by the rust-next workflow on the main branch, won't bump the windows-sys version. In fact, even setting resolver.incompatible-rust-version = "ignore" won't do that. A targeted cargo update [email protected] --precise 0.61.2 fails with:

error: failed to select a version for the requirement `windows-sys = "^0.60.0"`
candidate versions found which didn't match: 0.61.2
location searched: crates.io index
required by package `anstyle-query v1.1.4`
    ... which satisfies dependency `anstyle-query = "^1.0.0"` (locked to 1.1.4) of package `anstream v0.6.21`
    ... which satisfies dependency `anstream = "^0.6.20"` (locked to 0.6.21) of package `snapbox v0.6.23`
    ... which satisfies dependency `snapbox = "^0.6.23"` (locked to 0.6.23) of package `anstyle-roff v0.3.8 (C:\...\anstyle\crates\anstyle-roff)`

In fact, the only way I've found to bump the version that anstyle-query and anstyle-wincon depend on directly is to edit the version constraints to require 0.61, generate a lockfile compatible with this, and then relax the version requirement again. I've now pushed a commit doing that, to confirm that the MSRV job fails and to see how the other jobs handle it.

@hanna-kruppe
Copy link
Contributor Author

Yeah, the windows MSRV job failed as expected. The minimal-versions job downgraded to windows-sys 0.60.2, but since it only runs on Ubuntu it doesn't actually compile against that version.

@epage
Copy link
Collaborator

epage commented Nov 13, 2025

Why was windows-sys bumped in the lockfile? We keep that compatible with our MSRV.

@hanna-kruppe
Copy link
Contributor Author

I did it as a separate commit to experiment with CI, not to actually merge.

@hanna-kruppe
Copy link
Contributor Author

hanna-kruppe commented Nov 13, 2025

Dropped the lockfile commit. CI is green again, but none of the CI jobs actually compile windows-sys 0.61 as far as I can tell, and the rust-next job won't do it either. Any ideas how to fix that?

@epage
Copy link
Collaborator

epage commented Nov 13, 2025

In fact, even setting resolver.incompatible-rust-version = "ignore" won't do that.

Whelp, can't believe I forgot to add that to my jobs. Doing it in #285.

@epage
Copy link
Collaborator

epage commented Nov 13, 2025

If I run

$ CARGO_RESOLVER_INCOMPATIBLE_RUST_VERSIONS=allow cargo update

then I see that windows-sys was updated for the local versions of anstyle-query and anstyle-wincon. The version of those we get through clap are not updated but that is fine.

With #285, that should now be done in CI.

@epage
Copy link
Collaborator

epage commented Nov 13, 2025

Also have #286 for running more jobs on Windows

@hanna-kruppe
Copy link
Contributor Author

Oops, I must have done something wrong locally and I definitely misremembered what the config value is called. Thanks!

@epage epage merged commit 263b34c into rust-cli:main Nov 13, 2025
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow windows-sys 0.61 without MSRV bump

3 participants