- feature-rich changelog format
- low-config changelog management
- customizable
This project use changen
to maintain its changelog, using github action
- The changelog file - see what the syntax have to offer
- Its commits history
- The release Github workflow - It will create a PR
-
Create the changelog
If you don't have a changelog file yet, you can use
changen new
. -
Validate your changelog syntax
If you already have a changelog file, you can see if its syntax get accepted by running
changen validate
. -
Generate release notes
When you know your changelog is valid, you can use
changen generate
to generate a release-note about the last commit.It can generate release notes
- between two tags/commits
- for a specific commit/tag
- for a milestone
By default, it will generate release notes from the last release in the changelog to HEAD. It will get the list of commits using a
git log
command, and try to match them against remote PRs if it have the necessary infos. -
Make a new release
To make a new release, use
changen release --version 1.0.0
.
The full API reference can be found here (automatically generated).
fix(project_a): Fix a nasty bug <=> commit-type(scope): commit-message
Currently, you can write theses patterns anywhere in the commit message:
(skip changelog)
(ignore changelog)
!changelog
!log
The default map can be seen here. Note than the order will define in witch order the section will appears in the log file.
Use with changen generate --map path/to/map.json
changen generate --file path/to/CHANGELOG.md
-
pom for being an awesome parser. Without this parser, i would have probably drop this project! The parser of the changelog is less than 200 lines!
-
Iced, for its well maintained changelog
-
Gitoxide changelog because its use a similar tool (quit complex and more powerful)