[changelog]
header = """
---
# Changelog
All notable changes to vtcode will be documented in this file.
"""
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") %}\
\n
### {{ group | upper_first }}
{% for commit in commits %}\
- {{ commit.message | upper_first }} ({% if commit.remote.username %}@{{ commit.remote.username }}{% else %}{{ commit.author.name }}{% endif %})\n
{% endfor %}\
{% endfor %}\n
"""
footer = """
"""
trim = true
postprocessors = []
[git]
conventional_commits = true
filter_unconventional = true
split_commits = false
commit_preprocessors = [
{ pattern = '\((https://github.com/vinhnx/vtcode/pull/\d+)\)', replace = "" },
{ pattern = '\(#\d+\)', replace = "" },
]
commit_parsers = [
{ message = "^feat", group = "Features" },
{ message = "^feat\\(.*\\):", group = "Features" },
{ message = "^fix", group = "Bug Fixes" },
{ message = "^fix\\(.*\\):", group = "Bug Fixes" },
{ message = "^perf", group = "Performance" },
{ message = "^perf\\(.*\\):", group = "Performance" },
{ message = "^refactor", group = "Refactors" },
{ message = "^refactor\\(.*\\):", group = "Refactors" },
{ message = "^security", group = "Security" },
{ message = "^security\\(.*\\):", group = "Security" },
{ message = "^docs", group = "Documentation" },
{ message = "^docs\\(.*\\):", group = "Documentation" },
{ message = "^test", group = "Tests" },
{ message = "^test\\(.*\\):", group = "Tests" },
{ message = "^build", group = "Build" },
{ message = "^build\\(.*\\):", group = "Build" },
{ message = "^ci", group = "CI" },
{ message = "^ci\\(.*\\):", group = "CI" },
{ message = "^deps", group = "Dependencies" },
{ message = "^deps\\(.*\\):", group = "Dependencies" },
{ message = "^chore", group = "Chores", skip = true },
{ message = "^chore\\(.*\\):", group = "Chores", skip = true },
{ message = ".*", group = "Other" },
]
protect_breaking_commits = false
filter_commits = true
tag_pattern = "v[0-9]*"
tag_regex = "(?P<version>v?[0-9]+\\.[0-9]+\\.[0-9]+)"
exclude_patterns = [
"chore\\(release\\):",
"bump version",
"update version",
"version bump",
"release v?\\d+\\.\\d+\\.\\d+",
"chore.*version",
"chore.*release",
"build.*version",
"update.*version.*number",
"bump.*version.*to",
"update homebrew",
"update changelog",
]
sort_commits = "oldest"
remote = "github"
[remote.github]
owner = "vinhnx"
repo = "vtcode"
[gitmoji]
enable = false