fix(ci): generate release notes from commits since previous tag #46

Merged
David merged 1 commit from fix/release-notes-since-prev-tag into main 2026-05-31 20:01:37 +02:00
Owner

Summary

The create-release workflow built the release body from git log between the previous tag and HEAD, but resolved the previous tag with git describe --tags --abbrev=0 $"($tag)^". The tag being released does not exist yet when the job runs (the workflow itself creates it later via the Forgejo API), so the describe failed, the else branch ran, and git log --oneline with no range emitted the entire commit history. Every release therefore listed all commits ever made instead of just those since the previous release.

Fix

Resolve the previous tag from HEAD^ instead of the not-yet-created $"($tag)^", so the changelog spans only <prev_tag>..HEAD. The first-release path (no prior tag) still falls through to the full git log.

This matches the fix already shipped in sibling repos (da-info, da-os, eform, explorer-bookmarks, help-dashboard, icanhazrust, link-card, auto-buyer). The canonical template in the governance repo is tracked separately (GOV-1).

## Summary The `create-release` workflow built the release body from `git log` between the previous tag and `HEAD`, but resolved the previous tag with `git describe --tags --abbrev=0 $"($tag)^"`. The tag being released does not exist yet when the job runs (the workflow itself creates it later via the Forgejo API), so the `describe` failed, the `else` branch ran, and `git log --oneline` with no range emitted the entire commit history. Every release therefore listed all commits ever made instead of just those since the previous release. ## Fix Resolve the previous tag from `HEAD^` instead of the not-yet-created `$"($tag)^"`, so the changelog spans only `<prev_tag>..HEAD`. The first-release path (no prior tag) still falls through to the full `git log`. This matches the fix already shipped in sibling repos (da-info, da-os, eform, explorer-bookmarks, help-dashboard, icanhazrust, link-card, auto-buyer). The canonical template in the governance repo is tracked separately (GOV-1).
fix(ci): generate release notes from commits since previous tag
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 4m22s
Create release / Create release from merged PR (pull_request) Has been skipped
ab307bffe9
The create-release workflow resolved the previous tag with git describe --tags --abbrev=0 $"($tag)^", but the tag being released does not exist yet when the job runs (the workflow itself creates it later via the Forgejo API). The describe therefore failed, the else branch ran, and git log --oneline with no range emitted the entire history, so every release listed all commits ever made instead of just those since the previous release. Resolve the previous tag from HEAD^ instead so the changelog spans only <prev_tag>..HEAD; the first-release path with no prior tag still falls through to the full log.
David merged commit 8e5524fb96 into main 2026-05-31 20:01:37 +02:00
David deleted branch fix/release-notes-since-prev-tag 2026-05-31 20:01:37 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
pandoras-box/monkey!46
No description provided.