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

Stable MSRV policy #638

Closed
nicholasbishop opened this issue Jan 14, 2023 · 2 comments · Fixed by #688
Closed

Stable MSRV policy #638

nicholasbishop opened this issue Jan 14, 2023 · 2 comments · Fixed by #688

Comments

@nicholasbishop
Copy link
Member

We're getting pretty close to being able to compile uefi-rs on the stable channel. 🎉

I believe Rust 1.68 will have everything we need; that release is expected on March 9, 2023. I propose the following steps once the stable release occurs:

  1. If we've accumulated significant changes since the previous release, go ahead and do another release as the final release that supports a 3-month old nightly.
  2. Drop our current nightly MSRV policy and switch to a new policy based on stable releases (more on this below).
  3. Merge in the two remaining PRs needed for the library to work on stable.
  4. Do another release. (This will be the first release that works on stable, but it will still be a 0.x release of uefi-rs since (IMO) we're not ready yet to promise there won't be breaking API changes.)

As to what the new MSRV policy should be, there is not yet much consensus in the ecosystem for us to use as guidance. See rust-lang/libs-team#72 for one interesting discussion containing a lot of viewpoints. Obviously if we support stable 1.68 then our initial policy will have to be just be N-0 since earlier stable releases don't work. We could then expand that policy to be a little more conservative like N-1 (support current and previous stable releases). I imagine at most we might go for N-2, I don't think we have much reason to go earlier than that for now.

@phip1611
Copy link
Member

Do another release. (This will be the first release that works on stable, but it will still be a 0.x release of uefi-rs since (IMO) we're not ready yet to promise there won't be breaking API changes.

Yes, I'm fine with that. No need for v1.0.0

I think N-2 is fine, as the Rust ecosystem is mature enough that we do not rely on bleeding edge functionality that much.

@nicholasbishop
Copy link
Member Author

Following up on this:

  1. If we've accumulated significant changes since the previous release, go ahead and do another release as the final release that supports a 3-month old nightly.

We don't have that many accumulated changes, so I don't think we need to bother with another release prior to switching to stable. I'll do one right after we merge the changes to allow stable, which should be very soon since 1.68 is scheduled for tomorrow.

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 a pull request may close this issue.

2 participants