rust-bitcoin-unsafe-fast/.github/workflows
merge-script 0388930690
Merge rust-bitcoin/rust-bitcoin#3328: Add basic `miri` checks
bd8ad1f5e2 Add basic `miri` checks (Martin Habovstiak)
fb5971cc2b Fix UB in `siphash24` (Martin Habovstiak)

Pull request description:

  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.

  This doesn't try to do anything fancy with maintainer tools or run task for now, since I just want to test the basic idea.

  Closes #3192

ACKs for top commit:
  storopoli:
    ACK bd8ad1f5e2
  tcharding:
    ACK bd8ad1f5e2
  sanket1729:
    ACK bd8ad1f5e2
  apoelstra:
    ACK bd8ad1f5e2 successfully ran local tests; wow, good find!

Tree-SHA512: a0d33c7851d6d6b288ca8cc1a902f187814dd82e3528c6f8169fdc0ba71991b99451276aaba5e3b6cde6029e09158063d65e48a71d1e01ee20302b9f653584ef
2024-09-10 15:21:37 +00:00
..
README.md Updated workflows/README.md to mention new shellcheck job 2024-06-18 11:19:58 +01:00
cargo-semver-checks-version Automated update to Github CI to cargo-semver-checks version-0.35.0 2024-09-07 01:00:20 +00:00
coveralls.yml Revert "ci: gate coverage analysis on whether source code changed" 2024-03-20 14:08:14 +00:00
cron-daily-fuzz.yml fuzz: delete CBOR test 2024-05-24 14:32:19 +00:00
cron-daily-kani.yml ci: rename a couple .yml files to indicate that they're scheduled 2024-02-28 20:47:39 +00:00
cron-semi-weekly-update-nightly.yml CI: Update nightly semi-weekly 2024-05-06 09:17:59 +10:00
cron-weekly-rustfmt.yml ci: rename a couple .yml files to indicate that they're scheduled 2024-02-28 20:47:39 +00:00
cron-weekly-update-cargo-semver-checks.yml ci: fix cron update-cargo-semver-checks 2024-08-24 14:27:21 -03:00
cron-weekly-update-stable.yml ci: pin stable in semver-checks and updates weekly 2024-07-26 09:05:30 -03:00
gh-release.yml CI: add an automated github releases on new tags 2023-09-10 19:21:22 -03:00
manage-pr.yml CI: Enable sync-labels for labeler 2024-04-26 08:49:57 +10:00
miri.yml Add basic `miri` checks 2024-09-08 20:24:00 +02:00
release.yml Bump actions/checkout from 2 to 4 2023-09-09 15:26:36 +00:00
rust.yml Set CRATES mechanically 2024-09-02 09:21:19 +10:00
semver-checks-pr-label.yml Show output of failed semver checks 2024-08-27 20:44:10 +02:00
semver-checks.yml ci: pin cargo-semver-checks version and cron job 2024-07-26 09:06:45 -03:00
shellcheck.yml ci: shellcheck checks 2024-05-11 18:08:53 +00:00
stable-version Automated update to Github CI to rustc stable-1.81.0 2024-09-06 00:51:52 +00:00

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.)

  1. Prepare
  2. Stable - minimal
  3. Stable - recent
  4. Nightly - minimal
  5. Nightly - recent
  6. MSRV - minimal
  7. MSRV - recent
  8. Lint
  9. Docs
  10. Docsrs
  11. Bench
  12. ASAN
  13. WASM
  14. Arch32bit
  15. Cross
  16. Embedded
  17. Kani
  18. Coveralls - run by coveralls.yml
  19. release - run by release.yml
  20. labeler - run by manage-pr.yml
  21. Shellcheck - run by shellcheck.yml