[changelog]
header = """
# Kiddo Changelog\n
"""
body = """
{% if version %}\
## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}\
## [unreleased]
{% endif %}\
{% if previous %}\
{% if previous.commit_id %}
[{{ previous.commit_id | truncate(length=7, end="") }}]({{ previous.commit_id }})...\
[{{ commit_id | truncate(length=7, end="") }}]({{ commit_id }})
{% endif %}\
{% endif %}\
{% for group, commits in commits | group_by(attribute="group") %}
### {{ group | upper_first }}
{% for commit in commits %}
- {{ commit.message | upper_first }}\
{% for footer in commit.footers -%}
, {{ footer.token }}{{ footer.separator }}{{ footer.value }}\
{% endfor %}\
{% endfor %}
{% endfor %}\n
"""
trim = true
[git]
conventional_commits = true
filter_unconventional = true
split_commits = false
commit_parsers = [
{ message = "^feat", group = "โจ Features"},
{ message = "^fix", group = "๐ Bug Fixes"},
{ message = "^doc", group = "๐ Documentation"},
{ message = "^perf", group = "โก๏ธ Performance"},
{ message = "^refactor", group = "โป๏ธ Refactor"},
{ message = "^style", group = "๐ Styling"},
{ message = "^test", group = "๐งช Testing"},
{ message = "^chore", group = "๐งน Chore"},
]
protect_breaking_commits = true
tag_pattern = "v[0-9]\\.[0-9]\\.[0-9]"
filter_commits = false
sort_commits = "oldest"