mafw.devtools.release.changelog

Changelog generation and parsing utilities for MAFw releases.

This module contains the business logic for generating the project changelog and extracting version-specific change sections from it.

Module Attributes

CHANGELOG_FILE

Path to the changelog file that is regenerated for each release.

RELEASE_SECTION_HEADERS

Release note section headers used in the markdown template.

mafw.devtools.release.changelog._classify_changelog_subsection(subsection_heading: str) str | None[source]

Map a changelog subsection heading to a release-note category key.

Parameters:

subsection_heading (str) – Raw level-3 heading from changelog.

Returns:

Category key, or None if the heading is not mappable.

Return type:

str | None

mafw.devtools.release.changelog.CHANGELOG_FILE = PosixPath('CHANGELOG.md')

Path to the changelog file that is regenerated for each release.

mafw.devtools.release.changelog.RELEASE_SECTION_HEADERS = {'bug_fixes': '## 🐛 Bug Fixes', 'deprecated': '## ⚠️ Deprecated', 'new_features': '## 🚀 New Features', 'other_changes': '## ️*️⃣    Other Changes', 'refactorings': '## ♻️ Refactorings', 'removed': '## 🗑️ Removals', 'security': '## 🔒 Security'}

Release note section headers used in the markdown template.