name: CI
on:
push:
branches: ["**"]
paths-ignore: ["README.md"]
pull_request:
branches: ["**"]
paths-ignore: ["README.md"]
jobs:
test:
name: Check test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- run: cargo test
rustfmt:
name: Check fmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- run: cargo fmt --all -- --check
docsrs:
name: Check docs-rs build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- run: cargo doc --all-features --no-deps
env:
RUSTDOCFLAGS: "--cfg docsrs -D warnings"
msrv:
name: Check everything compiles with MSRV
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- run: cargo +nightly install cargo-msrv --no-default-features
- run: cargo +nightly msrv --version
- run: cargo +nightly msrv verify --all-features
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
components: clippy
- run: cargo clippy --all-features -- -D warnings