| name | release-notes |
| description | Generate release notes and prepare the next release |
release-notes
Goal
Generate release notes and prepare the next release.
Behavior
When invoked:
-
Detect current version from:
kotlin/jujubasvg/version.properties (property VERSION)
flutter/jujuba_svg/pubspec.yaml (field version)
-
Get latest Git tag:
git tag --sort=-v:refname | head -1
-
Analyze unreleased changes:
git log <latest-tag>..HEAD --oneline
-
Categorize commits:
| Bump | Patterns |
|---|
| Major | breaking, BREAKING CHANGE |
| Minor | feat |
| Patch | fix, docs, chore, refactor, test |
-
Determine next semantic version based on categorized commits.
-
Update version file (increment in version.properties or pubspec.yaml).
-
Create or update CHANGELOG.md:
## X.Y.Z
### Features
- Added ...
### Fixes
- Fixed ...
### Documentation
- Updated ...
-
Generate a release summary (version, date, highlights).
-
Prompt the user to:
git commit
git tag v<version>
git push && git push --tags
-
Verify publishing metadata:
- Maven Central: check
kotlin/jujubasvg/build.gradle.kts for mavenPublishing block
- pub.dev: check
flutter/jujuba_svg/pubspec.yaml for publish configuration