ci: GitHub Actions workflow + drop test-fuzz-long
Eight parallel jobs on push/PR: - test × 3 (default / no-default / all-features) via nextest + doc - clippy × 3 feature permutations, -D warnings - fmt - doc (all-features, -D warnings on rustdoc) - deny (cargo-deny action) - miri (nightly, lib + vectors under default + no-default) - fuzz (nightly, 60 s smoke on every target) - mutants × 2 feature configs (same equivalence exclusions as local) Swatinem/rust-cache on every cargo job; taiki-e/install-action for nextest / cargo-fuzz / cargo-mutants. Uploads mutants.out on failure. Drops test-fuzz-long from the justfile — 60 s per target in CI every push plus the local proptest 1M-case suite already covers this.
This commit is contained in:
2 files changed
+161
-10
No files matched your search
@@ -48,16 +48,6 @@ test-fuzz:
|
||||
cd fuzz && cargo +nightly fuzz run cobs_decoder_multi_frame -- -max_total_time=60
|
||||
cd fuzz && cargo +nightly fuzz run cobs_chunk_invariant -- -max_total_time=60
|
||||
|
||||
# long fuzz run: 10 minutes per target. Use for CI cron / pre-release.
|
||||
test-fuzz-long:
|
||||
cd fuzz && cargo +nightly fuzz run parse_command -- -max_total_time=600
|
||||
cd fuzz && cargo +nightly fuzz run parse_radio_config -- -max_total_time=600
|
||||
cd fuzz && cargo +nightly fuzz run cobs_decoder_feed -- -max_total_time=600
|
||||
cd fuzz && cargo +nightly fuzz run cobs_roundtrip -- -max_total_time=600
|
||||
cd fuzz && cargo +nightly fuzz run command_roundtrip -- -max_total_time=600
|
||||
cd fuzz && cargo +nightly fuzz run cobs_decoder_multi_frame -- -max_total_time=600
|
||||
cd fuzz && cargo +nightly fuzz run cobs_chunk_invariant -- -max_total_time=600
|
||||
|
||||
# run tests under miri (catches UB, requires nightly + miri component)
|
||||
# The proptest suite is skipped — its file-persistence layer calls getcwd
|
||||
# which miri does not support. Vectors and unit tests run clean.
|
||||
|
||||
Reference in new issue
Block a user