name: Continuous Integration on: pull_request: branches: - main paths: - "**" - "!/*.md" - "!/**.md" concurrency: group: "${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}" cancel-in-progress: true jobs: integrity: name: Integrity Checks on Rust ${{ matrix.toolchain }} runs-on: ubuntu-latest timeout-minutes: 15 strategy: matrix: toolchain: - stable - nightly steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Rust uses: dtolnay/rust-toolchain@master with: toolchain: ${{ matrix.toolchain }} targets: wasm32-unknown-unknown components: clippy, rustfmt - name: Setup Rust Cache uses: Swatinem/rust-cache@v2 - name: Build run: cargo build - name: Format run: cargo fmt --check - name: Clippy run: cargo clippy -- -D warnings