Disable all debug assertions unless the debug feature is enabled #102
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: [push, pull_request] | |
jobs: | |
test: | |
name: Test | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
include: | |
- os: ubuntu-latest | |
rust: stable | |
- os: ubuntu-latest | |
rust: beta | |
- os: ubuntu-latest | |
rust: nightly | |
- os: macos-latest | |
rust: stable | |
- os: windows-latest | |
rust: stable | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust ( | |
run: rustup update ${{ matrix.rust }} && rustup default ${{ matrix.rust }} | |
shell: bash | |
- run: cargo test | |
- run: cargo test --features debug | |
- run: cargo test --features global | |
- run: cargo test --release | |
- run: cargo test --features debug --release | |
- run: RUSTFLAGS='--cfg test_lots' cargo test --release | |
shell: bash | |
- run: RUSTFLAGS='--cfg test_lots' cargo test --release --features debug | |
shell: bash | |
rustfmt: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust | |
run: rustup update stable && rustup default stable && rustup component add rustfmt | |
- run: cargo fmt -- --check | |
wasm: | |
name: WebAssembly | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust | |
run: rustup update stable && rustup default stable && rustup target add wasm32-unknown-unknown | |
- run: cargo build --target wasm32-unknown-unknown | |
- run: cargo build --target wasm32-unknown-unknown --release | |
external-platform: | |
name: external-platform | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust | |
run: rustup update stable && rustup default stable && rustup target add x86_64-fortanix-unknown-sgx | |
- run: cargo build --target x86_64-fortanix-unknown-sgx | |
fuzz: | |
name: Build Fuzzers | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Rust | |
run: rustup update nightly && rustup default nightly | |
- run: cargo install cargo-fuzz | |
- run: cargo fuzz build --dev | |
miri: | |
name: Miri | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install Miri | |
run: | | |
rustup toolchain install nightly --component miri | |
rustup override set nightly | |
cargo miri setup | |
- name: Test with Miri Stack Borrows | |
run: cargo miri test | |
- name: Test with Miri Tree Borrows | |
run: cargo miri test | |
env: | |
MIRIFLAGS: -Zmiri-tree-borrows |