1
1
mirror of https://github.com/orhun/git-cliff.git synced 2024-12-15 00:23:16 +03:00
Commit Graph

108 Commits

Author SHA1 Message Date
Orhun Parmaksız
1b3cba8dca
chore(cd): bump git-cliff-action to v2 2022-12-25 23:14:05 +03:00
Orhun Parmaksız
efd827f59f
feat(cd): publish Debian package via release workflow (#113) 2022-12-22 22:31:20 +03:00
Orhun Parmaksız
8f77caf86a
chore(config): comment out custom commit preprocessor (#112) 2022-12-22 18:17:53 +03:00
Orhun Parmaksız
9a070b248d
feat(cd): include completions and mangen in binary releases (#115) 2022-12-22 16:11:00 +03:00
Orhun Parmaksız
6c37611e16
chore(ci): update actions/checkout to v3 2022-12-22 15:56:03 +03:00
Orhun Parmaksız
5187f029ec
chore(cd): remove deprecated set-output usage 2022-12-22 15:53:13 +03:00
Orhun Parmaksız
29b3dd1598
fix(fixtures): fix test fixture failures 2022-12-16 21:08:31 +03:00
Orhun Parmaksız
53c1c50a1e
chore(fixtures): run all test fixtures 2022-12-16 20:48:02 +03:00
Orhun Parmaksız
77731ec7ae
feat(changelog, config)!: replace --date-order by --topo-order 2022-12-16 18:43:13 +01:00
Florian Fromm
0c7769b52f
feat(config): changelog for the last n commits (#116)
* feat(config): changelog for the last n commits

Adds a additional configuration variable `limit_commits` to the
configuration struct.
`limit_commits` can be set to a positive integer number to limit the
commits contained in the generated changelog.

Also adjusts the default config file to contain `limit_commits` as a
commented out line.

Extends documentation in README.md to also cover the introduced
configuration value.

issue: https://github.com/orhun/git-cliff/issues/102

* test(fixture): add test fixture for limiting commits

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2022-10-06 13:10:37 +02:00
Sebastian Müller
1c98995454
feat(changelog): do not skip breaking changes if configured (#114)
* feat(changelog): breaking changes are never skipped

Fixes #106

* test(fixture): add test fixture for skipping breaking changes

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2022-10-04 20:21:49 +00:00
Orhun Parmaksız
17f3a0994d
chore(ci): switch to cargo-tarpaulin for measuring code coverage (#110) 2022-09-24 21:19:46 +02:00
Orhun Parmaksız
1b5dcc1051
refactor(clippy): run clippy for tests 2022-08-12 11:51:38 +02:00
Aaron Friel
e3eae33abc
feat(changelog): support splitting commits by lines (#101)
* feat: support splitting commits by lines

* refactor(config): update the description for split_commits

* style(fmt): apply formatting via rustfmt

* refactor(test): create helper method for split_commits test

* fix(changelog): change the default behaviour for split_commits when it is not provided

* test(fixture): add test fixture for splitting commits

* docs(readme): update table of contents

* docs(readme): add warning about split_commits flag

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2022-08-12 04:59:06 +03:00
Orhun Parmaksız
f3fada723d
chore(funding): add GitHub Sponsors option for funding
https://github.com/sponsors/orhun
2022-07-31 14:28:50 +02:00
Orhun Parmaksız
cd1306cffd
chore(docker): disable updating the description on Docker Hub
This reverts commit 9c0e7a2ab8.

See https://github.com/peter-evans/dockerhub-description/issues/69
2022-07-27 14:40:24 +02:00
Orhun Parmaksız
9c0e7a2ab8
chore(docker): update the description on Docker Hub on push 2022-07-27 14:31:21 +02:00
Orhun Parmaksız
f2968cdf6c
chore(docker): enable building arm64 docker images
This reverts commit 175f7d7055.
2022-07-21 20:57:03 +02:00
Orhun Parmaksız
8621a59d47
chore(cd): update windows runners to windows-2022 2022-07-12 18:12:28 +02:00
Orhun Parmaksız
4b2ded0cf1
fix(cd): set fail-fast strategy to false 2022-07-12 18:01:50 +02:00
Orhun Parmaksız
a5aaca1a01
fix(ci): update lychee arguments to skip checking protonmail 2022-07-12 15:11:08 +02:00
Eliza Weisman
0bf499ec94
feat(commit)!: pass footer token and separator to template (#97)
* fix(commit): pass footer token and separator to template

Currently, when a conventional commit has footers, only the footers'
values (the part after the separator token, such as `:`) are passed to
the template. This means that when multiple footers, such as
`Signed-off-by:` and `Co-authored-by:` are present, it isn't currently
possible for the template to determine the name of the footer. This
makes actually using data from footers in templates impractical in most
cases.

This commit fixes this by changing the `Serialize` impl for `Commit` to
pass the commit's footers as a structured object rather than a string.
The structured `Footer` type includes the footer's token (which is what
`git_conventional` calls the name preceding the separator token), the
separator, and the value.

I didn't make the new `Footer` type and `Commit::footers` method public,
because it isn't strictly necessary to add them to the `git-cliff-core`
public API to fix this issue. However, we can make them public in a
follow-up PR if this is considered useful.

Fixes #96

BREAKING CHANGE:

This changes type of the `commit.footers` array exposed to templates.
Currently, when a template uses `commit.footers`, it can treat the
values as strings. After this change, the footer object will need to
have its fields unpacked in order to use them.

However, the impact of this breakage is probably not that severe, since
it's not really practical to use footers in templates with the current
system.

* docs(README): discuss footers in README

Signed-off-by: Eliza Weisman <eliza@buoyant.io>

* docs(examples): Add footers to `detailed.toml`

Signed-off-by: Eliza Weisman <eliza@buoyant.io>

* refac(commit): address review feedback

Signed-off-by: Eliza Weisman <eliza@buoyant.io>

* docs(README): address README review feedback

Signed-off-by: Eliza Weisman <eliza@buoyant.io>

* refactor(example): update detailed example about newline issues

* test(fixture): add test fixture for commit footers

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2022-07-12 15:38:16 +03:00
Orhun Parmaksız
175f7d7055
chore(docker): disable building arm64 docker images temporarily
This reverts commit 8475e1fd63.
Reference: https://github.com/LukeMathWalker/cargo-chef/issues/107#issuecomment-1149901337
2022-06-23 22:21:27 +02:00
Ömer Faruk Şahin
e22076843b
feat(config): support changing commit scope with commit_parsers (#94)
* fix: issue #50

* chore: Check some lints and styles

* docs: add scope example

* chore: fix some typos in cargo docs

* style: rerun cargo fmt and cargo lint

* style(config): update wording in the comment

* test(config): add tests about specifying the scope

* test(fixture): add test fixture for custom scope

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2022-06-23 02:44:13 +03:00
Orhun Parmaksız
8475e1fd63
chore(docker): build Docker images for arm64 2022-04-24 14:12:29 +03:00
Orhun Parmaksız
a5ddf75152
chore(cd): include man page in the release assets 2022-04-14 16:53:02 +03:00
Orhun Parmaksız
2b484f078c
fix(fixtures): update expected changelog date 2022-04-06 15:58:28 +03:00
Orhun Parmaksız
64317f2116
feat(git): support preprocessing commit messages using regex (#62) 2022-04-06 15:46:23 +03:00
Grachev Mikhail
312b654b07
chore(ci): return to nightly builds (#73)
Signed-off-by: Mikhail Grachev <work@mgrachev.com>
2022-03-29 14:44:45 +03:00
Orhun Parmaksız
1b04dbf1a8
fix(ci): pin the Rust nightly version
Temporary fix until the `ring` build issue is fixed.

- https://github.com/briansmith/ring/issues/1469
- https://github.com/rust-lang/rust/issues/95267
2022-03-26 22:27:52 +03:00
Kenji Miyake
3ccec7f93a
fix(changelog): use root commit when --latest and there is only one tag (#59)
* test: add a test for --latest with one tag

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* chore: add a test script

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* fix: use root commit when --latest and there is only one tag

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* docs: remove "requires at least 2 tags"

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* add newlines

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* apply review to test-fixtures-locally.sh

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* apply review to lib.rs

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* chore(fixtures): apply shellcheck suggestion

* chore(ci): checkout pull request HEAD commit

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2022-02-20 17:26:11 +03:00
Orhun Parmaksız
960cb4ac6f
chore(cd): update the runner to macos-11 2022-02-12 22:04:35 +03:00
Orhun Parmaksız
cfe41fe56e
chore(ci): run cargo-audit for checking vulnerabilities 2022-02-12 22:02:26 +03:00
Orhun Parmaksız
5bfb45411d
fix(ci): update grcov download command 2022-02-12 19:39:59 +03:00
Kenji Miyake
a3980f4632
feat(changelog, config)!: replace --topo-order by --date-order (#58)
* feat(changelog, config)!: replace --topo-order by --date-order

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* ci: simplify test-fixtures workflow

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* ci: add fixtures tests of topo_order and date_order

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* remove unnecessary checkout

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* remove cargo run

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* set GIT_COMMITTER_DATE for each commit

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* add a test for --date-order arg

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* fix git config style

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* remove an unnecessary period

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* apply #60

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* minify the config files for tests

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* fix git config style

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* fix styles of expected.md

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* make some steps one-line

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* remove footers

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* remove newlines

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* Revert "remove newlines"

This reverts commit 802881523f.

* Revert "remove footers"

This reverts commit 3d334cc9ef.

* add trim and footer

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>
2022-02-12 19:30:21 +03:00
Kenji Miyake
0293b28109
style(changelog): comply with MD022 and fix minor typos (#61)
* style: add newlines after the title to comply with MD022

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* style: replace whitespaces with whitespace

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>
2022-02-08 18:11:11 +03:00
Orhun Parmaksız
a3f3aa6405
fix(ci): use the correct tar command for extracting grcov archive 2022-02-04 01:51:07 +03:00
Orhun Parmaksız
c47133ac24
fix(ci): update the download link of latest grcov release 2022-02-04 01:47:21 +03:00
Orhun Parmaksız
7d766d7e34
fix(ci): run clippy from nightly toolchain 2021-12-31 21:33:39 +03:00
Pascal Bach
b88e7d30be
feat(changelog): add link_parsers for parsing/extracting links (#42)
* feat(core): add link parsing

Searches for patterns in commite messages and allows to convert them into
links via regular expression replacement.

This allows to include links to issue trackers and other tools in the resulting
changelog.

Closes #41

* fix(ci): update lychee arguments

* docs(readme): fix typos

* docs(readme): fix typos

Co-authored-by: Orhun Parmaksız <orhunparmaksiz@gmail.com>
2021-12-31 21:10:37 +03:00
Orhun Parmaksız
d7e8ce2528
fix(fixtures): strip the carriage return on fixtures while comparing 2021-12-07 23:48:46 +03:00
Orhun Parmaksız
c8d288c4c8
fix(fixtures): update the multi line docker command 2021-12-07 23:33:02 +03:00
Orhun Parmaksız
bbc58d7bd0
fix(fixtures): use the defined configuration file for fixtures 2021-12-07 23:31:02 +03:00
Orhun Parmaksız
cb412a905f
fix(fixtures): checkout the repository before running fixtures 2021-12-07 23:23:52 +03:00
Orhun Parmaksız
dea65f235e
chore(fixtures): run test fixtures on ubuntu-latest 2021-12-07 23:22:11 +03:00
Orhun Parmaksız
92a54d67b8
chore(fixtures): improve the workflow for test fixtures 2021-12-07 23:15:13 +03:00
Kenji Miyake
de11ccecac
feat(config): add ignore_tags option (#40)
* feat: add ignore_tags option

Resolves (#36)

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* test: add a test using GitHub Actions

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* docs: fix style

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* chore: add ignore_tags to example config files

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>

* style: refactor test-fixtures workflow

Signed-off-by: Kenji Miyake <kenji.miyake@tier4.jp>
2021-12-07 21:49:37 +03:00
Orhun Parmaksız
2cee3bf9ec
fix(cd): install the Rust toolchain explicitly for crates.io releases 2021-10-22 17:57:05 +03:00
Orhun Parmaksız
627d4eff7f
chore(ci): run CI workflows periodically 2021-10-15 21:25:15 +03:00
Orhun Parmaksız
7756266b17
chore(docker): use docker.yml workflow for CI/CD 2021-10-02 00:08:08 +03:00