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

v3.7.0 is a breaking version #656

Closed
FabijanC opened this issue Nov 21, 2024 · 4 comments
Closed

v3.7.0 is a breaking version #656

FabijanC opened this issue Nov 21, 2024 · 4 comments

Comments

@FabijanC
Copy link

FabijanC commented Nov 21, 2024

Version 3.7.0 broke the semver contract. The required Rustc version has been incremented to 1.79, thus breaking backwards compatibility, which should have made the new release 4.0.0 instead of 3.7.0. Unfortuantely I learned this the hard way (broken CI / release process).

But not sure what's going on here; on crates.io v3.7.0 is the latest version, while on GitHub it's v3.6.12. Was 3.7.0 a deliberate release?

@bkchr
Copy link
Member

bkchr commented Nov 22, 2024

rust-lang/api-guidelines#231 and there are other discussions. MSRV bumps alongside a minor bump are fine, aka not semver breaking.

@FabijanC
Copy link
Author

Thanks for the link. Basically breaking people's CI is by some not considered a breaking change. And even though they do not consider it a breaking change, they advise MSRV bumps to be included in breaking releases.

Moreover, for us, parity-scale-codec is not a direct dependency, but one of hundreds of dependencies of a dependency. Which makes it hard to track such changes. We were able to fix our CI by specifying parity-scale-codec (and parity-scale-odec-derive) as our direct dependencies with a =3.6.12 requirement.

Since it seems you are not going to yank 3.7.0 and replace it with 4.0.0, feel free to close this issue.

@bkchr
Copy link
Member

bkchr commented Nov 24, 2024

But don't you use a Cargo.lock? This should fix the dependency, even while cargo publish. At least when I understand rust-lang/cargo#11148 correctly.

@bkchr bkchr closed this as completed Nov 24, 2024
@FabijanC
Copy link
Author

Cargo.lock was ignored in our case. And it seems it will be so until Rust v1.84, which should include this change: rust-lang/cargo#14815

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

No branches or pull requests

2 participants