Adds the changelog and the check of its convention (MIL-004 task 2, issue #21).
Changes
CHANGELOG.md: the header states the version rules of ADR-0006 and the four groups in their fixed order (Breaking, Added, Changed, Fixed). [Unreleased] holds what the first release 1.0.0 will contain: the sync and publish-wiki scoped workflows, the credential preflight and categorized errors, the reusable quality-checks workflow, the guides and wiki pages, the scripts as files, and the secret change (bare tokens TOKEN_FOR_GITEA, PAT_FOR_GITHUB and TOKEN_FOR_GITEA_WIKI, replacing the JSON CREDENTIALS_FOR_GITHUB).
tools/changelog.py: check verifies the convention (Unreleased first, descending versions, dates, known groups, no empty group; a Breaking entry needs a new major version and a new major version needs a Breaking entry; --version requires an entry for a version) and notes <version> prints the text for the release page. Task 4 of this milestone (the release workflow, #24) can use both.
guides/release-process.md: steps 3 and 6 use the two commands.
Tests (211 pass, 18 new): tests/test_changelog.py covers the parser, each rule, the notes, the command line, and that this repository's own changelog passes.
Not done here
No tag is created and 1.0.0 is not cut: the changelog says plainly that until it is tagged the workflows are delivered from main and are not pinned. Cutting the release is a separate, deliberate step of the release process.
Adds the changelog and the check of its convention (MIL-004 task 2, issue #21).
## Changes
- `CHANGELOG.md`: the header states the version rules of ADR-0006 and the four groups in their fixed order (Breaking, Added, Changed, Fixed). `[Unreleased]` holds what the first release `1.0.0` will contain: the sync and publish-wiki scoped workflows, the credential preflight and categorized errors, the reusable quality-checks workflow, the guides and wiki pages, the scripts as files, and the secret change (bare tokens `TOKEN_FOR_GITEA`, `PAT_FOR_GITHUB` and `TOKEN_FOR_GITEA_WIKI`, replacing the JSON `CREDENTIALS_FOR_GITHUB`).
- `tools/changelog.py`: `check` verifies the convention (Unreleased first, descending versions, dates, known groups, no empty group; a `Breaking` entry needs a new major version and a new major version needs a `Breaking` entry; `--version` requires an entry for a version) and `notes <version>` prints the text for the release page. Task 4 of this milestone (the release workflow, #24) can use both.
- `guides/release-process.md`: steps 3 and 6 use the two commands.
- Tests (211 pass, 18 new): `tests/test_changelog.py` covers the parser, each rule, the notes, the command line, and that this repository's own changelog passes.
## Not done here
No tag is created and `1.0.0` is not cut: the changelog says plainly that until it is tagged the workflows are delivered from `main` and are not pinned. Cutting the release is a separate, deliberate step of the release process.
## Wiki pages changed (rule 8)
None.
Closes #21
CHANGELOG.md holds an [Unreleased] section with what the first release
v1.0.0 will contain, in the groups Breaking, Added, Changed and Fixed.
tools/changelog.py checks the convention of ADR-0006 (Unreleased first,
descending versions, dates, a Breaking entry needs a new major and a new major
needs one) and prints the notes of a release for the release page. The
release process guide uses both.
Task: MIL-004#2
Tirsvad
merged commit 297095bdfb into main2026-10-10 16:51:45 +02:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Adds the changelog and the check of its convention (MIL-004 task 2, issue #21).
Changes
CHANGELOG.md: the header states the version rules of ADR-0006 and the four groups in their fixed order (Breaking, Added, Changed, Fixed).[Unreleased]holds what the first release1.0.0will contain: the sync and publish-wiki scoped workflows, the credential preflight and categorized errors, the reusable quality-checks workflow, the guides and wiki pages, the scripts as files, and the secret change (bare tokensTOKEN_FOR_GITEA,PAT_FOR_GITHUBandTOKEN_FOR_GITEA_WIKI, replacing the JSONCREDENTIALS_FOR_GITHUB).tools/changelog.py:checkverifies the convention (Unreleased first, descending versions, dates, known groups, no empty group; aBreakingentry needs a new major version and a new major version needs aBreakingentry;--versionrequires an entry for a version) andnotes <version>prints the text for the release page. Task 4 of this milestone (the release workflow, #24) can use both.guides/release-process.md: steps 3 and 6 use the two commands.tests/test_changelog.pycovers the parser, each rule, the notes, the command line, and that this repository's own changelog passes.Not done here
No tag is created and
1.0.0is not cut: the changelog says plainly that until it is tagged the workflows are delivered frommainand are not pinned. Cutting the release is a separate, deliberate step of the release process.Wiki pages changed (rule 8)
None.
Closes #21