Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix issue that without terminal the AUTHORS.md file was emptied #118

Merged
merged 1 commit into from
Oct 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 3 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -422,19 +422,15 @@ authors: AUTHORS.md
@echo "Makefile: $@ done."

# Make sure the AUTHORS.md file is up to date but has the old date when it did
# not change to prevent redoing dependent targets. In GitHub Actions, the
# 'git shortlog' command does not return authors anymore since around 8/2024.
# This is tolerated by leaving the file unchanged.
# not change to prevent redoing dependent targets.
AUTHORS.md: _always
echo "# Authors of this project" >AUTHORS.md.tmp
echo "" >>AUTHORS.md.tmp
echo "Sorted list of authors derived from git commit history:" >>AUTHORS.md.tmp
echo '```' >>AUTHORS.md.tmp
sh -c "git shortlog --summary --email | cut -f 2 | sort >log.tmp"
sh -c "cat log.tmp >>AUTHORS.md.tmp"
sh -c "git shortlog --summary --email HEAD | cut -f 2 | sort >>AUTHORS.md.tmp"
echo '```' >>AUTHORS.md.tmp
sh -c "if ! grep -q '[^[:space:]]' log.tmp; then echo 'Warning - git shortlog does not display any authors - leaving AUTHORS.md file unchanged'; else if ! diff -q AUTHORS.md.tmp AUTHORS.md; then echo 'Updating AUTHORS.md as follows:'; diff AUTHORS.md.tmp AUTHORS.md; mv AUTHORS.md.tmp AUTHORS.md; else echo 'AUTHORS.md was already up to date'; fi; fi"
sh -c "rm -f log.tmp AUTHORS.md.tmp"
sh -c "if ! diff -q AUTHORS.md.tmp AUTHORS.md; then echo 'Updating AUTHORS.md as follows:'; diff AUTHORS.md.tmp AUTHORS.md; mv AUTHORS.md.tmp AUTHORS.md; else echo 'AUTHORS.md was already up to date'; rm AUTHORS.md.tmp; fi"

.PHONY: clean
clean:
Expand Down
2 changes: 0 additions & 2 deletions changes/noissue.1.feature.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
Dev: Automatically update AUTHORS.md when building the distribution archives.
The update is tolerant when 'git shortlog' does not show any authors - it then
issues a warning and leaves the existing file unchanged.
3 changes: 3 additions & 0 deletions changes/noissue.2.fix.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Dev: In the make commands to create/update AUTHORS.md, added a reftag to the
'git shortlog' command to fix the issue that without a terminal (e.g. in GitHub
Actions), the command did not display any authors.