-
Notifications
You must be signed in to change notification settings - Fork 2
45 lines (41 loc) · 1.25 KB
/
rust.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
name: Rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
RUSTFLAGS: "-Dwarnings -Aunknown-lints"
RUSTDOCFLAGS: "-Dwarnings -Aunknown-lints"
jobs:
get-msrv:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set Env
run: grep rust-version Cargo.toml >> $GITHUB_OUTPUT
build:
needs: get-msrv
strategy:
matrix:
channel:
- stable
- beta
- nightly
- ${{ needs.get-msrv.outputs.rust-version }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust Toolchain
run: rustup update ${{ matrix.channel }} && rustup default ${{ matrix.channel }} && rustup component add clippy && cargo install cargo-llvm-cov && cargo install cargo-hack --locked
- name: Build
run: cargo hack --feature-powerset build --verbose
- name: Run tests
run: cargo hack --feature-powerset test --verbose
- name: Coverage
run: cargo hack --feature-powerset llvm-cov test --text --verbose
- name: Build docs
run: cargo hack --feature-powerset doc --verbose
- name: Run clippy
run: cargo hack --feature-powerset clippy --verbose