Introduce BitContainer; Split BitVec impl into many files #169
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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 |