MarcoIeni / release-plz

Publish Rust crates from CI with a Release PR.

Home Page:https://release-plz.ieni.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Check MSRV

tversteeg opened this issue · comments

Motivations

Changing code that uses newer versions than the MSRV should also be a breaking change. Ideally the release would also update the MSRV.

  • Would you like to implement this feature? [y/n]

Possibly

Solution

Integrate with the cargo-msrv crate to automatically detect the MSRV version used.

Hi, thanks for opening the issue!

Changing code that uses newer versions than the MSRV should also be a breaking change

I heard different thoughts on this. Do you have any docs that explain this? Is it an established convention in the community?

Actually, this doesn't seem to be the convention, after having done some research on it:

Maybe it would be nice just to update the MSRV file as part of a release?

Maybe it would be nice just to update the MSRV file as part of a release?

Usually I've seen msrv being tested in CI. This means that people update the msrv in the pr when they introduce the change.

But we could also test this in release-plz, so that people don't have to run an additional ci job. Similarly to how we do for cargo-semver-checks.
The con is that release-plz will take more time to run. If it takes too much time, we can make it opt in.

Where should we write the msrv? I guess in this field, right?

If it takes too much time, we can make it opt in.

Making it opt-in sounds like a better idea, I can imagine not many people caring about it, especially people writing applications instead of libraries.

Where should we write the msrv? I guess in this field, right?

Yes, that's the proper field.

Yeah, then I'm fine with this change 👍