Skip to content

Commit 681e7ab

Browse files
authored
Merge pull request #595 from zeenix/msrv-decl-check
Make MSRV explicit & check accidental bump in the CI
2 parents 372a0e6 + 5fda686 commit 681e7ab

File tree

4 files changed

+35
-14
lines changed

4 files changed

+35
-14
lines changed

.github/workflows/build.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,9 @@ jobs:
345345
testcfail:
346346
name: testcfail
347347
runs-on: ubuntu-latest
348+
env:
349+
RUSTFLAGS: -D warnings
350+
MSRV: 1.87.0
348351
defaults:
349352
run:
350353
working-directory: cfail
@@ -374,7 +377,9 @@ jobs:
374377
${{ runner.OS }}-build-
375378
376379
- name: Install Rust
377-
uses: dtolnay/rust-toolchain@stable
380+
uses: dtolnay/rust-toolchain@master
381+
with:
382+
toolchain: ${{ env.MSRV }}
378383

379384
- name: Run cargo
380385
run: cargo run

CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
77

88
## [Unreleased]
99

10+
- Make MSRV of 1.87.0 explicit.
11+
1012
## [v0.9.1] - 2025-08-19
1113

1214
### Added
@@ -701,7 +703,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
701703
- Initial release
702704

703705
[Unreleased]: https://github.com/rust-embedded/heapless/compare/v0.9.1...HEAD
704-
[v0.9.0]: https://github.com/rust-embedded/heapless/compare/v0.9.0...v0.9.1
706+
[v0.9.1]: https://github.com/rust-embedded/heapless/compare/v0.9.0...v0.9.1
705707
[v0.9.0]: https://github.com/rust-embedded/heapless/compare/v0.8.0...v0.9.0
706708
[v0.8.0]: https://github.com/rust-embedded/heapless/compare/v0.7.16...v0.8.0
707709
[v0.7.16]: https://github.com/rust-embedded/heapless/compare/v0.7.15...v0.7.16

Cargo.toml

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
[package]
22
authors = [
3-
"Jorge Aparicio <[email protected]>",
4-
"Per Lindgren <[email protected]>",
5-
"Emil Fresk <[email protected]>",
3+
"Jorge Aparicio <[email protected]>",
4+
"Per Lindgren <[email protected]>",
5+
"Emil Fresk <[email protected]>",
66
]
77
categories = ["data-structures", "no-std"]
88
description = "`static` friendly data structures that don't require dynamic memory allocation"
99
documentation = "https://docs.rs/heapless"
1010
edition = "2021"
11+
rust-version = "1.87"
1112
keywords = ["static", "no-heap"]
1213
license = "MIT OR Apache-2.0"
1314
name = "heapless"
@@ -23,11 +24,19 @@ bytes = ["dep:bytes"]
2324
portable-atomic = ["dep:portable-atomic"]
2425

2526
# Enable polyfilling of atomics via portable-atomic, using critical section for locking
26-
portable-atomic-critical-section = ["dep:portable-atomic", "portable-atomic", "portable-atomic?/critical-section"]
27+
portable-atomic-critical-section = [
28+
"dep:portable-atomic",
29+
"portable-atomic",
30+
"portable-atomic?/critical-section",
31+
]
2732

2833
# Enable polyfilling of atomics via portable-atomic, using disabling interrupts for locking.
2934
# WARNING: this is only sound for single-core bare-metal privileged-mode targets!
30-
portable-atomic-unsafe-assume-single-core = ["dep:portable-atomic", "portable-atomic", "portable-atomic?/unsafe-assume-single-core"]
35+
portable-atomic-unsafe-assume-single-core = [
36+
"dep:portable-atomic",
37+
"portable-atomic",
38+
"portable-atomic?/unsafe-assume-single-core",
39+
]
3140

3241
# implement serde traits.
3342
serde = ["dep:serde"]
@@ -65,13 +74,13 @@ static_assertions = "1.1.0"
6574

6675
[package.metadata.docs.rs]
6776
features = [
68-
"bytes",
69-
"ufmt",
70-
"serde",
71-
"defmt",
72-
"mpmc_large",
73-
"portable-atomic-critical-section",
74-
"alloc",
77+
"bytes",
78+
"ufmt",
79+
"serde",
80+
"defmt",
81+
"mpmc_large",
82+
"portable-atomic-critical-section",
83+
"alloc",
7584
]
7685
# for the pool module
7786
targets = ["i686-unknown-linux-gnu"]

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ Licensed under either of
3232

3333
at your option.
3434

35+
## MSRV Policy
36+
37+
This crate is guaranteed to compile with the latest two stable releases of Rust. For example, if the
38+
latest stable Rust release is 1.70, then this crate is guaranteed to compile with Rust 1.69 and 1.70.
39+
3540
## Contribution
3641

3742
Unless you explicitly state otherwise, any contribution intentionally submitted

0 commit comments

Comments
 (0)