Skip to content

Commit ca1f719

Browse files
committed
ci: add MSRV (1.80) and beta channel testing
- MSRV job: Ensures we don't accidentally use Rust features newer than 1.80 - Beta job: Early warning for upcoming breakage (allowed to fail) - Stable remains primary target with full OS matrix This would have caught today's Rust 1.92 lint regression before it hit stable.
1 parent 1811ec0 commit ca1f719

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

.github/workflows/ci.yml

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,26 @@ concurrency:
99
cancel-in-progress: true
1010

1111
jobs:
12+
# MSRV check - ensures we don't accidentally use newer Rust features
13+
test-msrv:
14+
name: MSRV (1.80)
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@v5
18+
19+
- name: Install Rust toolchain (MSRV)
20+
uses: dtolnay/[email protected]
21+
22+
- name: Cache cargo registry
23+
uses: Swatinem/rust-cache@v2
24+
25+
- name: Build (all features)
26+
run: cargo build --all-features
27+
28+
- name: Run tests (all features)
29+
run: cargo test --all-features
30+
31+
# Primary test matrix - stable on all platforms
1232
test:
1333
runs-on: ${{ matrix.os }}
1434
strategy:
@@ -40,6 +60,28 @@ jobs:
4060
- name: Run FFI tests
4161
run: cargo test --features ffi
4262

63+
# Beta channel - early warning for upcoming breakage (allowed to fail)
64+
test-beta:
65+
name: Beta (early warning)
66+
runs-on: ubuntu-latest
67+
continue-on-error: true
68+
steps:
69+
- uses: actions/checkout@v5
70+
71+
- name: Install Rust toolchain (beta)
72+
uses: dtolnay/rust-toolchain@beta
73+
with:
74+
components: clippy
75+
76+
- name: Cache cargo registry
77+
uses: Swatinem/rust-cache@v2
78+
79+
- name: Run clippy
80+
run: cargo clippy --all-features -- -D warnings
81+
82+
- name: Run tests (all features)
83+
run: cargo test --all-features
84+
4385
security:
4486
runs-on: ubuntu-latest
4587
steps:

0 commit comments

Comments
 (0)