[changelog]
header = """
# Changelog\n
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).\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 | upper_first }}
{% for commit in commits %}
- {{ commit.message | upper_first }}\
{% if commit.body %}
{{ commit.body }}\
{% endif %}\
{% endfor %}
{% endfor %}\n
"""
footer = """
{% for release in releases -%}
{% if release.version -%}
{% if release.previous.version -%}
[{{ release.version | trim_start_matches(pat="v") }}]: \
https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}\
/compare/{{ release.previous.version }}..{{ release.version }}
{% endif -%}
{% else -%}
[unreleased]: https://github.com/{{ remote.github.owner }}/{{ remote.github.repo }}\
/compare/{{ release.previous.version }}..HEAD
{% endif -%}
{% endfor %}
<!-- generated by git-cliff -->
"""
trim = true
[git]
conventional_commits = true
filter_unconventional = true
split_commits = false
commit_parsers = [
{ message = "^chore:", skip = true },
{ message = "^.*: a|Add", group = "Added" },
{ message = "^.*: S|support", group = "Added" },
{ message = "^.*: R|remove", group = "Removed" },
{ message = "^.*: D|delete", group = "Removed" },
{ message = "^test", group = "Fixed" },
{ message = "^f|Fix", group = "Fixed" },
{ message = "^.*: fix", group = "Fixed" },
{ message = "^doc", group = "Documentation" },
{ message = "^.*: C|change(d?)*", group = "Changed" },
{ message = "^.*: U|upgrade(d?)*", group = "Changed" },
]
protect_breaking_commits = false
filter_commits = true
tag_pattern = "v[0-9].*"
skip_tags = "v0.1.0-beta.1"
ignore_tags = ""
topo_order = false
sort_commits = "oldest"