A Vec of Bits
at workspace 96 lines 2.6 kB view raw
1name: Rust 2 3on: 4 push: 5 branches: [ master ] 6 pull_request: 7 branches: [ master ] 8 9env: 10 CARGO_TERM_COLOR: always 11 12jobs: 13 build: 14 runs-on: ubuntu-latest 15 steps: 16 - uses: actions/checkout@v5 17 - name: Build 18 run: cargo build --verbose 19 - name: Run tests 20 run: cargo test --verbose 21 - name: Run miniserde tests 22 run: cargo test --features miniserde --verbose 23 - name: Run nanoserde tests 24 run: cargo test --features nanoserde --verbose 25 - name: Run borsh tests 26 run: cargo test --features borsh --verbose 27 28 miri: 29 name: "Miri" 30 runs-on: ubuntu-latest 31 steps: 32 - uses: actions/checkout@v5 33 - name: Install Miri 34 run: | 35 rustup toolchain install nightly --component miri 36 rustup override set nightly 37 cargo miri setup 38 - name: Test with Miri 39 run: MIRIFLAGS=-Zmiri-strict-provenance cargo miri test 40 41 fmt: 42 runs-on: ubuntu-latest 43 steps: 44 - uses: actions/checkout@v5 45 - uses: dtolnay/rust-toolchain@master 46 with: 47 toolchain: stable 48 components: rustfmt 49 - run: cargo fmt --all -- --check 50 51 msrv: 52 name: Rust ${{matrix.rust}} 53 runs-on: ubuntu-latest 54 strategy: 55 fail-fast: false 56 matrix: 57 rust: [1.85.0, 1.86.0] 58 timeout-minutes: 45 59 steps: 60 - uses: actions/checkout@v5 61 - uses: dtolnay/rust-toolchain@master 62 with: 63 toolchain: ${{matrix.rust}} 64 - run: cargo build 65 - run: cargo test 66 - run: cargo test --features serde 67 - run: cargo test --features nanoserde 68 - run: cargo test --features miniserde 69 - run: cargo test --features borsh 70 - run: cargo test --features borsh,serde,nanoserde 71 72 clippy: 73 runs-on: ubuntu-latest 74 steps: 75 - uses: actions/checkout@v5 76 - uses: dtolnay/rust-toolchain@master 77 with: 78 toolchain: stable 79 components: clippy 80 - run: cargo clippy --workspace --tests --examples 81 - run: cargo clippy --workspace --tests --examples --features serde 82 - run: cargo clippy --workspace --tests --examples --features miniserde 83 - run: cargo clippy --workspace --tests --examples --features nanoserde 84 - run: cargo clippy --workspace --tests --examples --features borsh 85 86 docs: 87 runs-on: ubuntu-latest 88 env: 89 RUSTDOCFLAGS: -Dwarnings 90 steps: 91 - uses: actions/checkout@v5 92 - uses: dtolnay/rust-toolchain@master 93 with: 94 toolchain: stable 95 - uses: swatinem/rust-cache@v2 96 - run: cargo doc --workspace --no-deps