Skip to content

Commit

Permalink
chore: add changelog via git-cliff (#29)
Browse files Browse the repository at this point in the history
* chore: add changelog via git-cliff
* chore: adapt cliff.toml config
  • Loading branch information
roele authored Jan 24, 2024
1 parent c32c733 commit 977c57d
Show file tree
Hide file tree
Showing 3 changed files with 154 additions and 8 deletions.
24 changes: 16 additions & 8 deletions .mise.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,19 @@
[tools]
"cargo:cargo-tarpaulin" = "0.27.3"
"cargo:git-cliff" = "1.4.0"

[tasks.changelog]
description = "Generate changelog"
run = "git cliff -o CHANGELOG.md"

[tasks.coverage]
description = "Run tests with coverage"
run = [
"cargo clippy -- -D warnings",
"cargo fmt -- --check",
"cargo tarpaulin --lib --tests"
]

[tasks."recordings input"]
description = "Create recordings with vhs"
run = """
Expand Down Expand Up @@ -25,11 +41,3 @@ run = [
"cargo fmt -- --check",
"cargo test --lib --tests"
]

[tasks.coverage]
description = "Run tests with coverage"
run = [
"cargo clippy -- -D warnings",
"cargo fmt -- --check",
"cargo tarpaulin --lib --tests"
]
56 changes: 56 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Changelog

## [unreleased]

### Bug Fixes

- Input - remove unnecessary code (#26)
- Select - incorrect number of pages when filtering (#24)
- Input - set default prompt to '> ' (#20)
- Indent input by a space like the other inputs (#18)
- Input - handle arrow keys (#11)

### Features

- Input - add support for ctrl+w and ctrl-u (#27)
- Add tests to verify initial rendering (#25)
- Add themes dracula, catppuccin, base16 (#19)
- Implement spinner (#13)

### Miscellaneous Tasks

- Add changelog via git-cliff
- Align and update examples (#14)

## [0.4.0] - 2024-01-18

### Bug Fixes

- Select might panic when filtering multi-page options (#5)

### Features

- Implement simple text input (#10)

### Miscellaneous Tasks

- Release demand version 0.4.0

## [0.3.0] - 2023-12-21

### Miscellaneous Tasks

- Release demand version 0.3.0

## [0.2.0] - 2023-12-21

### Miscellaneous Tasks

- Release demand version 0.2.0

## [0.1.1] - 2023-12-21

### Miscellaneous Tasks

- Release demand version 0.1.1

82 changes: 82 additions & 0 deletions cliff.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# git-cliff ~ default configuration file
# https://git-cliff.org/docs/configuration
#
# Lines starting with "#" are comments.
# Configuration options are organized into tables and keys.
# See documentation for more information on available options.

[changelog]
# changelog header
header = """
# Changelog
"""
# template for the changelog body
# https://keats.github.io/tera/docs/#introduction
body = """
{% if version %}\
## [{{ version | trim_start_matches(pat="v") }}] - {{ timestamp | date(format="%Y-%m-%d") }}
{% else %}\
## [unreleased]
{% endif %}\
{% for group, commits in commits | group_by(attribute="group") %}
### {{ group | upper_first }}
{% for commit in commits %}
- {% if commit.breaking %}[**breaking**] {% endif %}{{ commit.message | upper_first }}\
{% endfor %}
{% endfor %}\n
"""
# remove the leading and trailing whitespace from the template
trim = true
# changelog footer
footer = """
"""
# postprocessors
postprocessors = [
# { pattern = '<REPO>', replace = "https://github.com/orhun/git-cliff" }, # replace repository URL
]
[git]
# parse the commits based on https://www.conventionalcommits.org
conventional_commits = true
# filter out the commits that are not conventional
filter_unconventional = true
# process each line of a commit as an individual commit
split_commits = false
# regex for preprocessing the commit messages
commit_preprocessors = [
# { pattern = '\((\w+\s)?#([0-9]+)\)', replace = "([#${2}](<REPO>/issues/${2}))"}, # replace issue numbers
]
# regex for parsing and grouping commits
commit_parsers = [
{ message = "^feat", group = "Features" },
{ message = "^fix", group = "Bug Fixes" },
{ message = "^doc", group = "Documentation" },
{ message = "^perf", group = "Performance" },
{ message = "^refactor", group = "Refactor" },
{ message = "^style", group = "Styling" },
{ message = "^test", group = "Testing" },
{ message = "^chore\\(release\\): prepare for", skip = true },
{ message = "^chore\\(deps\\)", skip = true },
{ message = "^chore\\(pr\\)", skip = true },
{ message = "^chore\\(pull\\)", skip = true },
{ message = "^chore|ci", group = "Miscellaneous Tasks" },
{ body = ".*security", group = "Security" },
{ message = "^revert", group = "Revert" },
]
# protect breaking changes from being skipped due to matching a skipping commit_parser
protect_breaking_commits = false
# filter out the commits that are not matched by commit parsers
filter_commits = false
# regex for matching git tags
tag_pattern = "v[0-9].*"

# regex for skipping tags
skip_tags = "v0.1.0-beta.1"
# regex for ignoring tags
ignore_tags = ""
# sort the tags topologically
topo_order = false
# sort the commits inside sections by oldest/newest order
sort_commits = "newest"
# limit the number of commits included in the changelog.
# limit_commits = 42

0 comments on commit 977c57d

Please sign in to comment.