tool: add changelog_gen.sh to automatically generate changelog

This commit is contained in:
Gabor Kiss-Vamosi
2021-11-04 17:07:49 +01:00
parent d6341f05a9
commit 6d95521076
3 changed files with 44 additions and 0 deletions

1
scripts/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
CHANGELOG_LAST.md

View File

@@ -0,0 +1,28 @@
{{#each releases}}
## [{{title}}]({{href}}) {{niceDate}}
{{#commit-list commits heading='### Breaking Changes' message='BREAKING CHANGE:'}}
- :warning: {{subject}} [`{{shorthash}}`]({{href}})
{{/commit-list}}
{{#commit-list commits heading='### New Features' message='^feat' exclude='BREAKING CHANGE:'}}
- {{subject}} [`{{shorthash}}`]({{href}})
{{/commit-list}}
{{#commit-list commits heading='### Performance' message='^perf' exclude='BREAKING CHANGE:'}}
- {{subject}} [`{{shorthash}}`]({{href}})
{{/commit-list}}
{{#commit-list commits heading='### Fixes' message='^fix' exclude='(^fix conflict|^fix warning|BREAKING CHANGE:)'}}
- {{subject}} [`{{shorthash}}`]({{href}})
{{/commit-list}}
{{#commit-list commits heading='### Docs' message='^docs'}}
- {{subject}} [`{{shorthash}}`]({{href}})
{{/commit-list}}
{{#commit-list commits heading='### Others' exclude='(^fix|^feat|^perf|^docs)'}}
- {{subject}} [`{{shorthash}}`]({{href}})
{{/commit-list}}
{{/each}}

15
scripts/changelog_gen.sh Executable file
View File

@@ -0,0 +1,15 @@
# Generate CHANGELOG_LAST.md from changes since the last version tag. (vx.y.z-dev tags are ignored)
# CHANGELOG_LAST.md can be edited manually if required and manually added to docs/CHANGELOG.md
#
# Requirements:
# npm install -g auto-changelog
#
# Usage:
# changelog-gen <next-version>
#
# Example: if the latest verision is v5.6.7 the followings can be used for bugfix, minor or major versions:
# changelog-gen v5.6.8
# changelog-gen v5.7.0
# changelog-gen v6.0.0
auto-changelog -t changelog-template.hbs -l false --latest-version $1 --unreleased-only --tag-pattern ^v[0-9]+.[0-9]+.[0-9]+$ -o CHANGELOG_LAST.md