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

RFC: MSRV Policy #1455

Open
akern40 opened this issue Nov 22, 2024 · 2 comments
Open

RFC: MSRV Policy #1455

akern40 opened this issue Nov 22, 2024 · 2 comments

Comments

@akern40
Copy link
Collaborator

akern40 commented Nov 22, 2024

A recent change to url has caused openblas-src's MSRV to bump to 1.67 (when using most recent dependencies). While this doesn't affect ndarray directly, it does affect the clarity and interoperability of ndarray with a major BLAS provider and raises an important question: should ndarray have an MSRV policy and, if yes, what should that policy be?

This question breaks down into three parts:

  • Should ndarray promise a certain MSRV? (This means listing a rust-version in the Cargo.toml and pinning any necessary dependencies in patch versions to ensure that rust-version is maintained)
  • If ndarray does promise an MSRV, what should be the policy for which MSRV is guaranteed? For example, two years (the approximate MSRV right now) vs two versions.
  • When ndarray bumps its MSRV, is that a patch update, or a minor version update?

I would like to solicit feedback on this topic from users of ndarray. If you use ndarray, what is your usual Rust configuration? Are you running on the most recent version, or something older?

MSRV and its association with versioning is a much, much larger conversation. If possible, I would like to keep any conversation to just what ndarray's policy should be; not what the wider ecosystem does.

My personal preference is that ndarray does promise a recent MSRV, and that updates to that MSRV occur only in minor version updates.

@bluss
Copy link
Member

bluss commented Nov 22, 2024

Current docs say 'MSRV: Requires Rust 1.64 or later', which I thought has to be mentioned.

@akern40
Copy link
Collaborator Author

akern40 commented Nov 23, 2024

Absolutely - when I talk about a "policy", I'm just asking about how and when we decide to bump the MSRV. How have you made this decision in the past?

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