Release Process
padctl releases are driven by annotated v*.*.* tags. The tag version must match
build.zig.zon; the release workflow checks this before building artifacts.
Checklist
-
Update
build.zig.zonto the new version and merge that change tomain. -
Create an annotated tag on the exact
maincommit to release:git fetch origin main --tags git tag -a v0.1.9 origin/main -m "v0.1.9" git push origin v0.1.9 -
Watch the Release workflow. The successful run should include:
- musl tarballs for
x86_64-linux-muslandaarch64-linux-musl - versioned
.debpackages and latest aliases SHA256SUMS.txtverify-release-artifactupdate-aur
The AUR update job copies
contrib/aur/padctl-bin/PKGBUILDinto the AUR checkout before setting the version and hashes, so packaging layout fixes must be made in the repository template first. - musl tarballs for
-
Verify the GitHub release after the workflow completes:
gh release view v0.1.9 --json isDraft,isPrerelease,assets -
If a release upload step runs inside a container, every
gh releasecommand must pass--repo BANANASJIM/padctl. The container checkout may not provide enough git metadata forghto infer the repository. -
Do not rerun an old failed tag workflow after merging release workflow fixes. Move or recreate the annotated tag so the new workflow run executes at the fixed commit.