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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
# =============================================================================
# Release Regent — repository dotfile (Level 5 of 5 in the hierarchy)
# =============================================================================
# This file lives at the root of the repository as `.release-regent.toml`.
#
# All settings shown are optional and match the built-in defaults unless
# noted otherwise. Remove or comment out any section you do not need to
# override.
#
# Full reference: https://github.com/pvandervelde/release_regent/blob/master/docs/configuration-reference.md
# =============================================================================
# ─────────────────────────────────────────────────────────────────────────────
# Core settings
# ─────────────────────────────────────────────────────────────────────────────
[]
# Prefix prepended to version numbers in tags and PR titles.
= "v"
[]
# The default (main) branch of the repository.
= "master"
# ─────────────────────────────────────────────────────────────────────────────
# Versioning
# ─────────────────────────────────────────────────────────────────────────────
[]
# How to calculate the next version.
# Options: "conventional" (parse conventional commits) | "external" (custom command)
= "conventional"
# Allow contributors to override the calculated bump via a PR comment
# (e.g. /override-bump minor).
= true
# Bot accounts that open dependency-update PRs — skip projected-version comments
# and post-merge refresh for these authors.
= ["dependabot[bot]", "renovate[bot]"]
# ─────────────────────────────────────────────────────────────────────────────
# Release pull request
# ─────────────────────────────────────────────────────────────────────────────
[]
# Template for the release PR title.
# Supported placeholders: ${version} (e.g. "1.2.3"), ${version_tag} (e.g. "v1.2.3").
= "chore(release): prepare version ${version}"
# Template for the release PR body.
# Available variables: ${version}, ${version_tag}, ${changelog}, ${commit_count}, ${date}
= """
## Release ${version_tag}
### Changes
${changelog}
### Release Information
- **Version**: ${version}
- **Commits**: ${commit_count} commits since last release
- **Generated**: ${date}
### Checklist
- [ ] Review changelog for accuracy
- [ ] Verify version bump is appropriate
- [ ] Check that all features are documented
"""
# Create the release PR as a draft.
= false
# Automatically detect and update well-known manifest files
# (Cargo.toml, package.json, pyproject.toml, composer.json).
= true
# Explicit list of manifest files to update on each release.
= [
{ path = "Cargo.toml", format = "toml", version_key = "package.version" },
]
# ─────────────────────────────────────────────────────────────────────────────
# GitHub releases
# ─────────────────────────────────────────────────────────────────────────────
# Release Regent creates the Git tag and GitHub release when the release PR
# is merged. The publish.yml workflow then fires on `release: published` to
# push the crate to crates.io.
[]
= false
= false
= true
# ─────────────────────────────────────────────────────────────────────────────
# Changelog
# ─────────────────────────────────────────────────────────────────────────────
[]
# Rendering strategy: "internal" (default) | "git_cliff"
# Use "git_cliff" to delegate to the bundled git-cliff-core Tera renderer.
= "internal"
# Include commit author names in each entry.
= true
# Include short commit SHAs in each entry.
= true
# Hyperlink commits and pull requests where detectable.
= true
# Section heading template — {title} is replaced with the commit type.
= "### {title}\n\n{entries}\n"
# Per-commit line template — {description} and {sha} are replaced at runtime.
= "- {description} [{sha}]"
# Remote URL for link generation (leave blank to auto-detect from git remote).
# remote_url = "https://github.com/pvandervelde/release_regent"
# ─────────────────────────────────────────────────────────────────────────────
# Error handling / retries
# ─────────────────────────────────────────────────────────────────────────────
[]
# Maximum number of retry attempts for transient GitHub API errors.
= 5
# Exponential back-off multiplier between retries.
= 2.0
# Initial delay before the first retry (milliseconds).
= 1000
# ─────────────────────────────────────────────────────────────────────────────
# Notifications
# ─────────────────────────────────────────────────────────────────────────────
[]
= true
# Where to report errors encountered during processing.
# Options: "github_issue" | "webhook" | "slack" | "none"
= "github_issue"
[]
# Labels applied to any auto-created error issue.
= ["comp:tooling", "type:fix"]
= []