Changelog
The changelog section is common to all releasers. The reference shows the use of github
but you may substitute it
with the appropriate releaser of your choice.
JReleaser requires a full copy of the codebase. Using a shallow copy may result in partial changelog or errors.
Note the use of fetch-depth: 0 option on the Checkout step when running on GitHub Actions for example.
|
#
release:
# Repo in which the release will be created.
#
github:
# Changelog customization.
#
changelog:
# Disables or enables the changelog.
# defaults to `true`.
#
enabled: true
# Sorts commits in ascending (oldest first) or descending (newer first).
# Supported values are: `ASC`, `DESC`.
# Defaults to `DESC`.
#
sort: DESC
# Path to an external file that contains the changelog, read as is.
# May be a relative path to the configuration file or an absolute path.
# If unspecified, JReleaser will automatically calculate the changelog.
#
external: path/to/changelog.md
# Create explicit markdown links for commit hashes.
# Defaults to `false`.
#
links: false
# Whether to skip merge commits from the generated changelog
# Defaults to `false`.
#
skipMergeCommits: false
# Enables or disables formatting options.
# Supported values are [`NEVER`, `ALWAYS`, `RELEASE`, `SNAPSHOT`].
# Defaults to `NEVER`.
#
formatted: ALWAYS
# Preconfigured changelog options.
# Supported values are [`gitmoji`, `conventional-commits`].
# Requires `formatted` to be enabled.
# Defaults to empty.
#
preset: 'gitmoji'
# The template to use for each change.
# Defaults to `- {{commitShortHash}} {{commitTitle}} ({{commitAuthor}})`.
#
format: '- {{commitShortHash}} {{commitTitle}}'
# The template to use for category titles.
# Defaults to `## {{categoryTitle}}`.
#
categoryTitleFormat: '### {{categoryTitle}}'
# The template to use for the contributors section.
# Defaults to `## Contributors`.
#
contributorsTitleFormat: '### Contributors'
# The template to use for the whole changelog.
# Default is shown.
#
content: |
# Changelog
{{changelogChanges}}
{{changelogContributors}}
# Path to a template file that defines the contents.
# Review the available Name Templates.
# Defaults to `src/jreleaser/templates/changelog.tpl`.
#
contentTemplate: path/to/template/changelog.tpl
#
append:
# Enables appending to an existing changelog file.
# Defaults to `false`.
#
enabled: true
# The title for the partial changelog.
# Default is shown.
#
title: '## [{{tagName}}]'
# Path to the full changelog file where appends will occur.
# Default is shown.
#
target: 'CHANGELOG.md'
# The template to use for the partial changelog.
# Default is shown.
#
content: |
{{changelogTitle}}
{{changelogContent}}
# Path to a template file that defines the contents.
# Review the available Name Templates.
# Defaults to `src/jreleaser/templates/append-changelog.tpl`.
#
contentTemplate: path/to/template/append-changelog.tpl
#
contributors:
# Enables the contributors block.
# Defaults to `true`.
#
enabled: true
# The template to use for each contributor.
# Defaults to `{{contributorName}}`.
#
format: '- {{contributorName}} ({{contributorUsernameAsLink}})'
#
hide:
# Hide uncategorized commits.
# Defaults to `false`.
#
uncategorized: true
# Hide matching categories.
# Entries must exactly match category keys defined below.
# Defaults to empty.
#
categories:
- 'merge'
# Hide matching contributor names.
# Value may be plain text or regex.
# Defaults to empty.
#
contributors:
- '[bot]'
# A list of labels to be included.
# Only changes matching this list will be included.
# Defaults to empty.
#
includeLabels:
- 'issue'
# A list of labels to be excluded.
# Changes matching this list will be excluded.
# Defaults to empty.
#
excludeLabels:
- 'issue'
# Defines rules that apply labels to changes.
# Matchers are evaluated independently; the label will
# be set if at least one of the matchers meets the criteria.
#
labelers:
# The label to be applied.
#
- label: 'issue'
# Matches the text of the first commit line.
# Value may be plain text or regex.
# Use `regex:` as prefix to indicate a regex.
#
title: 'regex:fix:'
# Matches the full text of the commit.
# Value may be plain text or regex.
# Use `regex:` as prefix to indicate a regex.
#
body: 'Fixes #'
# Matches the name or email of a given contributor.
# Value may be plain text or regex.
# Use `regex:` as prefix to indicate a regex.
#
contributor: 'GitHub'
# Priority when sorting.
# Defaults to `null`
#
order: 1
# Groups changes by category.
# Defaults are shown.
#
categories:
# Used for rendering
- title: '๐ Features'
# Used for identifying the category
key: 'features'
labels:
- 'feature'
- 'enhancement'
order: 1
- title: '๐ Bug Fixes'
key: 'fixes'
# You may override the format per category.
format: '- {{commitShortHash}} {{commitBody}}'
labels:
- 'bug'
- 'fix'
order: 2
# Defines rules for replacing the generated content.
# Each replacer is applied in order.
#
replacers:
- search: '\[chore\]\s'
replace: ''
- search: '/CVE-(\d{4})-(\d+)/g'
replace: 'https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-$1-$2'
# Additional properties used when evaluating templates.
#
extraProperties:
# Key will be capitalized and prefixed with `changelog`, i.e, `changelogFoo`.
foo: bar
# Repo in which the release will be created.
#
[release.github]
# Changelog customization.
# Disables or enables the changelog.
# defaults to `true`.
#
changelog.enabled = true
# Sorts commits in ascending (oldest first) or descending (newer first).
# Supported values are: `ASC`, `DESC`.
# Defaults to `DESC`.
#
changelog.sort = "DESC"
# Path to an external file that contains the changelog, read as is.
# May be a relative path to the configuration file or an absolute path.
# If unspecified, JReleaser will automatically calculate the changelog.
#
changelog.external = "path/to/changelog.md"
# Create explicit markdown links for commit hashes.
# Defaults to `false`.
#
changelog.links = false
# Whether to skip merge commits from the generated changelog
# Defaults to `false`.
#
changelog.skipMergeCommits = false
# Enables or disables formatting options.
# Supported values are [`NEVER`, `ALWAYS`, `RELEASE`, `SNAPSHOT`].
# Defaults to `NEVER`.
#
changelog.formatted = "ALWAYS"
# Preconfigured changelog options.
# Supported values are [`gitmoji`, `conventional-commits`].
# Requires `formatted` to be enabled.
# Defaults to empty.
#
changelog.preset = "gitmoji"
# The template to use for each change.
# Defaults to `- {{commitShortHash}} {{commitTitle}} ({{commitAuthor}})`.
#
changelog.format = "- {{commitShortHash}} {{commitTitle}}"
# The template to use for category titles.
# Defaults to `## {{categoryTitle}}`.
#
changelog.categoryTitleFormat = "### {{categoryTitle}}"
# The template to use for the contributors section.
# Defaults to `## Contributors`.
#
changelog.contributorsTitleFormat = "### Contributors"
# The template to use for the whole changelog.
# Default is shown.
#
changelog.content = """
# Changelog
{{changelogChanges}}
{{changelogContributors}}"""
# Path to a template file that defines the contents.
# Review the available Name Templates.
# Defaults to `src/jreleaser/templates/changelog.tpl`.
#
changelog.contentTemplate = "path/to/template/changelog.tpl"
#
[[release.github.changelog.append]]
# Enables appending to an existing changelog file.
# Defaults to `false`.
#
enable = true
# The title for the partial changelog.
# Default is shown.
#
title = "## [{{tagName}}]"
# Path to the full changelog file where appends will occur.
# Default is shown.
#
target = "CHANGELOG.md"
# The template to use for the partial changelog.
# Default is shown.
#
content = """
{{changelogTitle}}
{{changelogContent}}"""
# Path to a template file that defines the contents.
# Review the available Name Templates.
# Defaults to `src/jreleaser/templates/append-changelog.tpl`.
#
contentTemplate = "path/to/template/append-changelog.tpl"
#
[[release.github.changelog.contributors]]
# Enables the contributors block.
# Defaults to `true`.
#
enable = true
# The template to use for each contributor.
# Defaults to `{{contributorName}}`.
#
format = "- {{contributorName}} ({{contributorUsernameAsLink}})"
#
[[release.github.changelog.hide]]
# Hide uncategorized commits.
# Defaults to `false`.
#
uncategorized = true
# Hide matching categories.
# Entries must exactly match category keys defined below.
# Defaults to empty.
#
categories = ["merge"]
# Hide matching contributor names.
# Value may be plain text or regex.
# Defaults to empty.
#
contributors = ["[bot]"]
# A list of labels to be included.
# Only changes matching this list will be included.
# Defaults to empty.
#
changelog.includeLabels = ["issue"]
# A list of labels to be excluded.
# Changes matching this list will be excluded.
# Defaults to empty.
#
changelog.excludeLabels = ["issue"]
# Defines rules that apply labels to changes.
# Matchers are evaluated independently; the label will
# be set if at least one of the matchers meets the criteria.
#
[[release.github.changelog.labelers]]
# The label to be applied.
#
label = "issue"
# Matches the text of the first commit line.
# Value may be plain text or regex.
# Use `regex:` as prefix to indicate a regex.
#
title = "regex:fix:"
# Matches the full text of the commit.
# Value may be plain text or regex.
# Use `regex:` as prefix to indicate a regex.
#
body = "Fixes #"
# Matches the name or email of a given contributor.
# Value may be plain text or regex.
# Use `regex:` as prefix to indicate a regex.
#
contributor = "GitHub"
# Priority when sorting.
# Defaults to `null`
#
order = 1
# Groups changes by category.
# Defaults are shown.
#
[[release.github.changelog.categories]]
# Used for rendering
title = "๐ Features"
# Used for identifying the category
key = "features"
labels = ["feature", "enhancement"]
order = 1
[[release.github.changelog.categories]]
title = "๐ Bug Fixes"
key = "fixes"
# You may override the format per category.
format = "- {{commitShortHash}} {{commitBody}}"
labels = ["bug", "fix"]
order = 2
# Defines rules for replacing the generated content.
# Each replacer is applied in order.
#
[[release.github.changelog.replacers]]
search = "\[chore\]\s"
replace = ""
[[release.github.changelog.replacers]]
search = "/CVE-(\d{4})-(\d+)/g"
replace = "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-$1-$2"
# Additional properties used when evaluating templates.
#
changelog.extraProperties.foo = "bar"
# Key will be capitalized and prefixed with `changelog`, i.e, `changelogFoo`.
{
//
"release": {
// Repo in which the release will be created.
//
"github": {
// Changelog customization.
//
"changelog": {
// Disables or enables the changelog.
// defaults to `true`.
//
"enabled": true,
// Sorts commits in ascending (oldest first) or descending (newer first).
// Supported values are: `ASC`, `DESC`.
// Defaults to `DESC`.
//
"sort": "DESC",
// Path to an external file that contains the changelog, read as is.
// May be a relative path to the configuration file or an absolute path.
// If unspecified, JReleaser will automatically calculate the changelog.
//
"external": "path/to/changelog.md",
// Create explicit markdown links for commit hashes.
// Defaults to `false`.
//
"links": false,
// Whether to skip merge commits from the generated changelog
// Defaults to `false`.
//
"skipMergeCommits": false,
// Enables or disables formatting options.
// Supported values are [`NEVER`, `ALWAYS`, `RELEASE`, `SNAPSHOT`].
// Defaults to `NEVER`.
//
"formatted": "ALWAYS",
// Preconfigured changelog options.
// Supported values are [`gitmoji`, `conventional-commits`].
// Requires `formatted` to be enabled.
// Defaults to empty.
//
"preset": "gitmoji",
// The template to use for each change.
// Defaults to `- {{commitShortHash}} {{commitTitle}} ({{commitAuthor}})`.
//
"format": "- {{commitShortHash}} {{commitTitle}}",
// The template to use for category titles.
// Defaults to `## {{categoryTitle}}`.
//
"categoryTitleFormat": "### {{categoryTitle}}",
// The template to use for the contributors section.
// Defaults to `## Contributors`.
//
"contributorsTitleFormat": "### Contributors",
// The template to use for the whole changelog.
// Default is shown.
//
"content": "#Changelog\n\n{{changelogChanges}}\n{{changelogContributors}}",
// Path to a template file that defines the contents.
// Review the available Name Templates.
// Defaults to `src/jreleaser/templates/changelog.tpl`.
//
"contentTemplate": "path/to/template/changelog.tpl",
//
"append": {
// Enables appending to an existing changelog file.
// Defaults to `false`.
//
"enabled": true,
// The title for the partial changelog.
// Default is shown.
//
"title": "## [{{tagName}}]",
// Path to the full changelog file where appends will occur.
// Default is shown.
//
"target": "CHANGELOG.md",
// The template to use for the partial changelog.
// Default is shown.
//
"content": "{{changelogTitle}}\n{{changelogContent}}",
// Path to a template file that defines the contents.
// Review the available Name Templates.
// Defaults to `src/jreleaser/templates/append-changelog.tpl`.
//
"contentTemplate": "path/to/template/append-changelog.tpl"
},
//
"contributors": {
// Enables the contributors block.
// Defaults to `true`.
//
"enabled": true,
// The template to use for each contributor.
// Defaults to `{{contributorName}}`.
//
"format": "- {{contributorName}} ({{contributorUsernameAsLink}})"
},
//
"hide": {
// Hide uncategorized commits.
// Defaults to `false`.
//
"uncategorized": true,
// Hide matching categories.
// Entries must exactly match category keys defined below.
// Defaults to empty.
//
"categories": [
"merge"
],
// Hide matching contributor names.
// Value may be plain text or regex.
// Defaults to empty.
//
"contributors": [
"[bot]"
]
},
// A list of labels to be included.
// Only changes matching this list will be included.
// Defaults to empty.
//
"includeLabels": [
"issue"
],
// A list of labels to be excluded.
// Changes matching this list will be excluded.
// Defaults to empty.
//
"excludeLabels": [
"issue"
],
// Defines rules that apply labels to changes.
// Matchers are evaluated independently; the label will
// be set if at least one of the matchers meets the criteria.
//
"labelers": [
{
// The label to be applied.
//
"label": "issue",
// Matches the text of the first commit line.
// Value may be plain text or regex.
// Use `regex:` as prefix to indicate a regex.
//
"title": "regex:fix:",
// Matches the full text of the commit.
// Value may be plain text or regex.
// Use `regex:` as prefix to indicate a regex.
//
"body": "Fixes #",
// Matches the name or email of a given contributor.
// Value may be plain text or regex.
// Use `regex:` as prefix to indicate a regex.
//
"contributor": "GitHub",
// Priority when sorting.
// Defaults to `null`
//
"order": 1
}
],
// Groups changes by category.
// Defaults are shown.
//
"categories": [
{
// Used for rendering
"title": "๐ Features",
// Used for identifying the category
"key": "features",
"labels": [
"feature",
"enhancement"
],
"order": 1
},
{
"title": "๐ Bug Fixes",
"key": "fixes",
// You may override the format per category.
"format": "- {{commitShortHash}} {{commitBody}}",
"labels": [
"bug",
"fix"
],
"order": 2
}
],
// Defines rules for replacing the generated content.
// Each replacer is applied in order.
//
"replacers": [
{
"search": "\[chore\]\s",
"replace": ""
},
{
"search": "/CVE-(\d{4})-(\d+)/g",
"replace": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-$1-$2"
}
],
// Additional properties used when evaluating templates.
//
"extraProperties": {
// Key will be capitalized and prefixed with `changelog`, i.e, `changelogFoo`.
"foo": "bar"
},
}
}
}
}
<jreleaser>
<!--
-->
<release>
<!--
Repo in which the release will be created.
-->
<github>
<!--
Changelog customization.
-->
<changelog>
<!--
Disables or enables the changelog.
defaults to `true`.
-->
<enabled>true</enabled>
<!--
Sorts commits in ascending (oldest first) or descending (newer first).
Supported values are>`ASC`, `DESC`.
Defaults to `DESC`.
-->
<sort>DESC</sort>
<!--
Path to an external file that contains the changelog, read as is.
May be a relative path to the configuration file or an absolute path.
If unspecified, JReleaser will automatically calculate the changelog.
-->
<external>path/to/changelog.md</external>
<!--
Create explicit markdown links for commit hashes.
Defaults to `false`.
-->
<links>false</links>
<!--
Whether to skip merge commits from the generated changelog
Defaults to `false`.
-->
<skipMergeCommits>false</skipMergeCommits>
<!--
Enables or disables formatting options.
Supported values are [`NEVER`, `ALWAYS`, `RELEASE`, `SNAPSHOT`].
Defaults to `NEVER`.
-->
<formatted>ALWAYS</formatted>
<!--
Preconfigured changelog options.
Supported values are [`gitmoji`, `conventional-commits`].
Requires `formatted` to be enabled.
Defaults to empty.
-->
<preset>gitmoji</preset>
<!--
The template to use for each change.
Defaults to `- {{commitShortHash}} {{commitTitle}} ({{commitAuthor}})`.
-->
<format>- {{commitShortHash}} {{commitTitle}}</format>
<!--
The template to use for category titles.
Defaults to `## {{categoryTitle}}`.
-->
<categoryTitleFormat>### {{categoryTitle}}</categoryTitleFormat>
<!--
The template to use for the contributors section.
Defaults to `## Contributors`.
-->
<contributorsTitleFormat>### Contributors'</contributorsTitleFormat>
<!--
The template to use for the whole changelog.
Default is shown.
-->
<content>
# Changelog
{{changelogChanges}}
{{changelogContributors}}
</content>
<!--
Path to a template file that defines the contents.
Review the available Name Templates.
Defaults to `src/jreleaser/templates/changelog.tpl`.
-->
<contentTemplate>path/to/template/changelog.tpl</contentTemplate>
<!--
-->
<append>
<!--
Enables appending to an existing changelog file.
Defaults to `false`.
-->
<enabled>true</enabled>
<!--
The title for the partial changelog.
Default is shown.
-->
<title>## [{{tagName}}]</title>
<!--
Path to the full changelog file where appends will occur.
Default is shown.
-->
<target>CHANGELOG.md</target>
<!--
The template to use for the partial changelog.
Default is shown.
-->
<content>
{{changelogTitle}}
{{changelogContent}}
</content>
<!--
Path to a template file that defines the contents.
Review the available Name Templates.
Defaults to `src/jreleaser/templates/append-changelog.tpl`.
-->
<contentTemplate>path/to/template/append-changelog.tpl</contentTemplate>
</append>
<!--
-->
<contributors>
<!--
Enables the contributors block.
Defaults to `true`.
-->
<enabled>true</enabled>
<!--
The template to use for each contributor.
Defaults to `{{contributorName}}`.
-->
<format>- {{contributorName}} ({{contributorUsernameAsLink}})</format>
</contributors>
<!--
-->
<hide>
<!--
Hide uncategorized commits.
Defaults to `false`.
-->
<uncategorized>true</uncategorized>
<!--
Hide matching categories.
Entries must exactly match category keys defined below.
Defaults to empty.
-->
<categories>
<category>merge</category>
</categories>
<!--
Hide matching contributor names.
Value may be plain text or regex.
Defaults to empty.
-->
<contributors>
<contributor>[bot]</contributor>
</contributors>
</hide>
<!--
A list of labels to be included.
Only changes matching this list will be included.
Defaults to empty.
-->
<includeLabels>
<includeLabel>issue</includeLabel>
</includeLabels>
<!--
A list of labels to be excluded.
Changes matching this list will be excluded.
Defaults to empty.
-->
<excludeLabels>
<excludeLabel>issue</excludeLabel>
</excludeLabels>
<!--
Defines rules that apply labels to changes.
Matchers are evaluated independently; the label will
be set if at least one of the matchers meets the criteria.
-->
<labelers>
<labeler>
<!--
The label to be applied.
-->
<label>issue</label>
<!--
Matches the text of the first commit line.
Value may be plain text or regex.
Use `regex:` as prefix to indicate a regex.
-->
<title>regex:fix:</title>
<!--
Matches the full text of the commit.
Value may be plain text or regex.
Use `regex:` as prefix to indicate a regex.
-->
<body>Fixes #</body>
<!--
Matches the name or email of a given contributor.
Value may be plain text or regex.
Use `regex:` as prefix to indicate a regex.
-->
<contributor>GitHub</contributor>
<!--
Priority when sorting.
Defaults to `null`
-->
<order>1</order>
</labeler>
</labelers>
<!--
Groups changes by category.
Defaults are shown.
-->
<categories>
<category>
<!-- Used for rendering -->
<title>๐ Features</title>
<!-- Used for identifying the category -->
<key>features</key>
<labels>feature,enhancement</labels>
<order>1</order>
</category>
<category>
<title>๐ Bug Fixes</title>
<key>fixes</key>
<!--
You may override the format per category.
-->
<format>- {{commitShortHash}} {{commitBody}}</format>
<labels>bug,fix</labels>
<order>2</order>
</category>
</categories>
<!--
Defines rules for replacing the generated content.
Each replacer is applied in order.
-->
<replacers>
<replacer>
<search>\[chore\]\s</search>
</replacer>
<replacer>
<search>/CVE-(\d{4})-(\d+)/g</search>
<replace>https: cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-$1-$2</replace>
</replacer>
</replacers>
<!--
Additional properties used when evaluating templates.
-->
<extraProperties>
<!--
Key will be capitalized and prefixed with `changelog`, i.e, `changelogFoo`.
-->
<foo>bar</foo>
</extraProperties>
</changelog>
</github>
</release>
</jreleaser>
jreleaser {
//
release {
// Repo in which the release will be created.
//
github {
// Changelog customization.
//
changelog {
// Disables or enables the changelog.
// defaults to `true`.
//
enabled = true
// Sorts commits in ascending (oldest first) or descending (newer first).
// Supported values are = `ASC`, `DESC`.
// Defaults to `DESC`.
//
sort = 'DESC'
// Path to an external file that contains the changelog, read as is.
// May be a relative path to the configuration file or an absolute path.
// If unspecified, JReleaser will automatically calculate the changelog.
//
external = 'path/to/changelog.md'
// Create explicit markdown links for commit hashes.
// Defaults to `false`.
//
links = false
// Whether to skip merge commits from the generated changelog
// Defaults to `false`.
//
skipMergeCommits = false
// Enables or disables formatting options.
// Supported values are [`NEVER`, `ALWAYS`, `RELEASE`, `SNAPSHOT`].
// Defaults to `NEVER`.
//
formatted = 'ALWAYS'
// Preconfigured changelog options.
// Supported values are [`gitmoji`, `conventional-commits`].
// Requires `formatted` to be enabled.
// Defaults to empty.
//
preset = 'gitmoji'
// The template to use for each change.
// Defaults to `- {{commitShortHash}} {{commitTitle}} ({{commitAuthor}})`.
//
format = '- {{commitShortHash}} {{commitTitle}}'
// The template to use for category titles.
// Defaults to `## {{categoryTitle}}`.
//
categoryTitleFormat = '### {{categoryTitle}}'
// The template to use for the contributors section.
// Defaults to `## Contributors`.
//
contributorsTitleFormat = '### Contributors'
// The template to use for the whole changelog.
// Default is shown.
//
content = '#Changelog\n\n{{changelogChanges}}\n{{changelogContributors}}'
// Path to a template file that defines the contents.
// Review the available Name Templates.
// Defaults to `src/jreleaser/templates/changelog.tpl`.
//
contentTemplate = 'path/to/template/changelog.tpl'
//
append {
// Enables appending to an existing changelog file.
// Defaults to `false`.
//
enabled = true
// The title for the partial changelog.
// Default is shown.
//
title = '## [{{tagName}}]'
// Path to the full changelog file where appends will occur.
// Default is shown.
//
target = 'CHANGELOG.md'
// The template to use for the partial changelog.
// Default is shown.
//
content = '{{changelogTitle}}\n{{changelogContent}}'
// Path to a template file that defines the contents.
// Review the available Name Templates.
// Defaults to `src/jreleaser/templates/append-changelog.tpl`.
//
contentTemplate = 'path/to/template/append-changelog.tpl'
}
//
contributors {
// Enables the contributors block.
// Defaults to `true`.
//
enabled = true
// The template to use for each contributor.
// Defaults to `{{contributorName}}`.
//
format = '- {{contributorName}} ({{contributorUsernameAsLink}})'
}
//
hide {
// Hide uncategorized commits.
// Defaults to `false`.
//
uncategorized = true
// Hide matching categories.
// Entries must exactly match category keys defined below.
// Defaults to empty.
//
categories = ['merge']
// Hide matching contributor names.
// Value may be plain text or regex.
// Defaults to empty.
//
contributors = ['[bot]']
}
// A list of labels to be included.
// Only changes matching this list will be included.
// Defaults to empty.
//
includeLabels = [
'issue'
]
// A list of labels to be excluded.
// Changes matching this list will be excluded.
// Defaults to empty.
//
excludeLabels = [
'issue'
]
// Defines rules that apply labels to changes.
// Matchers are evaluated independently; the label will
// be set if at least one of the matchers meets the criteria.
//
labeler {
// The label to be applied.
//
label = 'issue'
// Matches the text of the first commit line.
// Value may be plain text or regex.
// Use `regex:` as prefix to indicate a regex.
//
title = 'regex:fix:'
// Matches the full text of the commit.
// Value may be plain text or regex.
// Use `regex:` as prefix to indicate a regex.
//
body = 'Fixes #'
// Matches the name or email of a given contributor.
// Value may be plain text or regex.
// Use `regex:` as prefix to indicate a regex.
//
contributor = 'GitHub'
// Priority when sorting.
// Defaults to `null`
//
order = 1
}
// Groups changes by category.
// Defaults are shown.
//
category {
// Used for rendering
title = '๐ Features'
// Used for identifying the category
key = 'features'
labels = [
'feature',
'enhancement'
]
order = 1
}
category {
title = '๐ Bug Fixes'
key = 'fixes'
// You may override the format per category.
format '- {{commitShortHash}} {{commitBody}}'
labels = [
'bug',
'fix'
]
order = 2
}
// Defines rules for replacing the generated content.
// Each replacer is applied in order.
//
replacer {
search = '\[chore\]\s'
replace = ''
}
replacer {
search = '/CVE-(\d{4})-(\d+)/g'
replace = 'https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-$1-$2'
}
// Additional properties used when evaluating templates.
// Key will be capitalized and prefixed with `changelog`, i.e, `changelogFoo`.
//
extraProperties.put('foo', 'bar')
}
}
}
}
You may define either content
or contentTemplate
, with the latter taking precedence over the former.
Changelog formatting applies only to the automatically generated changelog, that is, formatting won’t occur if the external
property is set. Please note that the formatted
property must also be set. Format applies only to local commits at the moment,
the use of labelers is highly encouraged.
The changelog.format
property accepts only the following name templates:
Key | Description |
---|---|
commitShortHash |
head commit hash abbreviated to 7 characters |
commitFullHash |
head commit hash |
commitTitle |
first line of the commit message |
commitAuthor |
full name of the commit author |
commitBody |
full commit message |
commitsUrl |
commits URl as provided by the Git host |
If the conventional-commits
preset is configured then the following name templates are also available:
Key | Description |
---|---|
commitIsConventional |
a boolean identifying the commit as conventional |
conventionalCommitIsBreakingChange |
a boolean indicating if the commit contains a breaking change |
conventionalCommitBreakingChangeContent |
an optional message related to the breaking change |
conventionalCommitType |
the commit’s type i.e, |
conventionalCommitScope |
the commit’s optional scope i.e, |
conventionalCommitDescription |
the commit’s description |
conventionalCommitBody |
the commit’s full message |
conventionalCommitTrailers |
optional Git trailers such as |
The content
and contentTemplate
accept all Name Templates, take special consideration on
{{changelogChanges}}
and {{changelogContributors}}
as they define the parsed commits.
If you want to omit merge commits in the changelog, use skipMergeCommits
property. If not set, defaults to {{false}}
.
Templates
The default location for templates is:
src/jreleaser/templates
The following list shows the filenames that may be used to override default templates:
-
changelog.tpl
Commits
If you wish to generate the changelog between two tags, with tags in between, you may configure previousTagName
.
It generates the changelog based on all commits between the two tags. (git log <previousTagName>…<tagName>
).
If not defined, it will default to the logical previous tag of the defined tagName
.
Contributors
Contributor names are added to the formatted changelog by default. You may choose to provide a custom format or disable
this behavior completely. The contributors.format
property accepts the following templates:
Key | Description |
---|---|
contributorName |
the contributor’s name as plain text |
contributorNameAsLink |
the contributor’s name as a link |
contributorUsername |
the contributor’s username as plain text |
contributorUsernameAsLink |
the contributor’s username as a link |
The use of {{contributorNameAsLink}}
, {{contributorUsername}}
, or {{contributorUsernameAsLink}}
incurs on a
network call to the remote service to find out information related to the given contributor.
Use a - or * character as prefix in format to list each contributor on its own row.
|
The following configuration
release:
github:
username: aalmiray
overwrite: true
draft: false
sign: true
changelog:
formatted: ALWAYS
format: '- {{commitShortHash}} {{commitTitle}}'
labelers:
- label: 'feature'
title: 'Resolves #'
body: 'Resolves #'
- label: 'issue'
title: 'Fixes #'
body: 'Fixes #'
- label: 'issue'
title: 'Relates to #'
body: 'Relates to #'
- label: 'task'
title: '[chore]'
categories:
- title: '๐ Features'
key: 'features'
labels:
- 'feature'
- title: 'โ
Issues'
key: 'issues'
labels:
- 'issue'
- title: '๐งฐ Tasks'
key: 'tasks'
labels:
- 'task'
replacers:
- search: '\[chore\] '
Generates a changelog similar to
Order
Both labelers and categories will be ordered based on their declared location however you may change this order by
explicitly setting a value for their order
property. The lower the number the higher the priority. The value of the
order
property must be unique.
Presets
Presets define conventions applicable to:
-
labelers
-
categories
-
replacers
-
hide
-
categories
-
contributors
-
You may apply a preset while at the same time define additional elements. Your configuration takes precedence over the preset’s, allowing you to add/merge. For the time being you can’t remove a setting defined by a preset.
Conventional Commits
Commit messages that follow the Conventional Commits specification will be automatically labeled and categorized. The following table shows mappings that you may use when this preset is applied:
Category | Key | Order | Label | Prefix | Order |
---|---|---|---|---|---|
๐ Merge |
merge |
0 |
merge |
Merge pull |
0 |
๐ Merge |
merge |
0 |
merge |
Merge branch |
5 |
๐ Features |
features |
10 |
feat |
feat: |
50 |
๐ Fixes |
fixes |
20 |
fix |
fix: |
60 |
๐ Changes |
changes |
30 |
perf |
perf: |
70 |
๐ Changes |
changes |
30 |
refactor |
refactor: |
80 |
๐ Changes |
changes |
30 |
revert |
revert: |
90 |
๐ Changes |
changes |
30 |
style |
style: |
100 |
๐งช Tests |
test |
35 |
test |
test: |
110 |
๐งฐ Tasks |
tasks |
40 |
chore |
chore: |
20 |
๐ Build |
build |
50 |
build |
build: |
10 |
๐ Build |
build |
50 |
ci |
ci: |
30 |
๐ Documentation |
docs |
60 |
docs |
docs: |
40 |
You may define an optional scope as part of the prefix, such as fix(core)
or feat(plugins)
. A !
in the prefix will
be replaced with a ๐จ emoji. All prefixes will be removed except for their scope. The following commits
feat: Add download urls
fix: Fix typos
fix(core): Add missing checks in loader
fix(engine)!: Plugins require custom classloader
Will be rendered as
## Features
3adf1b5 Add download urls
## Fixes
47e2a81 Fix typos
ea65d99 (core) Add missing checks in loader
8ac258c ๐จ (engine) Plugins require custom classloader
Use the key value to match a category and change its settings.
|
Scoped commits may be categorized as well by defining an extra property named categorizeScopes
with
a true
value.
Example
The following configuration
release:
github:
changelog:
formatted: ALWAYS
preset: 'conventional-commits'
format: '- {{commitShortHash}} {{commitTitle}}'
For a project with the following commits
* bda315f (HEAD -> main, upstream/main) docs: Add missing "`". (#1048)
* 3adf1b5 fix: Do not force .java suffix for Quarkus based templates (#1039)
* 013f328 feat: Startup scripts now use User-Agent header for downloads (#1037)
* 47e2a81 fix: This fixes extraneous jbang.cmd output (#1041)
* fe08627 refactor: Simplified `jbang.cmd` (#1038)
* ea65d99 fix: add hint to user they can get updated catalog using --fresh (#1040)
* 8ac258c fix: No longer pass Accept header (#1036)
* 95a715e [patch] fix linux based java download
* 275d31a fix: archive type for foojay. Fixes #1035
* d42951d [patch]
* 98866f1 fix: Add itest for issue #1019 (#1033)
* 20514c7 fix: Now really fixed updating on Windows (#1031)
* 9ed4116 [minor]
* fb45502 chore: use jreleaser 0.7
* 7419590 fix: edit now honors JBANG_EDITOR again
* 3955647 fix: Not checking for new version on first run anymore (#1023)
* 5e16e22 fix: jbang edit suggests incorrect command when template renames outโฆ (#1020)
* 3ac5561 fix: --deps now gets special javafx treatments as //DEPS does (#1017)
* 52b2377 fix: Fixed link to "Usage on Windows" (#1026)
* 8d5ea6a fix: Fixed download URL in `jbang` script (#1021)
* b750ebb fix: kotlin edit now link to source rather than cache location (#1015)
* 6f87c70 chore: eliminate warnings from code base (#1011)
* f842666 docs: Update spotless pre-commit hook url (#1009)
* d297667 [patch] fix java 17 downloads
* f6a32db fix: use termurin for java 17
* 43b2c72 chore: remove j'bang from choco name, its just JBang
* da0c971 fix: proper nuget
* 30cf637 (tag: v0.80.1) [patch]
Generates a changelog similar to
Gitmoji
Commit messages that follow the Gitmoji convention will be automatically labeled and categorized. The following table shows mappings that you may use when this preset is applied:
Category | Key | Order | Label | Emoji | Keyword |
---|---|---|---|---|---|
๐ Merge |
merge |
0 |
merge |
๐ |
:twisted_rightwards_arrows: |
๐ Added |
added |
10 |
added |
โจ |
:sparkles: |
๐ Added |
added |
10 |
added |
๐ |
:tada: |
๐ Added |
added |
10 |
added |
โ |
:white_check_mark: |
๐ Added |
added |
10 |
added |
๐ท |
:construction_worker: |
๐ Added |
added |
10 |
added |
๐ |
:chart_with_upwards_trend: |
๐ Added |
added |
10 |
added |
โ |
:heavy_plus_sign: |
๐ Added |
added |
10 |
added |
๐ |
:loud_sound: |
๐๏ธ Changed |
changed |
20 |
changed |
๐จ |
:art: |
๐๏ธ Changed |
changed |
20 |
changed |
โก๏ธ |
:zap: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ |
:lipstick: |
๐๏ธ Changed |
changed |
20 |
changed |
๐จ |
:rotating_light: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ |
:pushpin: |
๐๏ธ Changed |
changed |
20 |
changed |
โป๏ธ |
:recycle: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ง |
:wrench: |
๐๏ธ Changed |
changed |
20 |
changed |
๐จ |
:hammer: |
๐๏ธ Changed |
changed |
20 |
changed |
โช |
:rewind: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ฝ |
:alien: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ |
:truck: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ฑ |
:bento: |
๐๏ธ Changed |
changed |
20 |
changed |
โฟ๏ธ |
:wheelchair: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ฌ |
:speech_balloon: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ |
:card_file_box: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ธ |
:children_crossing: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ |
:building_construction: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ฑ |
:iphone: |
๐๏ธ Changed |
changed |
20 |
changed |
๐ฆ |
:package: |
๐จ Breaking |
breaking |
30 |
breaking_changes |
๐ฅ |
:boom: |
๐ฅ Deprecated |
deprecated |
40 |
deprecated |
๐ |
:wastebasket: |
๐ Removed |
removed |
50 |
Removed |
โ |
:heavy_minus_sign: |
๐ Removed |
removed |
50 |
Removed |
๐ฅ |
:fire: |
๐ Removed |
removed |
50 |
Removed |
๐ |
:mute: |
๐ Removed |
removed |
50 |
Removed |
โฐ๏ธ |
:coffin: |
๐ Fixed |
fixed |
60 |
fixed |
๐ |
:bug: |
๐ Fixed |
fixed |
60 |
fixed |
๐ |
:ambulance: |
๐ Fixed |
fixed |
60 |
fixed |
๐ |
:apple: |
๐ Fixed |
fixed |
60 |
fixed |
๐ |
:green_apple: |
๐ Fixed |
fixed |
60 |
fixed |
๐ง |
:penguin: |
๐ Fixed |
fixed |
60 |
fixed |
๐ |
:checkered_flag: |
๐ Fixed |
fixed |
60 |
fixed |
๐ค |
:robot: |
๐ Fixed |
fixed |
60 |
fixed |
๐ |
:green_heart: |
๐ Fixed |
fixed |
60 |
fixed |
โ๏ธ |
:pencil2: |
๐ Fixed |
fixed |
60 |
fixed |
๐ฉน๏ธ |
:adhesive_bandage: |
๐๏ธ Security |
security |
70 |
security |
๐๏ธ |
:lock: |
๐๏ธ Security |
security |
70 |
security |
๐ |
:passport_control: |
๐ฆ Dependencies |
deps |
80 |
dependencies |
โฌ๏ธ |
:arrow_up: |
๐ฆ Dependencies |
deps |
80 |
dependencies |
โฌ๏ธ |
:arrow_down: |
๐ Documentation |
docs |
90 |
documentation |
๐ |
:pencil: |
๐ Documentation |
docs |
90 |
documentation |
๐ |
:memo: |
๐ Documentation |
docs |
90 |
documentation |
๐ |
:globe_with_meridians: |
๐ Documentation |
docs |
90 |
documentation |
๐ |
:page_facing_up: |
๐ Documentation |
docs |
90 |
documentation |
๐ก |
:bulb: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ฉ |
:poop: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ง |
:construction: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ป |
:beers: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ฅ |
:busts_in_silhouette: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐คก |
:clown_face: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ฅ |
:egg: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ |
:see_no_evil: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ธ |
:camera_flash: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
โ๏ธ |
:alembic: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ |
:mag: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ฅ |
:goal_net: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ง |
:monocle_face: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐งช |
:test_tube: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ |
:necktie: |
๐ฒ Miscellaneous |
misc |
100 |
misc |
๐ |
:ok_hand: |
๐ Release |
release |
110 |
release |
๐ |
:rocket: |
๐ Release |
release |
110 |
release |
๐ |
:bookmark: |
The following commit messages are equivalent:
๐ Random number generator always returns 4.
:bug: Random number generator always returns 4.
Keywords are automatically replaced by their corresponding emoji in the generated changelog.
Use the key value to match a category and change its settings.
|
Example
The following configuration
release:
github:
changelog:
formatted: ALWAYS
preset: 'gitmoji'
format: '- {{commitShortHash}} {{commitTitle}}'
For a project with the following commits
* 3dabd57 :bookmark: Release v2.2.0
* a9b1bfe :bug: Fix init command (#204)
* cdf76f9 :pushpin: Upgrade dependencies (#191)
* f7ca721 :memo: Fix the link and update year (#197)
* ceab8dc :sparkles: Add Cargo preset (#199)
* d2ee43d :memo: Change documentation link in README (#196)
* e06e08d :busts_in_silhouette: Add endormi as a contributor (#195)
* 5e0a971 :docs: Add the documentation site (#194)
* 20cf369 :bug: Fix a bug occuring when version is missing in configuration but passed as argument (#190)
* b12dfec :ok_hand: Take care of review
* 9a15406 :goal_net: Handle functional errors
* 4e22239 :pencil: Improve documentation about presets (#189)
* 1febf42 :wrench: Update lock file
* 1635963 :memo: Improve Workflow section (#152)
* a127469 :arrow_up: Upgrade dependencies
Generates a changelog similar to
Appending
JReleaser may append the changelog for a given release to an existing changelog (typically CHANGELOG.md
at the root of
the project). This can be achieved by enabling the append
block, for example
release:
github:
changelog:
formatted: ALWAYS
categoryTitleFormat: '#### {{categoryTitle}}'
contributorsTitleFormat: '#### Contributors'
preset: conventional-commits
append:
enabled: true
Given an initial CHANGELOG.md
such as
# Changelog
Lorem isum dolor sit amet.
<!-- JRELEASER_CHANGELOG_APPEND - Do not remove or modify this section -->
The updated changelog for a 1.0.0
releas would look like this
# Changelog
Lorem isum dolor sit amet.
<!-- JRELEASER_CHANGELOG_APPEND - Do not remove or modify this section -->
## [v1.0.0]
### Changelog
#### ๐ Build
- 2454d3a Add arguments to Main class (Andres Almiray)
- 9797539 Use fetch-depth=0 when checking out on release (Andres Almiray)
- ca15da0 Add Maven assembly descriptor (Andres Almiray)
- 8270c4f Setup build & release workflows (Andres Almiray)
- 1442ef0 Add JReleaser configuration (Andres Almiray)
- 839fab8 Add Maven wrapper files (Andres Almiray)
- 0cd14e9 Add sources (Andres Almiray)
- fd17794 Add license file (Andres Almiray)
---
- 51c3234 Init repository (Andres Almiray)
#### Contributors
We'd like to thank the following people for their contributions:
Andres Almiray
Note the use of a special comment as anchor for finding the right place to append the generated changelog. If the anchor does not exist then the generated changelog will be prepended at the beginning of the full changelog.
Changelog appending is only active when a project is not snapshot. |
JReleaser does not verify if a previous tag is already found in the full changelog before appending. |
Examples
Given a repository with the following commit information:
* 4df324c (HEAD -> main) chore: Update JReleaser configuration
* 035c613 fix: Update JReleaser configuration
* 19742db feat: Add arguments to Main class
* b2f44ae fix: Use fetch-depth=0 when checking out on release
* 420029a feat: Add Maven assembly descriptor
* 91ce213 chore: Setup build & release workflows
* bcb9a13 feat: Add JReleaser configuration
* 1294493 chore: Add Maven wrapper files
* 75dab0f chore: Add sources
* 532b93b chore: Add license file
* 51c3234 Init repository
Plain
Generate a plain changelog (no formatting) based on commit messages
release:
github:
changelog:
enabled: true
## Changelog
4df324c chore: Update JReleaser configuration
035c613 fix: Update JReleaser configuration
19742db feat: Add arguments to Main class
b2f44ae fix: Use fetch-depth=0 when checking out on release
420029a feat: Add Maven assembly descriptor
91ce213 chore: Setup build & release workflows
bcb9a13 feat: Add JReleaser configuration
1294493 chore: Add Maven wrapper files
75dab0f chore: Add sources
532b93b chore: Add license file
51c3234 Init repository
Simple Format
Generate the changelog using basic formatting rules
release:
github:
changelog:
formatted: ALWAYS
## Changelog
- 4df324c chore: Update JReleaser configuration (Andres Almiray)
- 035c613 fix: Update JReleaser configuration (Andres Almiray)
- 19742db feat: Add arguments to Main class (Andres Almiray)
- b2f44ae fix: Use fetch-depth=0 when checking out on release (Andres Almiray)
- 420029a feat: Add Maven assembly descriptor (Andres Almiray)
- 91ce213 chore: Setup build & release workflows (Andres Almiray)
- bcb9a13 feat: Add JReleaser configuration (Andres Almiray)
- 1294493 chore: Add Maven wrapper files (Andres Almiray)
- 75dab0f chore: Add sources (Andres Almiray)
- 532b93b chore: Add license file (Andres Almiray)
- 51c3234 Init repository (Andres Almiray)
## Contributors
We'd like to thank the following people for their contributions:
Andres Almiray
Custom Content
Generate the changelog with a custom content template
release:
github:
changelog:
formatted: ALWAYS
contentTemplate: src/jreleaser/templates/changelog.tpl
## {{releaseName}}
{{changelogChanges}}
## Release v1.0.0
- 4df324c chore: Update JReleaser configuration (Andres Almiray)
- 035c613 fix: Update JReleaser configuration (Andres Almiray)
- 19742db feat: Add arguments to Main class (Andres Almiray)
- b2f44ae fix: Use fetch-depth=0 when checking out on release (Andres Almiray)
- 420029a feat: Add Maven assembly descriptor (Andres Almiray)
- 91ce213 chore: Setup build & release workflows (Andres Almiray)
- bcb9a13 feat: Add JReleaser configuration (Andres Almiray)
- 1294493 chore: Add Maven wrapper files (Andres Almiray)
- 75dab0f chore: Add sources (Andres Almiray)
- 532b93b chore: Add license file (Andres Almiray)
- 51c3234 Init repository (Andres Almiray)
Preset
Generate the changelog using the conventional-commits
preset
release:
github:
changelog:
formatted: ALWAYS
preset: conventional-commits
## Changelog
## ๐ Features
- 19742db Add arguments to Main class
- 420029a Add Maven assembly descriptor
- bcb9a13 Add JReleaser configuration
## ๐ Fixes
- 035c613 Update JReleaser configuration
- b2f44ae Use fetch-depth=0 when checking out on release
## ๐งฐ Tasks
- 4df324c Update JReleaser configuration
- 91ce213 Setup build & release workflows
- 1294493 Add Maven wrapper files
- 75dab0f Add sources
- 532b93b Add license file
---
- 51c3234 Init repository
## Contributors
We'd like to thank the following people for their contributions:
Andres Almiray
Custom Formatting Rules
Apply your own categorization. May be combined with existing presets
release:
github:
changelog:
formatted: ALWAYS
format: '- {{commitShortHash}} {{commitTitle}}'
contributors:
format: '- {{contributorName}}{{#contributorUsernameAsLink}} ({{.}}){{/contributorUsernameAsLink}}'
labelers:
- label: 'feature'
title: 'feat:'
- label: 'issue'
title: 'fix:'
- label: 'task'
title: 'chore:'
categories:
- title: 'โญ๏ธ Features'
labels:
- 'feature'
- title: 'โ
Issues'
labels:
- 'issue'
- title: '๐ Tasks'
labels:
- 'task'
replacers:
- search: 'feat: '
- search: 'fix: '
- search: 'chore: '
## Changelog
## โญ๏ธ Features
- 19742db Add arguments to Main class
- 420029a Add Maven assembly descriptor
- bcb9a13 Add JReleaser configuration
## ๐ Tasks
- 4df324c Update JReleaser configuration
- 91ce213 Setup build & release workflows
- 1294493 Add Maven wrapper files
- 75dab0f Add sources
- 532b93b Add license file
## โ
Issues
- 035c613 Update JReleaser configuration
- b2f44ae Use fetch-depth=0 when checking out on release
---
- 51c3234 Init repository
## Contributors
We'd like to thank the following people for their contributions:
- Andres Almiray ([@aalmiray](https://github.com/aalmiray))
External Changelog
Configure any file as a changelog source.
An external changelog is used "as is". Name templates won’t be resolved! |
release:
github:
changelog:
external: partial-changelog.md
## Release v1.0.0
We're pleased to announce v1.0.0 has been released.
### New and noteworthy
* Feature A
* Feature b
### Fixes
* Bug 1
* Bug 2
## Release v1.0.0
We're pleased to announce v1.0.0 has been released.
### New and noteworthy
* Feature A
* Feature b
### Fixes
* Bug 1
* Bug 2
Categorized Scopes
The conventional-commits preset must be configured.
|
Given a repository with the following commit information:
* 86c03d0 (HEAD -> main) build(release): Update JReleaser configuration
* 072c519 fix(release): Update JReleaser configuration
* 865592a feat(core): Add arguments to Main class
* 54e0199 build(release): Use fetch-depth=0 when checking out on release
* a8c6140 build(assembly): Add Maven assembly descriptor
* 25789a7 build(release): Setup build & release workflows
* fa0d451 feat(release): Add JReleaser configuration
* 5c18c47 build: Add Maven wrapper files
* 4cc2751 build: Add sources
* d751ebe build: Add license file
* 51c3234 Init repository
release:
github:
changelog:
formatted: ALWAYS
preset: conventional-commits
extraProperties:
categorizeScopes: true
## Changelog
## ๐ Features
**core**
- 865592a Add arguments to Main class
**release**
- fa0d451 Add JReleaser configuration
## ๐ Fixes
**release**
- 072c519 Update JReleaser configuration
## ๐ Build
**assembly**
- a8c6140 Add Maven assembly descriptor
**release**
- 86c03d0 Update JReleaser configuration
- 54e0199 Use fetch-depth=0 when checking out on release
- 25789a7 Setup build & release workflows
**unscoped**
- 5c18c47 Add Maven wrapper files
- 4cc2751 Add sources
- d751ebe Add license file
---
- 51c3234 Init repository
## Contributors
We'd like to thank the following people for their contributions:
Andres Almiray