Release notes per ticket
Per release gaan er veel issues door Spexso. De technische CHANGELOG (Conventional Commits, commit-and-tag-version) is volledig maar niet voor de business. Met release-note-fragmenten schrijft Spexso per afgewerkte issue één of twee zinnen voor de lezer, en bundelt die bij de release.
1. Aanzetten
In .spexso/config.json:
json
"releaseNotes": { "language": "nl" }Zonder language schrijft Spexso Engels. Toon en woordkeuze leg je vast in .spexso/rules/release-notes.local.md (optioneel).
2. Tijdens het werk
/spexso-finish schrijft vóór de MR release-notes/unreleased/{id}.md:
markdown
---
issue: 42
category: new
audience: end-user
---
Managers keuren verlofaanvragen van hun hele team in één stap goed.- category:
new,improved,fixedofconfig— afgeleid van hettype::-label;configals de spec rollen, instellingen of deploy-stappen noemt. - audience:
end-user,key-userofoperator. - Het fragment zit in de MR: je ziet en verbetert het bij de review. Eén bestand per issue, dus geen conflicten tussen MR's of in de merge train.
- Ook in de marathon en de factory: er is niets interactiefs aan.
Geen note voor een issue? Zet het label skip-release-note. Een type::tech-debt- of type::spike-issue krijgt nooit een fragment.
3. Bij de release
bash
npx spexso release-notes # versie uit package.json
npx spexso release-notes 2.4.0 --publish # en op de GitLab-release van tag v2.4.0
npx spexso release-notes 2.4.0 --publish --tag rel-2.4.0- Schrijft
release-notes/2.4.0.md, gegroepeerd: Nieuw, Verbeterd, Opgelost, Configuratie-impact. - Verplaatst de fragmenten naar
release-notes/2.4.0/en commit (docs(release-notes): 2.4.0); pushen doe je zelf, bijvoorbeeld samen met de release-commit. --publishzet de tekst op de GitLab-release van de tag, en maakt die release aan als ze nog niet bestaat. De tag moet al bestaan: draai het nanpm run releaseen de push van de tag.- De fragmenten moeten gecommit zijn; een los of gewijzigd fragment stopt het commando voor het iets schrijft.
- Een versie verzamel je één keer: bestaat
release-notes/2.4.0.mdal, dan stopt het commando.
De technische CHANGELOG van commit-and-tag-version blijft; de release notes zijn de laag voor mensen erbovenop.