cliff.toml 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. # configuration file for git-cliff (0.1.0)
  2. [changelog]
  3. # changelog header
  4. header = """
  5. # Changelog
  6. All notable changes to this project will be documented in this file.\n
  7. """
  8. # template for the changelog body
  9. # https://tera.netlify.app/docs/#introduction
  10. body = """
  11. {% if version %}\
  12. ## [{{ version | trim_start_matches(pat="v") }}](https://github.com/sqlc-dev/sqlc/releases/tag/{{ version }})
  13. {% else %}\
  14. ## [unreleased]
  15. {% endif %}\
  16. Released {{ timestamp | date(format="%Y-%m-%d") }}
  17. {% for group, commits in commits | group_by(attribute="group") %}
  18. ### {{ group | upper_first }}
  19. {% for commit in commits %}
  20. - {%if commit.scope %}({{commit.scope}}) {% endif %}{{ commit.message | upper_first }}\
  21. {% endfor %}
  22. {% endfor %}\n
  23. """
  24. # remove the leading and trailing whitespaces from the template
  25. trim = true
  26. # changelog footer
  27. footer = """
  28. <!-- generated by git-cliff -->
  29. """
  30. [git]
  31. # allow only conventional commits
  32. # https://www.conventionalcommits.org
  33. conventional_commits = true
  34. # regex for parsing and grouping commits
  35. commit_parsers = [
  36. { message = "^feat", group = "Features"},
  37. { message = "^fix", group = "Bug Fixes"},
  38. { message = "^doc", group = "Documentation"},
  39. { message = "^perf", group = "Performance"},
  40. { message = "^refactor", group = "Refactor"},
  41. { message = "^style", group = "Styling"},
  42. { message = "^test", group = "Testing"},
  43. { message = "^chore\\(release\\): prepare for", skip = true},
  44. { message = "^chore", group = "Miscellaneous Tasks"},
  45. { body = ".*security", group = "Security"},
  46. ]
  47. # filter out the commits that are not matched by commit parsers
  48. filter_commits = false
  49. # glob pattern for matching git tags
  50. tag_pattern = "v[0-9]*"
  51. # regex for skipping tags
  52. skip_tags = "v*beta"