• v0.1.0 1dd132018f

    quartermaster released this 2026-06-24 15:31:24 +02:00 | 1503 commits to main since this release

    First 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.0 to 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-written changelog.d/<id>.<kind>.md fragment 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:published event → 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 (see scripts/manifest-check.sh --help) prevents false-positives on every legitimate release-prep PR.
    • Dry-run + operator preview: --dry-run skips 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_transition now 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.sh and draft-release.sh.
    Downloads