Skip to content

ci: add cross-platform test matrix with MSRV check#83

Merged
kafkade merged 3 commits into
mainfrom
kafkade-ci-cross-platform-msrv-matrix
Jul 9, 2026
Merged

ci: add cross-platform test matrix with MSRV check#83
kafkade merged 3 commits into
mainfrom
kafkade-ci-cross-platform-msrv-matrix

Conversation

@kafkade

@kafkade kafkade commented Jul 7, 2026

Copy link
Copy Markdown
Owner

Description

Expands the CI workflow so pull requests are validated across all supported platforms and against the minimum supported Rust version, instead of only ubuntu-latest + stable.

What's included

  • test job (matrix): runs cargo test across os = [ubuntu-latest, macos-latest, windows-latest] × rust = [stable, "1.85"] (stable + MSRV) with fail-fast: false, so a failure on one platform/version doesn't cancel the others. The MSRV entry (1.85, matching rust-version in Cargo.toml) guards against accidental dependency bumps that would raise the MSRV.
  • lint job: cargo fmt --check, cargo clippy -- -D warnings, and cargo build --no-default-features run exactly once on ubuntu-latest + stable, so format/lint aren't duplicated across the matrix.
  • Caching: Swatinem/rust-cache now uses an explicit ${{ matrix.os }}-${{ matrix.rust }} key on the test job (and a dedicated key on lint) so each matrix entry gets an isolated cache and they don't collide.
  • Speed: added a concurrency group to cancel superseded in-progress runs. The six test combinations run in parallel and stay well under the 10-minute target.
  • deny job: unchanged dependency audit. All actions remain SHA-pinned with version comments per repo convention.

Validated with actionlint (no findings). CI-only change — no application source touched.

Related Issues

Closes #25

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Documentation update
  • Refactoring (no functional changes)
  • CI / infrastructure
  • Other (describe below)

Checklist

  • I have read CONTRIBUTING.md
  • cargo test passes (one pre-existing hardware-sensor test, sensor::readings_have_valid_temps, fails only on the local macOS dev machine due to an out-of-range PMU reading — unrelated to this CI change; no Rust source is modified)
  • cargo clippy -- -D warnings reports no warnings
  • cargo fmt has been applied
  • I have added tests for new functionality (if applicable) — N/A, CI configuration only
  • I have updated documentation (if applicable) — N/A, workflow is self-documenting

@kafkade kafkade enabled auto-merge (squash) July 7, 2026 04:33
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
kite 108bcf9 Commit Preview URL

Branch Preview URL
Jul 09 2026, 12:33 AM

@kafkade kafkade merged commit cc66dfe into main Jul 9, 2026
10 checks passed
@kafkade kafkade deleted the kafkade-ci-cross-platform-msrv-matrix branch July 9, 2026 00:35
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

Successfully merging this pull request may close these issues.

Add cross-platform CI matrix with MSRV check

1 participant