name: CI

on:
  push:

jobs:
  clippy:
    runs-on: amd64-bookworm
    steps:
      - uses: actions/checkout@v5
      - name: Run clippy
        continue-on-error: true
        run: cargo clippy --all -- -D warnings

  fmt:
    runs-on: amd64-bookworm
    steps:
      - uses: actions/checkout@v5
      - name: Run rustfmt
        continue-on-error: true
        run: cargo fmt --all -- --check

  test:
    runs-on: amd64-bookworm
    steps:
      - uses: actions/checkout@v5
      - name: Run tests
        run: cargo test --all

  cargo-deny:
    runs-on: amd64-bookworm
    steps:
      - uses: actions/checkout@v5
      - run: cargo deny --workspace --all-features check
