release 0.1006.1 #42
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, workflow_dispatch ] | |
jobs: | |
rustfmt: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@stable | |
with: | |
components: clippy, rustfmt | |
- run: cargo clippy --all --all-targets --features full-test-suite | |
- run: cargo clippy --all --all-targets --features full-test-suite --no-default-features | |
- run: cargo clippy --all --all-targets --no-default-features | |
- run: cargo fmt --all --check | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
toolchain: | |
- stable | |
- "1.65" | |
os: | |
- ubuntu-latest | |
# - macos-latest | |
# - windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: install toolchain (${{ matrix.toolchain }}) | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: ${{ matrix.toolchain }} | |
- uses: Swatinem/rust-cache@v2 | |
- name: msrv pinning | |
run: if [[ "stable" != "${{ matrix.toolchain }}" ]]; then ./downgrade-for-msrv.sh ; fi | |
- name: test | |
run: cargo test --workspace --all-targets --features full-test-suite | |
- name: test no-default-features | |
run: cargo test --workspace --all-targets --features full-test-suite --no-default-features | |
- name: test minimal features | |
run: cargo test --workspace --all-targets --no-default-features | |
- name: test doc | |
run: cargo test --workspace --doc --features full-test-suite | |
- name: test doc no-default-features | |
run: cargo test --workspace --doc --features full-test-suite --no-default-features | |
- name: test doc minimal features | |
run: cargo test --workspace --doc --no-default-features | |
kani: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Verify with Kani | |
uses: model-checking/kani-github-action@v1 | |
with: | |
enable-propproof: true | |
kani-version: "0.45.0" | |
args: | | |
--tests -p bilrost-types --default-unwind 3 \ | |
--harness "tests::check_timestamp_roundtrip_via_system_time" \ | |
--harness "tests::check_duration_roundtrip" \ | |
--harness "tests::check_duration_roundtrip_nanos" | |
# --default-unwind N roughly corresponds to how much effort | |
# Kani will spend trying to prove correctness of the | |
# program. Higher the number, more programs can be proven | |
# correct. However, Kani will require more time and memory. If | |
# Kani fails with "Failed Checks: unwinding assertion," this | |
# number may need to be raised for Kani to succeed. | |
no-std: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: dtolnay/rust-toolchain@nightly | |
- uses: Swatinem/rust-cache@v2 | |
- name: install cargo-no-std-check | |
uses: baptiste0928/cargo-install@v2 | |
with: | |
crate: cargo-no-std-check | |
- name: bilrost cargo-no-std-check | |
run: cargo no-std-check --manifest-path Cargo.toml --features full-test-suite --no-default-features | |
- name: bilrost-derive cargo-no-std-check | |
run: cargo no-std-check --manifest-path bilrost-derive/Cargo.toml --no-default-features | |
- name: bilrost-types cargo-no-std-check | |
run: cargo no-std-check --manifest-path bilrost-types/Cargo.toml --no-default-features |