on: push: pull_request: schedule: - cron: '0 0 * * *' name: Continuous integration jobs: check: name: Check runs-on: ubuntu-latest strategy: matrix: rust: - stable - 1.56.0 steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: toolchain: ${{ matrix.rust }} override: true - uses: actions-rs/cargo@v1 with: command: check test: name: Test Suite runs-on: ubuntu-latest strategy: matrix: rust: - stable - nightly steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: toolchain: ${{ matrix.rust }} override: true - uses: Swatinem/rust-cache@v1 - name: Install cargo-nextest uses: baptiste0928/cargo-install@v1 with: crate: cargo-nextest version: 0.9 - uses: actions-rs/cargo@v1 with: command: nextest args: run - uses: actions-rs/cargo@v1 with: command: nextest args: run --no-default-features - uses: actions-rs/cargo@v1 with: command: test args: --doc test-msrv: name: msrv Test Suite runs-on: ubuntu-latest strategy: matrix: rust: - 1.56.0 steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: toolchain: ${{ matrix.rust }} override: true - uses: Swatinem/rust-cache@v1 - uses: actions-rs/cargo@v1 with: command: test - uses: actions-rs/cargo@v1 with: command: test args: --no-default-features fmt: name: Rustfmt runs-on: ubuntu-latest strategy: matrix: rust: - stable - 1.56.0 steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: toolchain: ${{ matrix.rust }} override: true - run: rustup component add rustfmt - uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check clippy: name: Clippy runs-on: ubuntu-latest strategy: matrix: rust: - stable steps: - uses: actions/checkout@v1 - uses: actions-rs/toolchain@v1 with: toolchain: ${{ matrix.rust }} override: true - run: rustup component add clippy - uses: actions-rs/cargo@v1 with: command: clippy args: -- -D warnings