Skip to content

Commit 1ff9385

Browse files
authored
docs(release): omit empty sections in release notes guidance (#278)
Document that GitHub release notes should only include headings with real content. Update the template comments and the release skill drafting section. Made-with: Cursor
1 parent a0060d0 commit 1ff9385

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

skills/hookdeck-cli-release/SKILL.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,11 +136,13 @@ The user may suggest a tag (e.g. `v2.0.1`). **Always sanity-check it** against w
136136

137137
Use **[references/release-notes-template.md](references/release-notes-template.md)** as a starting skeleton.
138138

139+
**Sections:** Include only headings that have real content — **omit** empty sections (e.g. do not add “Breaking changes” with “None”).
140+
139141
**Patterns observed in this repo:**
140142

141-
- **Large GA (e.g. v2.0.0):** `Summary``Breaking changes / migration``New features` (subsections per area)`Improvements / behavior changes` → optional `Internal`.
143+
- **Large GA (e.g. v2.0.0):** `Summary`, then as needed: `Breaking changes / migration`, `New features` (subsections per area), `Improvements / behavior changes`, `Internal` — skip any block with nothing to say.
142144
- **Feature release (e.g. v1.9.0):** `## Features` with detailed bullets + **Full Changelog** compare link.
143-
- **Patch (e.g. v1.9.1):** `## Fixes`, `## Updates`, PR links with authors + **Full Changelog**.
145+
- **Patch (e.g. v1.9.1):** `## Fixes`, `## Updates`, PR links with authors + **Full Changelog** — omit unused sections.
144146

145147
Always include a **Full Changelog** line:
146148

skills/hookdeck-cli-release/references/release-notes-template.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,29 +2,31 @@
22

33
Copy and fill in for the GitHub release description (e.g. write into the temp file used with `gh release create --notes-file`). Adjust heading levels (`##` vs `###`) to match recent GA style (v2.0.0 used `###` subsections) or smaller patch style (v1.9.x used `##`).
44

5+
**Do not include a section if there is nothing to say** — omit the heading entirely (do not add “Breaking changes” with “None”, empty “Fixes”, etc.). Typical releases only need a subset of the sections below.
6+
57
## Summary
68

79
<!-- 2–4 sentences: who benefits, scope since previous tag (e.g. since `v1.9.1`). -->
810

911
## Breaking changes / migration
1012

11-
<!-- Omit or state "None" for patch releases if accurate. For each item: what changed, why, what users must update (scripts, flags, CI). -->
13+
<!-- Include only when users must change scripts, configs, or habits. For each item: what changed, why, what to update (scripts, flags, CI). Omit this whole section when there are no breaking changes. -->
1214

1315
## New features
1416

15-
<!-- Group by area/command. User-facing language; mention important flags. -->
17+
<!-- Include when shipping user-visible capability. Group by area/command; mention important flags. Omit if nothing applies. -->
1618

1719
## Fixes
1820

19-
<!-- Optional: merge into "Improvements" for tiny releases. -->
21+
<!-- Omit if no fixes, or merge into Improvements for tiny releases. -->
2022

2123
## Improvements / behavior changes
2224

23-
<!-- UX, defaults, performance, reliability visible to users. -->
25+
<!-- UX, defaults, performance, reliability visible to users. Omit if nothing applies. -->
2426

2527
## Internal / reliability / infrastructure
2628

27-
<!-- Optional: refactors, test/CI, dependency bumps with low user-visible impact. -->
29+
<!-- Refactors, test/CI, dependency bumps with low user-visible impact. Omit if nothing worth mentioning. -->
2830

2931
## Contributors (optional)
3032

0 commit comments

Comments
 (0)