We have a bit of `unsafe` code in the crates which should really be checked with `miri`. Thus this adds a basic CI check that automatically determines which crates need `miri` checking and checks them. It also makes sure to enable all target features so that SIMD code can be checked as well. |
||
---|---|---|
.. | ||
README.md | ||
cargo-semver-checks-version | ||
coveralls.yml | ||
cron-daily-fuzz.yml | ||
cron-daily-kani.yml | ||
cron-semi-weekly-update-nightly.yml | ||
cron-weekly-rustfmt.yml | ||
cron-weekly-update-cargo-semver-checks.yml | ||
cron-weekly-update-stable.yml | ||
gh-release.yml | ||
manage-pr.yml | ||
miri.yml | ||
release.yml | ||
rust.yml | ||
semver-checks-pr-label.yml | ||
semver-checks.yml | ||
shellcheck.yml | ||
stable-version |
README.md
rust-bitcoin workflow notes
We are attempting to run max 20 parallel jobs using GitHub actions (usage limit for free tier).
ref: https://docs.github.com/en/actions/learn-github-actions/usage-limits-billing-and-administration
The minimal/recent lock files are handled by CI (rust.yml
).
Jobs
Run from rust.yml unless stated otherwise. Unfortunately we are now exceeding the 20 job target. (Prepare is quick and must be run first anyway.)
Prepare
Stable - minimal
Stable - recent
Nightly - minimal
Nightly - recent
MSRV - minimal
MSRV - recent
Lint
Docs
Docsrs
Bench
ASAN
WASM
Arch32bit
Cross
Embedded
Kani
Coveralls
- run bycoveralls.yml
release
- run byrelease.yml
labeler
- run bymanage-pr.yml
Shellcheck
- run byshellcheck.yml