-
Notifications
You must be signed in to change notification settings - Fork 106
Expand file tree
/
Copy path.gitchangelog.rc
More file actions
76 lines (60 loc) · 1.55 KB
/
Copy path.gitchangelog.rc
File metadata and controls
76 lines (60 loc) · 1.55 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# -*- coding: utf-8 -*-
# This file defines the configuration for gitchangelog
# Output engine to use
output_engine = mustache("markdown")
# Don't include merge commits
include_merge = False
# Ignore certain commits
ignore_regexps = [
r'@minor', r'!minor',
r'@cosmetic', r'!cosmetic',
r'@refactor', r'!refactor',
r'@wip', r'!wip',
r'^Merge pull request .*',
r'^Merge branch .*',
r'^\[ci skip\].*',
r'^\[skip ci\].*',
r'^chore\(.*\):.*',
]
# Define sections based on conventional commits
section_regexps = [
('✨ Features', [
r'^feat(\(.*\))?:.*',
]),
('🐛 Bug Fixes', [
r'^fix(\(.*\))?:.*',
]),
('🔧 Maintenance', [
r'^refactor(\(.*\))?:.*',
r'^perf(\(.*\))?:.*',
]),
('📚 Documentation', [
r'^docs(\(.*\))?:.*',
]),
('🧪 Tests', [
r'^test(\(.*\))?:.*',
]),
('🔍 Other', None), # Match all other commits
]
# Define how to display the commit subject
subject_process = (strip | ucfirst | final_dot)
# Define how to format the body
body_process = (lambda text: text)
# Define how to format the tag
tag_filter_regexp = r'^v[0-9]+\.[0-9]+\.[0-9]+$'
# Define the template for the changelog entry
unreleased_version_label = "Unreleased"
# This is the template for the changelog
template = """
# Changelog
All notable changes to this project will be documented in this file.
{{#versions}}
## {{label}}
{{#sections}}
### {{label}}
{{#commits}}
* {{subject}} ([{{short_sha}}]({{url}})) - {{author}}
{{/commits}}
{{/sections}}
{{/versions}}
"""