name: CI
on: [push, pull_request]
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 - uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af with:
profile: minimal
toolchain: stable
- uses: taiki-e/install-action@9e1e5806d4a4822de933115878265be9aaa786d9 with:
tool: cargo-hack
- run: cargo hack build --feature-powerset --no-dev-deps --verbose
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 - uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af with:
profile: minimal
toolchain: stable
- uses: taiki-e/install-action@9e1e5806d4a4822de933115878265be9aaa786d9 with:
tool: cargo-hack
- run: cargo hack test --feature-powerset --verbose
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 - uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af with:
profile: minimal
toolchain: stable
components: clippy
- run: cargo clippy --all-targets --all-features -- -D warnings
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 - uses: actions-rs/toolchain@16499b5e05bf2e26879000db0c1d13f7e13fa3af with:
profile: minimal
toolchain: stable
components: rustfmt
- run: cargo fmt --all -- --check
msrv:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 - uses: taiki-e/install-action@9e1e5806d4a4822de933115878265be9aaa786d9 with:
tool: cargo-msrv
- run: cargo msrv verify