Skip to content

Commit 2988347

Browse files
chore(msrv): pin rust-version = "1.85"; add MSRV lane to rust-ci (#76)
Closes #57. Cargo.toml uses `edition = "2024"` which stabilised in Rust 1.85, but no MSRV was recorded. Pin `rust-version = "1.85"` and add a CI matrix lane on that exact toolchain alongside `stable`, so MSRV breakage shows up as a check failure instead of as a downstream user surprise. The check job (clippy + fmt) stays on `stable` only — those tools are allowed to evolve faster than the MSRV gate. Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
1 parent 2456845 commit 2988347

2 files changed

Lines changed: 14 additions & 3 deletions

File tree

.github/workflows/rust-ci.yml

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,28 +42,38 @@ jobs:
4242
run: cargo clippy --all-targets -- -D warnings
4343

4444
test:
45-
name: Cargo test
45+
name: Cargo test (${{ matrix.rust }})
4646
runs-on: ubuntu-latest
4747
needs: check
4848
if: hashFiles('Cargo.toml') != ''
49+
strategy:
50+
fail-fast: false
51+
matrix:
52+
# `1.85` matches Cargo.toml `rust-version` — the MSRV gate.
53+
# `stable` keeps the lane honest against the latest stable.
54+
rust: ['1.85', 'stable']
4955

5056
steps:
5157
- name: Checkout repository
5258
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
5359

5460
- name: Install Rust toolchain
55-
uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
61+
uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # pinned
62+
with:
63+
toolchain: ${{ matrix.rust }}
5664

5765
- name: Cache cargo registry and build
5866
uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2
67+
with:
68+
key: ${{ matrix.rust }}
5969

6070
- name: Run tests
6171
run: cargo test --all-targets
6272

6373
- name: Write summary
6474
if: always()
6575
run: |
66-
echo "## Rust CI Results" >> "$GITHUB_STEP_SUMMARY"
76+
echo "## Rust CI Results (${{ matrix.rust }})" >> "$GITHUB_STEP_SUMMARY"
6777
echo "" >> "$GITHUB_STEP_SUMMARY"
6878
echo "- **cargo check**: passed" >> "$GITHUB_STEP_SUMMARY"
6979
echo "- **cargo test**: completed" >> "$GITHUB_STEP_SUMMARY"

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
name = "verisimiser"
44
version = "0.1.0"
55
edition = "2024"
6+
rust-version = "1.85"
67
authors = ["Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>"]
78
description = "Augment any database with VeriSimDB octad capabilities — drift detection, provenance, temporal versioning, and modality overlays"
89
license-file = "LICENSE"

0 commit comments

Comments
 (0)