From cbc43e891a8e7ada2c95bd4a2a161facb5156516 Mon Sep 17 00:00:00 2001 From: Robin Jarry Date: Sat, 21 Oct 2023 00:52:45 +0200 Subject: changelog: get unreleased entries from commit trailers Asking contributors to update the CHANGELOG.md file is causing lots of merge conflicts. Introduce a new workflow where contributors can attach changelog entries in patches via git trailers. Changelog-added: For new features. Changelog-fixed: For bug fixes. Changelog-changed: For behaviour or config format changes. Changelog-deprecated: For deprecation or removal of functionality. If a complete trailer is longer than 72 characters, it can be continued by indenting extra lines with a single space. The trailer text must be valid markdown. Update CONTRIBUTING.md with new guidelines. Update contrib/release.sh to extract these trailers before tagging and create a new section in CHANGELOG.md. Extract unreleased entries in this commit to follow the new workflow. Changelog-added: New `flagged` criteria for `:sort`. Changelog-added: New `:send-keys` command to control embedded terminals. Changelog-added: Account aliases now support fnmatch-style wildcards. Changelog-fixed: `colorize` support for wildcards `?` and `*`. Signed-off-by: Robin Jarry Acked-by: Moritz Poldrack --- CONTRIBUTING.md | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'CONTRIBUTING.md') diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e06ac010..0ede7657 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -19,10 +19,6 @@ that you did not break anything. - If applicable, update unit tests. - If adding a new feature, please consider adding new tests. - Do not forget to update the docs. -- If your commit brings visible changes for end-users, add an entry in the - *Unreleased* section of the - [CHANGELOG.md](https://git.sr.ht/~rjarry/aerc/tree/master/item/CHANGELOG.md) - file. - Run the linter using `make lint`. Once you are happy with your work, you can create a commit (or several @@ -47,6 +43,18 @@ commits). Follow these general rules: - If you are fixing a regression introduced by another commit, add a `Fixes:` trailer with the commit id and its title. - When in doubt, follow the format and layout of the recent existing commits. +- If your commit brings visible changes for end-users, add one of the following + trailers with a short and concise description of the change. + + * `Changelog-added:` for new features. + * `Changelog-fixed:` for bug fixes. + * `Changelog-changed:` for behaviour or config format changes. + * `Changelog-deprecated:` for deprecation or removal of functionality. + + If a complete trailer is longer than 72 characters, it can be continued by + indenting extra lines with a single space. The trailer text must be valid + markdown. You can take inspiration from existing entries in + [CHANGELOG.md](https://git.sr.ht/~rjarry/aerc/tree/master/item/CHANGELOG.md). There is a great reference for commit messages in the [Linux kernel documentation](https://www.kernel.org/doc/html/latest/process/submitting-patches.html#describe-your-changes). -- cgit