rust-bitcoin-unsafe-fast/.github/workflows
Tobin C. Harding e126a24307
Add API script
Add a script to generate API files using `cargo public-api` for the
crates that we are trying to stabalise (the so called 'leaf crates').

- hashes
- io
- primitives
- units

We already ran the script and committed the files last patch. The fact
that this patch does not include any changes to the `api/` directory and
that CI passes is enough to convince us that last patch was valid.

Add a CI job that runs the script and checks there are no changes to
the committed text files thereby proving no API changes are made in a
PR without explicitly modifying the API text files.

Add documentation to `CONTRIBUTING.md` on what is expected of devs.
2024-12-06 15:42:22 +11: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.36.0 2024-10-19 01:04:35 +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-weekly-rustfmt.yml Bump peter-evans/create-pull-request from 6 to 7 2024-09-09 10:05:16 +00:00
cron-weekly-update-cargo-semver-checks.yml Bump peter-evans/create-pull-request from 6 to 7 2024-09-09 10:05:16 +00:00
cron-weekly-update-nightly.yml Re-name cron nightly update jobs 2024-12-02 09:47:11 +11:00
cron-weekly-update-stable.yml Bump peter-evans/create-pull-request from 6 to 7 2024-09-09 10:05:16 +00: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 Add API script 2024-12-06 15:42:22 +11: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.83.0 2024-11-29 00:59:16 +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