Skip to content

fix(release): generate release notes from the previous final tag - #455

Merged
jackchuma merged 1 commit into
mainfrom
fix/release-notes-start-tag
Oct 16, 2026
Merged

jackchuma merged 1 commit into
mainfrom
fix/release-notes-start-tag

Conversation

@jackchuma

Copy link
Copy Markdown
Collaborator

What changed? Why?

Publish Release now passes --notes-start-tag to gh release create, so the generated notes always start at the previous final release.

Without a start tag, GitHub uses the most recent release tag in the new tag's history. Final tags are cut on releases/v* branches, and any commit made only on that branch keeps the tag out of main. Minor and major release branches are created from main, so they usually can't see the previous final tag. For v8.4.0, GitHub skipped v8.3.0 and generated notes from v8.2.0, which listed about 50 PRs instead of the 8 that were new. v8.1.0, v8.2.1, v8.3.0 and v8.4.0 are all missing from main today, so the next minor release would compare against v8.2.0 too.

The new get_previous_final_tag helper in scripts/release/common.sh returns the highest vX.Y.Z tag below the version being released. RC tags in either format are ignored. If no earlier final tag exists, the workflow omits the flag and GitHub falls back to its default.

Notes to reviewers

The tag being released is excluded on purpose. Publish Release creates the final tag before it creates the draft, so a plain "latest final tag" lookup would return the release's own tag.

A patch on an older line (for example v8.3.1 after v8.4.0 exists) compares against v8.3.0, not v8.4.0.

How has it been tested?

  • Added cases to scripts/release/test-release.sh for RC tags, version ordering (8.10 above 8.9), excluding the version being released, a patch on an older line, and the first release. ./scripts/release/test-release.sh passes.
  • shellcheck scripts/release/*.sh and actionlint .github/workflows/publish-release.yml pass.
  • Run against this repo's tags, the helper maps 8.4.0 to v8.3.0, 8.5.0 to v8.4.0, and 8.3.1 to v8.3.0.

Generated with Toshi

@cb-heimdall

cb-heimdall commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

✅ Heimdall Review Status

Requirement Status More Info
Reviews ✅ 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@jackchuma
jackchuma merged commit eaa7729 into main Oct 16, 2026
7 checks passed
@jackchuma
jackchuma deleted the fix/release-notes-start-tag branch October 16, 2026 20:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants