delta: get contributors without changing THANKS

Give contrithanks.sh the option to send the list of names to stdout so
that delta can use it appropriately for counting.

Closes #16449
This commit is contained in:
Daniel Stenberg 2025-02-24 13:17:38 +01:00
parent dfdd380844
commit db2fd7c3de
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2
2 changed files with 19 additions and 7 deletions

View File

@ -24,8 +24,7 @@
########################################################################### ###########################################################################
# #
# This script shows all mentioned contributors from <hash> until HEAD and # This script updates the docs/THANKS document.
# puts them at the end of the THANKS document on stdout
# #
set -eu set -eu
@ -36,6 +35,13 @@ if test "$start" = "-h"; then
echo "Usage: $0 <since this tag/hash>" echo "Usage: $0 <since this tag/hash>"
exit exit
fi fi
if test "$start" = "stdout"; then
# output the names on stdout
use_stdout="yes"
start=""
else
use_stdout="no";
fi
if test -z "$start"; then if test -z "$start"; then
start=$(git tag --sort=taggerdate | grep "^curl-" | tail -1) start=$(git tag --sort=taggerdate | grep "^curl-" | tail -1)
fi fi
@ -77,8 +83,10 @@ sed -f ./docs/THANKS-filter | \
sort -fu | \ sort -fu | \
grep -aixvFf ./docs/THANKS >> $rand grep -aixvFf ./docs/THANKS >> $rand
# output header if test "$use_stdout" = "no"; then
cat <<EOF >./docs/THANKS
# output header
cat <<EOF >./docs/THANKS
This project has been alive for many years. Countless people have provided This project has been alive for many years. Countless people have provided
feedback that have improved curl. Here follows a list of people that have feedback that have improved curl. Here follows a list of people that have
contributed (a-z order). contributed (a-z order).
@ -86,8 +94,12 @@ cat <<EOF >./docs/THANKS
If you have contributed but are missing here, please let us know! If you have contributed but are missing here, please let us know!
EOF EOF
# append all the names, sorted case insensitively # append all the names, sorted case insensitively
grep -v "^ " $rand | sort -f $rand >> ./docs/THANKS grep -v "^ " $rand | sort -f $rand >> ./docs/THANKS
else
# send all names on stdout
grep -v "^ " $rand | sort -f $rand
fi
# get rid of the temp file # get rid of the temp file
rm $rand rm $rand

View File

@ -52,7 +52,7 @@ $acommitters = `git shortlog -s | wc -l`;
$ncommitters = $acommitters - $bcommitters; $ncommitters = $acommitters - $bcommitters;
# number of contributors right now # number of contributors right now
$acontribs = `./scripts/contrithanks.sh | grep -c '^[^ ]'`; $acontribs = `./scripts/contrithanks.sh stdout | wc -l`;
# number when the tag was set # number when the tag was set
$bcontribs = `git show $start:docs/THANKS | grep -c '^[^ ]'`; $bcontribs = `git show $start:docs/THANKS | grep -c '^[^ ]'`;
# delta # delta