1+ # git-cliff ~ configuration file
2+ # https://git-cliff.org/docs/configuration
3+
4+ [changelog ]
5+ header = """
6+ # Terraform Provider MSO - Changelog\n
7+ All notable changes to this project will be documented in this file.\n
8+ """
9+ # template for the changelog body
10+ # https://keats.github.io/tera/docs/#introduction
11+ # TODO find a nicer way to remove the [something] tags from the start of commits.
12+ body = """
13+ {% if version %}\
14+ ## {{ version | trim_start_matches(pat="v") }} ({{ timestamp | date(format="%B %d, %Y") }})
15+ {% else %}\
16+ ## [unreleased]
17+ {% endif %}\
18+ {% for group, commits in commits | group_by(attribute="group") %}
19+ {{ group | striptags | trim | upper_first }}:
20+ {% for commit in commits -%}
21+ - {{ commit.message | trim
22+ | trim_start_matches(pat="[bugfix]")
23+ | trim_start_matches(pat="[bug_fix]")
24+ | trim_start_matches(pat="[bugfixes]")
25+ | trim_start_matches(pat="[minor_change]")
26+ | trim_start_matches(pat="[minor_changes]")
27+ | trim_start_matches(pat="[major_change]")
28+ | trim_start_matches(pat="[major_changes]")
29+ | trim | capitalize }}
30+ {% endfor -%}
31+ {% endfor %}\n
32+ """
33+ footer = """
34+ """
35+ trim = true
36+ postprocessors = [
37+ { pattern = ' .*' , replace_command = ' typos --write-changes -' }
38+ ]
39+
40+ [git ]
41+ conventional_commits = false
42+ filter_unconventional = false
43+ split_commits = false
44+ commit_preprocessors = []
45+ commit_parsers = [
46+ { message = " ^.[I|i]gnore" , skip = true },
47+ { message = " ^Bump" , skip = true }, # Ignore Dependabot version bumps
48+ { message = " ^Merge.branch" , skip = true }, # Ignore merge commits
49+ { message = " ^.[M|m]ajor" , group = " <!-- 0 -->BREAKING CHANGES" },
50+ { message = " [D|d]eprecat" , group = " <!-- 1 -->DEPRECATIONS" },
51+ { message = " ^.[M|m]inor" , group = " <!-- 2 -->IMPROVEMENTS" },
52+ { message = " ^.[B|b]ug" , group = " <!-- 3 -->BUG FIXES" },
53+ # Not skipped so version bumps are registered.
54+ # However, not grouped so they don't show up in the changelog.
55+ { message = " .*[MAJOR|MINOR|PATCH].*version change" },
56+ { message = " .*" , group = " <!-- 4 -->OTHER" },
57+ ]
58+ protect_breaking_commits = false
59+ filter_commits = true
60+ topo_order = false
61+ sort_commits = " oldest"
62+
63+ [bump ]
64+ features_always_bump_minor = true
65+ breaking_always_bump_major = true
66+ custom_major_increment_regex = " major"
67+ custom_minor_increment_regex = " minor"
0 commit comments