name: Rust CI checks on: push: jobs: lint: name: Run lint checks runs-on: ubuntu-latest strategy: matrix: rust: - stable - 1.36.0 steps: - uses: actions/checkout@v2 - name: Install Rust stable toolchain uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable override: true components: rustfmt, clippy - name: Check Rust formatting uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check - name: Check clippy uses: actions-rs/clippy-check@v1 with: token: ${{ secrets.GITHUB_TOKEN }} args: --all-targets -- -D warnings test: name: Run tests runs-on: ubuntu-latest strategy: matrix: rust: - stable - 1.36.0 steps: - uses: actions/checkout@v2 - uses: actions/cache@v2 with: path: | ~/.cargo/registry ~/.cargo/git target key: ${{ runner.os }}-cargo-test-${{ hashFiles('Cargo.toml') }} - name: Install Rust stable toolchain uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable - name: Run test actix4 run: | cargo test --all-targets --features actix4 cargo test --doc --features actix4 - name: Run test actix3 run: | cargo test --all-targets --features actix3 cargo test --doc --features actix3 - name: Run test actix2 run: | cargo test --all-targets --features actix2 cargo test --doc --features actix2 - name: Run test warp run: | cargo test --all-targets --features warp cargo test --doc --features warp - name: Run test no feature run: | cargo test --all-targets cargo test --doc