-
Release v0.2.0 Stable
released this
2026-06-24 16:55:53 +02:00 | 1644 commits to main since this releaseFixed
-
runs_onis now a required workflow_call input on all 4 reusable workflows (_release-prep.yml/_release-draft.yml/_release-publish.yml/_manifest-check.yml). v0.1.0 hard-codedruns-on: docker, which isn't a valid label in most Forgejo runner configurations — including the one this toolkit was developed against — so the reusables would never schedule. Consumers MUST now specifyruns_on: <label>matching a runner label that exists in their Forgejo config. BREAKING for v0.1.0 consumers (no consumers existed at v0.1.0 release time, so practical blast radius is zero); updatewith:blocks to includeruns_on:when pinning to@v0.2.0. See docs/integration.md. -
Defensive newline normalization in
fragments.sh::categorize_fragments. Hard-wrapped fragment bullets (where authors wrap at ~70 chars instead of writing single-line bullets per docs/conventions.md) get collapsed to single-line bullets BEFORE the CHANGELOG.md / PR body / release body sees them. State machine preserves blank-line paragraph separators, code fences (including indented fences inside bullets), and column-0 unit boundaries. The convention indocs/conventions.mdis now defensive rather than advisory — authors who follow it still produce cleaner sources, authors who slip get correct output anyway.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
-
Release v0.1.0 Stable
released this
2026-06-24 15:31:24 +02:00 | 1651 commits to main since this releaseFirst release.
Added
- The first release of release-toolkit — a shared, Forgejo-native release pipeline you reference instead of copy-pasting release machinery into every repo. It cuts releases, transitions your CHANGELOG, and runs a CI check that catches version-number drift. Consumers reference
frankenbit/release-toolkit/.forgejo/workflows/_*.yml@v0.1.0to adopt the full release flow — with human-approval gates at each stage — without copy-pasting the machinery. See docs/integration.md for the 4-step adoption guide and docs/conventions.md for the conventional-commits +changelog.d/fragment formats. - Two ways to write your CHANGELOG, mixable: conventional commits (
feat:/fix:/feat!:/ etc.) read from git log, and hand-writtenchangelog.d/<id>.<kind>.mdfragment files. Use either or both; the toolkit merges them so a section heading never appears twice. See ADR-0002 for the both-mechanisms reasoning. - Multi-stage release flow with human-approval gates at each stage: workflow_dispatch → release-prep PR → Forgejo draft release → operator clicks Publish →
release:publishedevent → deploy. Four reusable Forgejo Actions workflows (_release-prep.yml+_release-draft.yml+_release-publish.yml+_manifest-check.yml) implement the four gates. See ADR-0003 for the design reasoning. - Built-in manifest-vs-tag CI check via
_manifest-check.yml— runs on every PR and catches the usual release-prep mistakes: version numbers out of sync across files, a missing[Unreleased]heading, or a manifest left behind the latest tag. The "manifest >= tag, not strict equality" disposition (seescripts/manifest-check.sh --help) prevents false-positives on every legitimate release-prep PR. - Dry-run + operator preview:
--dry-runskips remote mutations (no git push, no Forgejo PR creation) but DOES perform local CHANGELOG transitioning + version_file bumps + fragment deletion, so you can preview exactly what a release will do — the full git diff and the API payload — before anything runs. See docs/operations.md for the operator-preview disposition.
The toolkit ships as bash scripts plus 4 reusable Forgejo Actions workflows; 179 unit + integration tests cover the substrate, shellcheck-clean throughout.
Fixed
changelog_transitionnow merges sections by kind so a section heading never appears twice in a new release section when both the[Unreleased]content and the fragments contribute the same kind.
Internal
- Extracted the version-section extraction logic into a reusable library helper for use by both
release-prep.shanddraft-release.sh.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- The first release of release-toolkit — a shared, Forgejo-native release pipeline you reference instead of copy-pasting release machinery into every repo. It cuts releases, transitions your CHANGELOG, and runs a CI check that catches version-number drift. Consumers reference