Clean up documentation #721
Workflow file for this run
This file contains 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: CI | |
on: | |
pull_request: {} | |
push: | |
branches: | |
- main | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
needs: each_package | |
strategy: | |
fail-fast: false | |
matrix: | |
rust: ['1.76', stable] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{matrix.rust}} | |
- run: cargo build --workspace --exclude tools --exclude musli-tests | |
if: matrix.rust != 'stable' | |
- run: cargo build --workspace --exclude no-std-examples --all-targets | |
if: matrix.rust == 'stable' | |
- run: cargo test --workspace --exclude no-std-examples --all-targets --features test | |
if: matrix.rust == 'stable' | |
- run: cargo test --workspace --exclude no-std-examples --doc | |
if: matrix.rust == 'stable' | |
no_std: | |
runs-on: windows-latest | |
needs: each_package | |
strategy: | |
fail-fast: false | |
matrix: | |
example: ['json'] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- run: cargo build | |
- run: cargo +nightly run -p no-std-examples --example no-std-${{matrix.example}} | |
fuzz: | |
needs: [test, each_package] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo run --release -p tests --features test --bin fuzz | |
- run: cargo run --release -p tests --features test --bin fuzz -- --random | |
miri: | |
needs: [test, each_package] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: miri | |
- run: cargo miri test --workspace --exclude no-std-examples --features test | |
- run: cargo miri run -p tests --features test --bin fuzz | |
- run: cargo miri run -p tests --features test --bin fuzz -- --random | |
each_package: | |
needs: [rustfmt, clippy] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
package: [musli, musli-allocator, musli-common, musli-storage, musli-descriptive, musli-wire, musli-json, musli-value] | |
env: | |
RUSTFLAGS: -D warnings | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
- run: cargo build -p ${{matrix.package}} --no-default-features | |
- run: cargo build -p ${{matrix.package}} --no-default-features --features alloc | |
- run: cargo build -p ${{matrix.package}} --no-default-features --features std | |
- run: cargo build -p ${{matrix.package}} --no-default-features --features simdutf8 | |
if: matrix.package == 'musli-storage' || matrix.package == 'musli-wire' || matrix.package == 'musli-descriptive' || matrix.package == 'musli-json' | |
- run: cargo build -p ${{matrix.package}} --no-default-features --features parse-full | |
if: matrix.package == 'musli-json' | |
clippy: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@1.76 | |
with: | |
components: clippy | |
- run: cargo clippy --workspace --exclude no-std-examples --all-targets --features test -- -D warnings | |
rustfmt: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
with: | |
components: rustfmt | |
- run: cargo fmt --check --all | |
docs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- uses: Swatinem/rust-cache@v2 | |
- run: cargo doc --lib --no-deps --all-features --document-private-items | |
env: | |
RUSTFLAGS: --cfg doc_cfg | |
RUSTDOCFLAGS: --cfg doc_cfg -Dwarnings |