-
Notifications
You must be signed in to change notification settings - Fork 1
/
.goreleaser.yaml
91 lines (79 loc) · 3.13 KB
/
.goreleaser.yaml
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
# yaml-language-server: $schema=https://goreleaser.com/static/schema.json
# vim: set ts=2 sw=2 tw=0 fo=jcroql
version: 2
snapshot:
version_template: "{{ incpatch .Version }}-alpha"
# Ref: https://goreleaser.com/customization/builds/
project_name: nanoid
builds:
# Ref: https://goreleaser.com/errors/no-main/#if-you-are-building-a-library
- skip: true
# Ref: https://goreleaser.com/customization/changelog/
changelog:
# Sorts the changelog by the commit's messages.
# Could either be asc, desc or empty
# Empty means 'no sorting', it'll use the output of `git log` as is.
sort: asc
# Changelog generation implementation to use.
#
# Valid options are:
# - `git`: uses `git log`;
# - `github`: uses the compare GitHub API, appending the author username to the changelog.
# - `gitlab`: uses the compare GitLab API, appending the author name and email to the changelog (requires a personal access token).
# - `gitea`: uses the compare Gitea API, appending the author username to the changelog.
# - `github-native`: uses the GitHub release notes generation API, disables the groups feature.
#
# Default: 'git'.
use: github
# Max commit hash length to use in the changelog.
#
# 0: use whatever the changelog implementation gives you
# -1: remove the commit hash from the changelog
# any other number: max length.
abbrev: 0
filters:
# Commit messages matching the regexp listed here will be the only ones
# added to the changelog
#
# If include is not-empty, exclude will be ignored.
#
# Matches are performed against the first line of the commit message only,
# prefixed with the commit SHA1, usually in the form of
# `<abbrev-commit>[:] <title-commit>`.
include:
- "(?i)^feature:"
- "(?i)^defect:"
- "(?i)^debt:"
- "(?i)^risk:"
# Group commits messages by given regex and title.
# Order value defines the order of the groups.
# Providing no regex means all commits will be grouped under the default group.
#
# Matches are performed against the first line of the commit message only,
# prefixed with the commit SHA1, usually in the form of
# `<abbrev-commit>[:] <title-commit>`.
# Groups are disabled when using github-native, as it already groups things by itself.
# Regex use RE2 syntax as defined here: https://github.com/google/re2/wiki/Syntax.
groups:
- title: "🎉 Features"
regexp: '(?i)^.*?feature(\([[:word:]]+\))??!?:.+$'
order: 0
- title: "🐛 Defects"
regexp: '(?i)^.*?defect(\([[:word:]]+\))??!?:.+$'
order: 1
- title: "🛠 Technical Debt"
regexp: '(?i)^.*?debt(\([[:word:]]+\))??!?:.+$'
order: 1
- title: "🚀 Technical Risk"
regexp: '(?i)^.*?risk(\([[:word:]]+\))??!?:.+$'
order: 1
- title: Others
order: 999
sboms:
- artifacts: archive
release:
name_template: 'v{{ .Version }}'
footer: |
**Full Changelog**: [CHANGELOG](https://github.com/sixafter/nanoid/tree/main/CHANGELOG/CHANGELOG-1.x.md)
## Where to go next?
* To determine the practical length for a NanoID, see the collision time calculator [here](https://sixafter.github.io/nanoid/).