52 lines
1.3 KiB
YAML
Raw Normal View History

name: Continuous integration
2023-12-28 14:16:37 +01:00
on: [push, pull_request, merge_group]
2022-11-22 20:17:51 +01:00
2023-04-19 17:51:33 +02:00
env:
RUSTFLAGS: "-Dwarnings"
2023-05-20 10:48:25 +02:00
RUSTDOCFLAGS: "-Dwarnings"
2023-04-19 17:51:33 +02:00
2022-11-22 20:17:51 +01:00
jobs:
2023-05-03 10:42:27 +02:00
tests:
name: Tests
2024-03-04 17:46:57 +01:00
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
2022-11-22 20:17:51 +01:00
steps:
- uses: actions/checkout@v4
2022-11-22 20:17:51 +01:00
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
2023-03-29 19:49:27 +02:00
- run: cargo test --workspace --no-fail-fast
2023-05-03 10:42:27 +02:00
checks:
2023-05-20 10:48:25 +02:00
name: Check clippy, formatting, and documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
2023-05-03 10:42:27 +02:00
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
2023-11-27 10:18:48 +00:00
- run: cargo clippy --workspace --all-targets --all-features
2023-05-20 10:48:25 +02:00
- run: cargo fmt --check --all
- run: cargo doc --workspace --no-deps
2023-05-03 10:42:27 +02:00
min-version:
name: Check mininum Rust version
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
2024-01-29 14:28:56 +01:00
- uses: dtolnay/rust-toolchain@1.74.0
2023-05-03 10:42:27 +02:00
- uses: Swatinem/rust-cache@v2
- run: cargo check --workspace
2023-12-05 10:26:58 -08:00
fuzz:
name: Check fuzzers
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly-2023-09-13
- uses: Swatinem/rust-cache@v2
- run: cargo install cargo-fuzz
- run: cd tests/fuzz && cargo fuzz build --dev