Skip to content

ci(release): unify generated release notes - #20

Merged
tulayha merged 2 commits into
mainfrom
fix/unify-release-notes
Jul 28, 2026
Merged

ci(release): unify generated release notes#20
tulayha merged 2 commits into
mainfrom
fix/unify-release-notes

Conversation

@tulayha

@tulayha tulayha commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • use the existing dependencies and skip-changelog PR labels as changelog-fragment exemptions
  • render prerelease and stable GitHub release bodies from Towncrier
  • keep Semantic Release as the sole version/tag authority and consume fragments only during stable releases
  • align contributor and release guidance with the automated behavior

Why

Towncrier owned CHANGELOG.md while Semantic Release independently generated GitHub release bodies, so the two could diverge. The Dependabot exemption also relied on the workflow trigger actor rather than durable PR metadata.

Validation

  • actionlint
  • bash -n utils/build_package.sh
  • parsed pyproject.toml with tomllib
  • ruff check src tests
  • completed a prerelease-mode package build without consuming fragments
  • completed a stable-mode package build in an isolated worktree
  • verified the rendered release body exactly matches the section inserted into CHANGELOG.md
  • verified stable mode consumes the pending fragment

@tulayha tulayha added the skip-changelog Internal-only change that does not need release notes label Jul 28, 2026
@tulayha
tulayha marked this pull request as ready for review July 28, 2026 12:19
@tulayha
tulayha merged commit 8ca95ae into main Jul 28, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-changelog Internal-only change that does not need release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant