name: ci on: push: pull_request: concurrency: group: ci-${{ github.ref }} cancel-in-progress: true jobs: checks: name: Rust Checks runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install Rust toolchain uses: dtolnay/rust-toolchain@stable with: components: rustfmt, clippy - name: Cache Rust build uses: Swatinem/rust-cache@v2 - name: Cargo check run: cargo check --workspace --all-targets --locked - name: Cargo fmt run: cargo fmt --all -- --check - name: Cargo clippy run: cargo clippy --workspace --all-targets --locked -- -D warnings - name: Cargo test run: cargo test --workspace --all-targets --locked