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

Clarify MSRV policy #431

Open
chris-ha458 opened this issue Sep 18, 2023 · 2 comments
Open

Clarify MSRV policy #431

chris-ha458 opened this issue Sep 18, 2023 · 2 comments

Comments

@chris-ha458
Copy link
Contributor

chris-ha458 commented Sep 18, 2023

In a recent PR #429 @philpax mentions a MSRV constraints.

I cannot find any documentation regarding the current MSRV and related policy.

A search on the code reveals these details :

# TEMPORARY: This was introduced in Rust 1.70, but our MSRV is below this.

(This is from a previous version of this repo and I am unable to find the corresponding current code)

rust-version = "1.65"

#375

in the current Cargo.toml :https://github.com/rustformers/llm/blob/main/Cargo.toml#L42C18
rust-toolchain-version = "1.67.1"
is this the same as setting MSRV to 1.67?

So I assume current msrv is 1.65 or 1.67? but I hope this is clarified in the relevant README.md, Cargo.toml etc

@philpax
Copy link
Collaborator

philpax commented Sep 19, 2023

Hi there!

The MSRV is 1.65.0; this is specified in the README and the CI, which builds with 1.65.0. However, I'll admit that this is not the most obvious and it should be present in the workspace's Cargo.toml, as well.

in the current Cargo.toml :https://github.com/rustformers/llm/blob/main/Cargo.toml#L42C18 rust-toolchain-version = "1.67.1" is this the same as setting MSRV to 1.67?

That's just for cargo dist, which is separate to the MSRV used for everything else. I think we can keep that as-is or update it to ensure our CLI is being built with the latest optimisations.

Where else would you like the MSRV to be specified?

@chris-ha458
Copy link
Contributor Author

Oh I assume this line
This project depends on Rust v1.65.0 or above and a modern C toolchain.
was meant to communicate that 1.65 is the MSRV

My opinion is that following https://rust-lang.github.io/rfcs/2495-min-rust-version.html would be the best.
One caveat is that while the rfc mentionsrust field the actually merged pr seems to be rust-version
In otherwords Cargo.toml should have the following line
rust-version = 1.65

Also, I think a MSRV policy would help both users and contributors understand when and how MSRV changes will be handled.

README.md is fine, or a separate CONTRIBUTING.md could be used as well.

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