name: Test
on:
pull_request:
push:
workflow_call:
env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: 1
RUSTFLAGS: '-C debuginfo=0'
jobs:
build:
name: Build [${{ matrix.os }} ${{ matrix.rust }}]
strategy:
fail-fast: false
matrix:
rust: [1.56.0, stable]
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.rust }}
- name: Build
run:
cargo build --lib --tests
clippy:
name: Lint with clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@stable
- run: cargo clippy --lib --bins --tests --examples -- -A unknown_lints -D warnings
cargo-doc:
name: Generate documentation
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: '-A unknown_lints -A renamed_and_removed_lints -D warnings'
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@stable
- run: cargo doc --no-deps