strategy:
matrix:
rust:
- - version: 1.67.0 # STABLE
+ - version: stable
clippy: true
- version: 1.57.0 # MSRV
features:
- --no-default-features
- --all-features
- - --features=default
steps:
- name: checkout
uses: actions/checkout@v2
- - name: Generate cache key
- run: echo "${{ matrix.rust.version }} ${{ matrix.features }}" | tee .cache_key
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ matrix.rust.version }}
override: true
- components: clippy
profile: minimal
- name: Rust Cache
uses: Swatinem/rust-cache@v2.2.1
- name: Build
run: cargo build ${{ matrix.features }}
- - name: Clippy
- if: ${{ matrix.rust.clippy }}
- run: cargo clippy --all-targets ${{ matrix.features }} -- -D warnings
- name: Test
run: cargo test ${{ matrix.features }}
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
- toolchain: "1.65.0"
+ toolchain: stable
override: true
profile: minimal
target: "wasm32-unknown-unknown"
- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
- toolchain: "1.65.0"
+ toolchain: stable
override: true
profile: minimal
components: rustfmt
- name: Check fmt
run: cargo fmt --all -- --config format_code_in_doc_comments=true --check
+
+ clippy_check:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v1
+ - uses: actions-rs/toolchain@v1
+ with:
+ # we pin clippy instead of using "stable" so that our CI doesn't break
+ # at each new cargo release
+ toolchain: "1.67.0"
+ components: clippy
+ override: true
+ - name: Rust Cache
+ uses: Swatinem/rust-cache@v2.2.1
+ - uses: actions-rs/clippy-check@v1
+ with:
+ token: ${{ secrets.GITHUB_TOKEN }}
+ args: --all-features --all-targets -- -D warnings