# configuration file for git-cliff (0.1.0) [changelog] # changelog header header = "" # template for the changelog body # https://tera.netlify.app/docs/#introduction body = """ {% if version %}\ Release {{ version }} - {{ timestamp | date(format="%Y-%m-%d") }} --------------------------- {% else %}\ Changelog (untagged) --------------------------- {% endif %}\ {% for group, commits in commits | group_by(attribute="group") %} {{ group | lower }}:\ {% for commit in commits %} - {{ commit.id | truncate(length=8, end="") }}: {% if commit.scope %}({{ commit.scope }}) {% endif %}{{ commit.message }}\ {% endfor %} {% endfor %}\n """ # remove the leading and trailing whitespaces from the template trim = true # changelog footer footer = "" [git] # allow only conventional commits # https://www.conventionalcommits.org conventional_commits = true # regex for parsing and grouping commits commit_parsers = [ { message = "^feat", group = "Features"}, { message = "^fix", group = "Bugfixes"}, { message = "^doc", group = "Documentation"}, { message = "^perf", group = "Performance"}, { message = "^change", group = "Changes" }, { message = "^refactor", group = "Refactor"}, { message = "^style", group = "Styling"}, { message = "^test", group = "Testing"}, { message = "^housekeep", group = "Housekeeping"}, { message = "^chore\\(release\\): prepare for", skip = true}, { message = "^chore", group = "Miscellaneous Tasks"}, { body = ".*security", group = "Security"}, ] # filter out the commits that are not matched by commit parsers filter_commits = false # glob pattern for matching git tags tag_pattern = "*[0-9]*" # regex for skipping tags skip_tags = "v0.1.0-beta.1"