name: CI on: pull_request: {} push: branches: - develop jobs: test: runs-on: ubuntu-latest strategy: fail-fast: false matrix: rust: ["1.64", stable] steps: - uses: actions/checkout@v3 - uses: dtolnay/rust-toolchain@master with: toolchain: ${{matrix.rust}} - run: cargo build --workspace --all-targets - run: cargo build --workspace --all-targets --no-default-features - run: cargo build --workspace --all-targets --features tls-native - run: cargo build --workspace --all-targets --features tls-rust # runs all tests for all targets, including examples and benchmarks. Only on # stable, since we don't care about tests running on MSRV. - run: cargo test --workspace --all-targets if: matrix.rust == 'stable' # runs all documentation tests separately, since those are not picked up by # `--all-targets`. - run: cargo test --workspace --doc if: matrix.rust == 'stable' rustfmt: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: dtolnay/rust-toolchain@stable with: components: rustfmt - run: cargo fmt --all --check