[changelog]
header = """
# Changelog\n
"""
body = """
{% if version %}\
## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}\
## [unreleased]
{% endif %}\
{% for group, commits in commits | group_by(attribute="group") %}
### {{ group | striptags | trim | upper_first }}
{% for commit in commits %}
- {% if commit.scope %}*({{ commit.scope }})* {% endif %}\
{% if commit.breaking %}[**breaking**] {% endif %}\
{{ commit.message | upper_first }}\
{% endfor %}
{% endfor %}\n
"""
trim = true
postprocessors = [
]
[git]
conventional_commits = true
filter_unconventional = false
split_commits = false
commit_preprocessors = [
]
commit_parsers = [
{ message = "feat", group = "<!-- 0 -->๐ Features" },
{ message = "fix", group = "<!-- 1 -->๐ Bug Fixes" },
{ message = "doc", group = "<!-- 3 -->๐ Documentation" },
{ message = "perf", group = "<!-- 4 -->โก Performance" },
{ message = "refactor", group = "<!-- 2 -->๐ Refactor" },
{ message = "style", group = "<!-- 5 -->๐จ Styling" },
{ message = "test", group = "<!-- 6 -->๐งช Testing" },
{ message = "chore\\(release\\): prepare for", skip = true },
{ message = "chore\\(deps.*\\)", skip = true },
{ message = "chore\\(pr\\)", skip = true },
{ message = "chore\\(pull\\)", skip = true },
{ message = "chore|ci", group = "<!-- 7 -->โ๏ธ Miscellaneous Tasks" },
{ body = ".*security", group = "<!-- 8 -->๐ก๏ธ Security" },
{ message = "revert", group = "<!-- 9 -->โ๏ธ Revert" },
{ message = ".*", group = "<!-- 10 -->๐ผ Other" },
]
filter_commits = false
topo_order = false
sort_commits = "oldest"