Skip to content

Introduce BitContainer; Split BitVec impl into many files #169

Introduce BitContainer; Split BitVec impl into many files

Introduce BitContainer; Split BitVec impl into many files #169

Workflow file for this run

name: Rust
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Build
run: cargo build --verbose
- name: Build with serde
run: cargo build --features serde --verbose
- name: Build with miniserde
run: cargo build --features miniserde --verbose
- name: Build with borsh
run: cargo build --features borsh --verbose
- name: Run tests
run: cargo test --verbose
- name: Run miniserde tests
run: cargo test --features miniserde --verbose
- name: Run borsh tests
run: cargo test --features borsh --verbose
- name: Run smallvec tests
run: cargo test --features smallvec --verbose
- name: Run smallvec and serde tests
run: cargo test --features smallvec,serde --verbose
miri:
name: "Miri"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Install Miri
run: |
rustup toolchain install nightly --component miri
rustup override set nightly
cargo miri setup
- name: Test with Miri
run: MIRIFLAGS=-Zmiri-strict-provenance cargo miri test
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
components: rustfmt
- run: cargo fmt --all -- --check
msrv:
name: Rust ${{matrix.rust}}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
rust: [1.85.0, 1.86.0]
timeout-minutes: 45
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{matrix.rust}}
- run: cargo build
- run: cargo build --features serde
- run: cargo build --features serde,smallvec
- run: cargo build --features serde --no-default-features
- run: cargo build --features serde,smallvec --no-default-features
- run: cargo build --features miniserde
- run: cargo build --features borsh
- run: cargo build --features borsh,serde
- run: cargo build --features borsh,serde,miniserde
- run: cargo build --features borsh,serde,miniserde --no-default-features
- run: cargo build --features borsh,serde,miniserde,smallvec --no-default-features
- run: cargo test
- run: cargo test --features serde
- run: cargo test --features serde,smallvec
- run: cargo test --features borsh,serde,miniserde
- run: cargo test --features borsh,serde,miniserde,smallvec
- run: cargo test --features borsh,serde,miniserde --no-default-features
- run: cargo test --features borsh,serde,miniserde,smallvec --no-default-features
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
components: clippy
- run: cargo clippy --workspace --tests --examples
- run: cargo clippy --workspace --tests --examples --features serde
- run: cargo clippy --workspace --tests --examples --features miniserde
- run: cargo clippy --workspace --tests --examples --features borsh
- run: cargo clippy --workspace --tests --examples --features smallvec
docs:
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: -Dwarnings
steps:
- uses: actions/checkout@v5
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- uses: swatinem/rust-cache@v2
- run: cargo doc --workspace --no-deps