From 89c4ee69420612b18e6637e5b20213595d45c069 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kamil=20=C5=9Aliwak?= Date: Fri, 3 Feb 2023 19:01:22 +0100 Subject: [PATCH] Add a script for generating a list of contributors to paste in release notes --- ReleaseChecklist.md | 4 ++- scripts/list_contributors.sh | 51 ++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100755 scripts/list_contributors.sh diff --git a/ReleaseChecklist.md b/ReleaseChecklist.md index 8c38bd8e4..f5b5e3ada 100644 --- a/ReleaseChecklist.md +++ b/ReleaseChecklist.md @@ -33,7 +33,9 @@ Set the target to the ``develop`` branch and the tag to the new version, e.g. ``v0.8.5``. Include the following warning: ``**The release is still in progress and the binaries may not yet be available from all sources.**``. Don't publish it yet - click the ``Save draft`` button instead. - - [ ] Thank voluntary contributors in the GitHub release notes (use ``git shortlog --summary --email v0.5.3..origin/develop``). + - [ ] Thank voluntary contributors in the GitHub release notes. + Use ``scripts/list_contributors.sh v`` to get initial list of names. + Remove different variants of the same name manually before using the output. - [ ] Check that all tests on the latest commit in ``develop`` are green. - [ ] Click the ``Publish release`` button on the release page, creating the tag. - [ ] Wait for the CI runs on the tag itself. diff --git a/scripts/list_contributors.sh b/scripts/list_contributors.sh new file mode 100755 index 000000000..4b8f06d76 --- /dev/null +++ b/scripts/list_contributors.sh @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +# ------------------------------------------------------------------------------ +# Creates a list containing names of people who contributed to the project, for use +# in release notes. The names come from the author field on the commits between +# the current revision and the one specified as argument. +# +# Note that the output often requires extra manual processing to remove entries +# that refer to the same person (diacritics vs no diacritics, name vs nickname, etc.). +# +# Usage: +#