Skip to content
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

CI: Only require MSRV-check to succeed with -Zminimal-versions #443

Merged
merged 2 commits into from
Oct 24, 2023

Conversation

MarijnS95
Copy link
Member

@MarijnS95 MarijnS95 commented Oct 23, 2023

One of our dependencies recently bumped its rust-version causing our MSRV test to break again. It is undesired to randomly work around this by bumping our MSRV, or consistently have PRs/merges fail for unrelated reasons.

Instead, perform the MSRV-test with -Zminimal-versions. This seems to be generally accepted in the Rust ecosystem (as there is otherwise no way for crates to bump MSRV barring a semver-breaking release) and prevents us from hitting unnecessary MSRV build failures caused by dependencies.

At the same time our minimal version bounds are now exercised, ensuring downstream crates depending on the ndk can build with -Zminimal-versions too - which required specifying a few patch bounds for our dependencies.

Unfortunately GitHub's UI for continue-on-error: true doesn't make it obvious that a step/job really didn't succeed, this is only visible from the annotations. Still, it is relevant to keep track of whether our non-minimal-versions build adheres to MSRV.

One of our dependencies recently bumped its `rust-version` causing our
MSRV test to _break again_.  It is undesired to randomly work around
this by bumping our MSRV, or consistently have PRs/merges fail for
unrelated reasons.

Instead, perform the MSRV-test with `-Zminimal-versions`.  This seems
to be generally accepted in the Rust ecosystem (as there is otherwise
no way for crates to bump MSRV barring a semver-breaking release) and
prevents us from hitting unnecessary MSRV build failures caused by
dependencies.

At the same time our minimal version bounds are now exercised, ensuring
downstream crates depending on the `ndk` can build with
`-Zminimal-versions` too - which required specifying a few patch bounds
for our dependencies.

Unfortunately GitHub's UI for `continue-on-error: true` doesn't make it
obvious that a step/job really didn't succeed, this is only visible from
the annotations.  Still, it is relevant to keep track of whether our
non-`minimal-versions` build adheres to MSRV.
Getting a bunch of deprecation warnings on the _ancient_ (almost 4 years
old) `v1` release.
@MarijnS95 MarijnS95 force-pushed the msrv-minimal-versions branch from 030abc8 to ef75212 Compare October 24, 2023 07:50
@MarijnS95 MarijnS95 merged commit 407a822 into master Oct 24, 2023
@MarijnS95 MarijnS95 deleted the msrv-minimal-versions branch October 24, 2023 14:29
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.

1 participant