mirror of
https://github.com/bertptrs/tracing-mutex.git
synced 2025-12-25 12:40:31 +01:00
71 lines
1.7 KiB
YAML
71 lines
1.7 KiB
YAML
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- staging
|
|
- trying
|
|
pull_request:
|
|
|
|
name: Continuous integration
|
|
|
|
jobs:
|
|
tests:
|
|
name: Rust project
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
rust:
|
|
- "1.74" # Current minimum for experimental features
|
|
- stable
|
|
- beta
|
|
- nightly
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: dtolnay/rust-toolchain@v1
|
|
with:
|
|
toolchain: ${{ matrix.rust }}
|
|
components: rustfmt, clippy
|
|
|
|
# Make sure we test with recent deps
|
|
- run: cargo update
|
|
# Note: some crates broke BC with 1.74 so we use the locked deps
|
|
if: "${{ matrix.rust != '1.74' }}"
|
|
- run: cargo build --all-features --all-targets
|
|
- run: cargo test --all-features
|
|
- run: cargo fmt --all -- --check
|
|
# Note: Rust 1.74 doesn't understand edition 2024 formatting so no point
|
|
if: "${{ matrix.rust != '1.74' }}"
|
|
- run: cargo clippy --all-features --all-targets -- -D warnings
|
|
|
|
msrv:
|
|
name: MSRV
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: dtolnay/rust-toolchain@v1
|
|
with:
|
|
toolchain: "1.70"
|
|
|
|
# Test everything except experimental features.
|
|
- run: cargo test --features backtraces,lock_api,parking_lot
|
|
|
|
docs:
|
|
name: Documentation build
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: dtolnay/rust-toolchain@v1
|
|
with:
|
|
toolchain: nightly
|
|
|
|
- name: Build documentation
|
|
env:
|
|
# Build the docs like docs.rs builds it
|
|
RUSTDOCFLAGS: --cfg docsrs
|
|
run: cargo doc --all-features
|