Skip to content

fix(ci): add CHANGELOG insertion flag for python-semantic-release v10#116

Merged
abubnalitic-nbl merged 1 commit into
mainfrom
fix/release-changelog
Apr 20, 2026
Merged

fix(ci): add CHANGELOG insertion flag for python-semantic-release v10#116
abubnalitic-nbl merged 1 commit into
mainfrom
fix/release-changelog

Conversation

@abubnalitic-nbl

@abubnalitic-nbl abubnalitic-nbl commented Apr 20, 2026

Copy link
Copy Markdown
Contributor

Summary

The first run of the PR-based release workflow opened #115 with pyproject.toml and __init__.py bumped, but without a CHANGELOG.md entry. Closed that PR; this fixes the root cause.

Root cause

python-semantic-release v10's default changelog mode = "update" inserts new release sections at a <!-- version list --> marker in the target file. Our CHANGELOG.md predates this convention, so the writer silently no-ops when the workflow generates a new version.

Changes

  • CHANGELOG.md — add the <!-- version list --> marker between the title and the first version heading. Existing v1.0.0 / v0.1.0 content is untouched; new release sections are inserted at the marker.
  • pyproject.toml — rename [tool.semantic_release.changelog] to [tool.semantic_release.changelog.default_templates] to silence the v10 deprecation warning. Same option, new section name.

No workflow changes required.

Validation

Reproduced locally against python-semantic-release==10.5.3 by applying these changes and running the same command the workflow uses:

uvx --from 'python-semantic-release==10.5.3' semantic-release version \
  --no-commit --no-push --no-tag --no-vcs-release --skip-build

Result: CHANGELOG.md, pyproject.toml, and init.py are all updated; the v1.1.0 section groups the unreleased commits under Features / Bug Fixes as expected.

Test plan

  • CI passes
  • After merge, re-dispatch the Release PR workflow
  • Verify the new release PR includes the ## v1.1.0 section in CHANGELOG.md
  • Merging that PR creates the v1.1.0 tag and GitHub Release

🤖 Generated with Claude Code

@github-actions

github-actions Bot commented Apr 20, 2026

Copy link
Copy Markdown
Contributor

Vulnerability Scan: Passed

Image: netbox-mcp-server:scan

No vulnerabilities found.

Commit: 28cc52d

python-semantic-release v10's default changelog mode inserts new release
sections at a `<!-- version list -->` marker in the target file. Our
CHANGELOG predates this convention, so the writer silently no-ops when the
release workflow generates a new version.

Changes:
- CHANGELOG.md: add the `<!-- version list -->` marker between the title
  and the v1.0.0 heading; existing history untouched.
- pyproject.toml: move changelog config to
  `[tool.semantic_release.changelog.default_templates]` to silence the v10
  deprecation warning (same option, new section name).

No workflow changes required.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@abubnalitic-nbl abubnalitic-nbl merged commit 6543edf into main Apr 20, 2026
14 checks passed
@abubnalitic-nbl abubnalitic-nbl deleted the fix/release-changelog branch April 20, 2026 20:07
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.

2 participants