Skip to content

Conversation

MarijnS95
Copy link
Contributor

Sometimes dependency crates bump their MSRV beyond our MSRV in a patch release, and fail our CI in subsequent versions. Instead of downgrading independent crates in CI every time this issue arises, combine it with our already-existing -Zminimal-versions check. Instead of running this check on nightly, we only use that toolchain to generate a Cargo.lock and subsequently check the code on our MSRV toolchain.

@MarijnS95 MarijnS95 force-pushed the ci-minimal-versions branch from f513c29 to 67da23c Compare November 5, 2024 09:29
Sometimes dependency crates bump their MSRV beyond our MSRV in a patch
release, and fail our CI in subsequent versions.  Instead of downgrading
independent crates in CI every time this issue arises, combine it with
our already-existing `-Zminimal-versions` check.  Instead of running
this check on `nightly`, we only use that toolchain to generate a
`Cargo.lock` and subsequently `check` the code on our MSRV toolchain.
@MarijnS95 MarijnS95 force-pushed the ci-minimal-versions branch from 67da23c to 5db3c4f Compare November 5, 2024 09:29
@MarijnS95
Copy link
Contributor Author

MarijnS95 commented Nov 5, 2024

https://github.com/Smithay/drm-rs/actions/runs/11681253865/job/32525926098?pr=212

error[E0433]: failed to resolve: use of undeclared crate or module `syntax`
Error:  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/regex-1.5.0/src/literal/mod.rs:9:9
  |
9 |     use syntax::hir::literal::Literals;
  |         ^^^^^^ use of undeclared crate or module `syntax`

It's been a while since I last saw this one: rust-lang/regex#931. It's showing up now because the original MSRV check builds with --all-features, which we now combine with a -Zminimal-versions build as I outlined in rust-lang/regex#931 (comment). Bumping our minimum bindgen version to 0.69.3 which includes rust-lang/regex#931 should solve this. Otherwise we have to change our --all --all-features build?

To solve rust-lang/regex#931 when the CI builds
`--all-features` on a `-Zminimal-versions` lockfile.
Rust points out new issues with improperly indented list items in doc
comments, unnecessary named lifetimes, and missing types in transmutes
(that can be circumvented entirely with helpers).
@MarijnS95
Copy link
Contributor Author

Note that the original -Zminimal-versions build wasn't building minimal versions at all. See a detailed breakdown at #211 (comment).

@Drakulix
Copy link
Member

Superseeded by #211 & #227

@Drakulix Drakulix closed this Jul 25, 2025
@MarijnS95 MarijnS95 deleted the ci-minimal-versions branch July 25, 2025 17:07
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.

2 participants