Skip to content

v1.15.3: signed build provenance, owner-relative Homebrew taps, demo links - #19

Merged
BuddhiLW merged 13 commits into
clojurewasm:mainfrom
BuddhiLW:main
Oct 22, 2026
Merged

BuddhiLW merged 13 commits into
clojurewasm:mainfrom
BuddhiLW:main

Conversation

@BuddhiLW

Copy link
Copy Markdown
Contributor

Brings upstream main to v1.15.3 from BuddhiLW/ClojureWasm (gated there in BuddhiLW#69).

  • Release tarballs carry Sigstore build attestations and a SHA256SUMS file.
  • The tap job bumps /homebrew-tap from this repository's own build; this repository now has a deploy key for clojurewasm/homebrew-tap.
  • README links the live Playground and Bookshelf demos at cljw.buddhilw.com.

BuddhiLW and others added 13 commits October 21, 2026 17:55
a3c1212 replaced the keys-then-get walk in print.zig with an entry walk,
so the `countOf(ks) > 0` loop the proof covered no longer exists. The
scheduled sweep on 32125e3 scored 100% (11 killed, 0 survived) but
exited 1 on this one STALE row.
The upstream mirror clojurewasm/ClojureWasm carries this workflow, so
merging #18 there cut its own v1.15.1 build and its tap job tried to
rewrite Formula/cljw.rb with that build's checksums. The formula's urls
name BuddhiLW/ClojureWasm releases, whose artifacts hash differently
(linux cb7ad4a5 here vs 586396f7 upstream), so a successful push would
have broken brew install. It failed instead with a 403: the mirror has
no TAP_DEPLOY_KEY. Guard the job on github.repository; it is skipped,
not failed, elsewhere.
Release workflow: bump the Homebrew tap only from BuddhiLW/ClojureWasm
Each repository now bumps <its owner>/homebrew-tap and points the formula
at its OWN release assets, so BuddhiLW/ClojureWasm keeps buddhilw/tap and
clojurewasm/ClojureWasm drives clojurewasm/tap (deploy key added there).
The two repositories build each tag separately and hash differently; a
formula never pairs one's urls with the other's checksums. Preflight
reports whether TAP_DEPLOY_KEY exists, and a fork without it skips the
job instead of failing.

Each tarball gets a Sigstore build attestation
(actions/attest-build-provenance v4.2.2): `gh attestation verify` proves
it was built by this workflow from a given commit, which a .sha256 next
to the asset cannot. A SHA256SUMS file collects the per-asset sums.

README advertises clojurewasm/tap/cljw and the verify command.
Release: signed build provenance, SHA256SUMS, owner-relative Homebrew taps
README: link the live demos at cljw.buddhilw.com
@BuddhiLW
BuddhiLW merged commit 596ebac into clojurewasm:main Oct 22, 2026
BuddhiLW added a commit that referenced this pull request Oct 23, 2026
… newest tag

clojurewasm/ClojureWasm main CI failed on the PR #19 merge (runs
39701804074, 39701800082): the mirror has no v1.15.2 tag (its release job
died on a homebrew-tap 403 before tagging), and the CI run raced the release
workflow that tags v1.15.3 on that same merge. The newest reachable tag was
v1.15.1, the script skipped only the pending [1.15.3] heading, then refused
[1.15.2].

Every heading between [Unreleased] and the newest tag's heading is now
checked on its own: dated, newer than the newest tag, no newer than
build.zig.zon's version, and untagged. A stray or out-of-range heading still
fails, and so does a missing heading for the newest tag.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant