Files
yellowjacket/CHANGELOG.md
t 8d5d8af297
CI / check (push) Skipped
CI / e2e (push) Skipped
ci(release): keep the changelog out of a protected branch
main is protected (enable_push: false, empty whitelist), so
@semantic-release/git's commit-back is rejected by the pre-receive
hook -- and it would be rejected *after* the tag was pushed, leaving a
tagged release the run then reports as failed. Found by trying to push
this branch to main.

Whitelisting the CI user was the alternative and is declined: it
weakens a protection someone set deliberately and lets a bot push to
main without the checks every human PR has to pass.

So the release page is the changelog. The changelog plugin now writes a
gitignored .release-notes.md, which exists only to carry the notes into
gitea-release.sh without interpolating them into a shell command, and
CHANGELOG.md is a signpost -- a file claiming to be a changelog while
silently never updating is worse than no file.

Tags are not protected, so the tag push is unaffected.
2026-08-17 19:46:48 -04:00

903 B

Changelog

The changelog is the releases page:

https://git.ljones.me/yonlu/yellowjacket/releases

Every release there is generated from the Conventional Commits it contains, by .gitea/workflows/release.yml on merge to main. Each one carries its notes as its body, grouped by change type, with a link to the commit behind every line.

This file is not generated and is not a copy of that. main is a protected branch, so nothing pushes a changelog commit back to it — and a file that claimed to be a changelog while silently never updating would be worse than no file at all. make release-dry prints what the next merge would release.

History before v0.0.1 is in git log. The versions before it were cut by hand and are not on the releases page; the entries this file used to hold were generated against a GitHub remote this project no longer has, and every link in them was dead.