commit e223f447739e0c4cf75f3ca9d55f67def65c42a8
parent d44a2393f26e695f4c62f27808f6f1e5d7c85586
Author: mtmn <miro@haravara.org>
Date: Thu, 7 May 2026 19:24:21 +0200
ci: add git-cliff config
Diffstat:
2 files changed, 47 insertions(+), 1 deletion(-)
diff --git a/.gitignore b/.gitignore
@@ -1 +1,2 @@
-.zig-cache
+/.zig-cache
+/zig-out
diff --git a/cliff.toml b/cliff.toml
@@ -0,0 +1,45 @@
+[changelog]
+header = "# Changelog\n\n"
+body = """
+{% if version -%}
+## [{{ version | trim_start_matches(pat="v") }}]{% if previous.version %} - {{ timestamp | date(format="%Y-%m-%d") }}{% endif %}
+
+{% else -%}
+## [Unreleased]
+
+{% endif -%}
+{% for group, commits in commits | group_by(attribute="group") -%}
+### {{ group }}
+
+{% for commit in commits -%}
+- {% if commit.breaking %}**breaking:** {% endif -%}
+{% if commit.scope %}**{{ commit.scope }}:** {% endif -%}
+{{ commit.message | upper_first }} \
+([`{{ commit.id | truncate(length=7, end="") }}`](https://git.sr.ht/~mtmn/hakuna/commit/{{ commit.id }}))
+{% endfor %}
+{% endfor %}
+"""
+footer = ""
+trim = true
+
+[git]
+conventional_commits = true
+filter_unconventional = true
+split_commits = false
+commit_parsers = [
+ { message = "^feat", group = "Features" },
+ { message = "^fix", group = "Bug Fixes" },
+ { message = "^docs", group = "Documentation" },
+ { message = "^test", group = "Testing" },
+ { message = "^chore", group = "Housekeeping" },
+ { message = "^chore\\(deps\\)", group = "Dependencies" },
+ { message = "^ci", skip = true },
+]
+protect_breaking_commits = true
+filter_commits = true
+tag_pattern = "v[0-9].*"
+topo_order = false
+sort_commits = "oldest"
+
+[bump]
+initial_tag = "v0.1.0"