|
8 | 8 |
|
9 | 9 | jobs: |
10 | 10 | build: |
11 | | - name: Build and test |
| 11 | + name: MSRV |
12 | 12 | strategy: |
13 | 13 | matrix: |
14 | 14 | os: ['ubuntu-latest', 'macos-latest'] |
15 | 15 | runs-on: ${{ matrix.os }} |
16 | 16 | steps: |
17 | | - - uses: actions/checkout@v4 |
| 17 | + - uses: actions/checkout@v5 |
| 18 | + - uses: dtolnay/rust-toolchain@1.79.0 |
| 19 | + with: |
| 20 | + components: rustfmt, clippy |
| 21 | + - name: Cache cargo registry |
| 22 | + uses: actions/cache@v4 |
| 23 | + with: |
| 24 | + path: ~/.cargo/registry |
| 25 | + key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} |
18 | 26 | - name: Build |
19 | 27 | run: cargo build --verbose |
20 | 28 | env: |
21 | 29 | RUSTFLAGS: -D warnings |
22 | | - - name: Run tests |
| 30 | + - name: Clippy |
| 31 | + run: cargo clippy --all --tests |
| 32 | + env: |
| 33 | + RUSTFLAGS: -D warnings |
| 34 | + - name: Test |
| 35 | + run: cargo test --all --verbose |
| 36 | + - name: Formatting |
| 37 | + run: cargo fmt --all -- --check |
| 38 | + - name: Docs |
| 39 | + run: cargo doc --workspace --no-deps |
| 40 | + env: |
| 41 | + RUSTFLAGS: -D warnings |
| 42 | + |
| 43 | + build-serde: |
| 44 | + name: Serde Build |
| 45 | + strategy: |
| 46 | + matrix: |
| 47 | + os: ['ubuntu-latest', 'macos-latest'] |
| 48 | + runs-on: ${{ matrix.os }} |
| 49 | + steps: |
| 50 | + - uses: actions/checkout@v5 |
| 51 | + - uses: dtolnay/rust-toolchain@1.81.0 |
| 52 | + - name: Build |
| 53 | + run: cargo build --verbose --features serialize |
| 54 | + env: |
| 55 | + RUSTFLAGS: -D warnings |
| 56 | + - name: Test |
23 | 57 | run: cargo test --all --verbose --features serialize,arbitrary |
24 | | - no-std: |
25 | | - name: no-std build and test |
| 58 | + |
| 59 | + build-bincode: |
| 60 | + name: Bincode Build |
26 | 61 | strategy: |
27 | 62 | matrix: |
28 | 63 | os: ['ubuntu-latest', 'macos-latest'] |
29 | 64 | runs-on: ${{ matrix.os }} |
30 | 65 | steps: |
31 | | - - uses: actions/checkout@v4 |
| 66 | + - uses: actions/checkout@v5 |
| 67 | + - uses: dtolnay/rust-toolchain@1.85.1 |
32 | 68 | - name: Build |
33 | | - run: cargo build --verbose --no-default-features |
| 69 | + run: cargo build --verbose --features serialize |
34 | 70 | env: |
35 | 71 | RUSTFLAGS: -D warnings |
36 | | - - name: Run tests |
37 | | - run: cargo test --all --verbose --no-default-features |
| 72 | + - name: Test |
| 73 | + run: cargo test --all --verbose --features bincode,arbitrary |
38 | 74 |
|
39 | | - rustfmt_and_clippy: |
40 | | - name: Check rustfmt style && run clippy |
41 | | - runs-on: ubuntu-latest |
| 75 | + no-std: |
| 76 | + name: no-std |
| 77 | + strategy: |
| 78 | + matrix: |
| 79 | + os: ['ubuntu-latest', 'macos-latest'] |
| 80 | + runs-on: ${{ matrix.os }} |
42 | 81 | steps: |
43 | | - - uses: actions/checkout@v4 |
44 | | - - uses: actions-rs/toolchain@v1 |
45 | | - with: |
46 | | - toolchain: stable |
47 | | - profile: minimal |
48 | | - components: clippy, rustfmt |
49 | | - override: true |
50 | | - - name: Cache cargo registry |
51 | | - uses: actions/cache@v4 |
52 | | - with: |
53 | | - path: ~/.cargo/registry |
54 | | - key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }} |
55 | | - - name: Run clippy |
56 | | - uses: actions-rs/cargo@v1 |
57 | | - with: |
58 | | - command: clippy |
59 | | - args: --all --tests --features serialize,arbitrary |
| 82 | + - uses: actions/checkout@v5 |
| 83 | + - uses: dtolnay/rust-toolchain@1.79.0 |
| 84 | + - name: Build |
| 85 | + run: cargo build --verbose --no-default-features |
60 | 86 | env: |
61 | 87 | RUSTFLAGS: -D warnings |
62 | | - - name: Check formating |
63 | | - uses: actions-rs/cargo@v1 |
64 | | - with: |
65 | | - command: fmt |
66 | | - args: --all -- --check |
| 88 | + - name: Test |
| 89 | + run: cargo test --all --verbose --no-default-features |
0 commit comments