Skip to content
This repository has been archived by the owner on Mar 26, 2024. It is now read-only.

Commit

Permalink
Add an MSRV policy to the README
Browse files Browse the repository at this point in the history
This is a bit of a tricky topic, as the Rust ecosystem is waiting on
better Cargo support to make usability better, and there are a lot of
differing opinions and theories on how best to handle an MSRV. Not a
lot of concrete data out there. The Rust compiler itself explicitly only
supports the latest stable version, so any MSRV policy is essentially
how long you're willing to wait for dependents of your library to
upgrade before you adopt new features. Artificially holding this back
might also mean missing out on security fixes, and I'm a big fan of
staying current when possible.

This can always be changed, but I wanted to have something in place to
make sure that it's covered.

See:
- rust-lang/libs-team#72
- time-rs/time#535
  • Loading branch information
elasticdog committed May 17, 2023
1 parent ce13cc0 commit 5f7e500
Showing 1 changed file with 13 additions and 1 deletion.
14 changes: 13 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
# RustOps Blueprint   [![CI Status]][actions]
# RustOps Blueprint   [![CI Status]][actions] [[!MSRV]][rust-version]

[CI Status]:
https://img.shields.io/github/actions/workflow/status/EarthmanMuons/rustops-blueprint/rust.yml?event=merge_group&label=CI&logo=github
[actions]:
https://github.com/EarthmanMuons/rustops-blueprint/actions?query=event%3Amerge_group
[MSRV]: https://img.shields.io/badge/MSRV-1.64-blue
[rust-version]:
https://doc.rust-lang.org/cargo/reference/manifest.html#the-rust-version-field

**A GitHub repository template for a polished Rust development experience.**

Expand All @@ -16,6 +19,15 @@ Generated [Rustdoc][] reference documentation can be found at

[Rustdoc]: https://doc.rust-lang.org/stable/rustdoc/

## Minimum Supported Rust Version (MSRV) Policy

- We follow an "N-2 policy," supporting at least the current stable Rust release
and the two preceding versions.
- Our MSRV only advances when we adopt a feature from a newer Rust version. We
do not increase the MSRV systematically with each new release of Rust.
- MSRV increases are considered regular changes, not breaking changes, in terms
of Semantic Versioning.

## License

RustOps Blueprint is distributed under the terms of both the Apache License
Expand Down

0 comments on commit 5f7e500

Please sign in to comment.