name: CI on: workflow_dispatch: push: branches: [ master ] pull_request: branches: [ master ] env: CARGO_TERM_COLOR: always jobs: build: name: ${{ matrix.rust }} runs-on: ubuntu-latest strategy: fail-fast: false matrix: rust: - 1.31.0 - stable - beta - nightly steps: - uses: actions/checkout@v4 - uses: dtolnay/rust-toolchain@master with: toolchain: ${{ matrix.rust }} - name: Use MSRV Cargo.lock run: cp Cargo.lock.msrv Cargo.lock if: matrix.rust == '1.31.0' - name: cargo fmt --all -- --check run: | rustup component add rustfmt-preview cargo fmt --all -- --check if: matrix.rust == 'stable' - run: | cargo build --verbose - run: | cargo test --verbose