Skip to content

Replace checkAUTHORS.pl with updateAUTHORS.pl/updateAUTHORS.pm, allow users to be excluded #20070

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

Merged
merged 25 commits into from
Aug 21, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
e62ea43
.mailmap/AUTHORS - remove duplicate listing
demerphq Aug 7, 2022
50aea5c
t/porting/podcheck.t - ignore .bak files
demerphq Aug 20, 2022
faf09f1
testsuite.yml - fix and rename "authors" CI workflow to "authors_invo…
demerphq Aug 18, 2022
3080cdd
t/porting/update_authors.t - initial tests for Porting/updateAUTHORS.pl
demerphq Aug 20, 2022
8f62dc8
updateAUTHORS.pl - split into module Porting/updateAUTHORS.pm
demerphq Aug 11, 2022
0438153
updateAUTHORS.pm - use object to store state and avoid passing args
demerphq Aug 11, 2022
d25a087
updateAUTHORS.pl - use Getopt::Long in "hash ref" mode
demerphq Aug 18, 2022
2e7d7a9
updateAUTHORS.pl - add support for verbose
demerphq Aug 11, 2022
1431e69
updateAUTHORS.pm - don't update files if they don't change
demerphq Aug 11, 2022
840ba1a
updateAUTHORS.pl - add support for a commit range
demerphq Aug 18, 2022
5444298
updateAUTHORS.pm - use _file suffix for methods that read/update files
demerphq Aug 18, 2022
e9f20d3
updateAUTHORS.p[lm] - add exclusion support
demerphq Aug 12, 2022
e58a007
updateAUTHORS.p[lm] - add support for reports like checkAUTHORS.pl has
demerphq Aug 11, 2022
aa5ae3e
updateAUTHORS.pm - Fix windows support for git operations
demerphq Aug 8, 2022
f3fd4c2
updateAUTHORS.pm - use fc() for sorting, and improved subs to do so
demerphq Aug 11, 2022
06c01df
updateAUTHORS.pl - Add debugging option
demerphq Aug 11, 2022
610f181
AUTHORS - update the blurb
demerphq Aug 11, 2022
d9b19b4
updateAUTHORS.pl - add support for --tap
demerphq Aug 12, 2022
68c63de
updateAUTHORS.pl - improved pod explanations
demerphq Aug 11, 2022
1fdf4f2
updateAUTHORS.pm - remove redundant data from .mailmap
demerphq Aug 9, 2022
cfaf6ac
updateAUTHORS.p[lm] - Add a way to rename authors properly
demerphq Aug 9, 2022
0671d12
checkAUTHORS.pl - delete and replace with updateAUTHORS.pl
demerphq Aug 11, 2022
6961db7
AUTHORS, .mailmap - resolve issue #20010
demerphq Aug 11, 2022
53a96b0
AUTHORS - remove GitHub (and exclude it explicitly)
demerphq Aug 20, 2022
17f95b8
updateAUTHORS.p[lm] - add testing for dupe names and emails in AUTHORS
demerphq Aug 20, 2022
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
6 changes: 4 additions & 2 deletions .github/workflows/testsuite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
# \__ \ ' \/ _ \ / / -_) | || ' \| _/ _ \ '_| ' \/ _` | _| / _ \ ' \(_-<
# |___/_|_|_\___/_\_\___| |___|_||_|_| \___/_| |_|_|_\__,_|\__|_\___/_||_/__/

authors:
involved_authors_debug:
runs-on: ubuntu-latest
if: ( github.event.pull_request.head.repo.full_name == 'Perl/perl5' || github.repository == 'Perl/perl5' ) && github.base_ref != ''
continue-on-error: true
Expand All @@ -47,7 +47,9 @@ jobs:
BASE_REF: ${{ github.base_ref }}
- name: Involved authors
run: |
git log --pretty=format:"Author: %an <%ae>" origin/${BASE_REF}...${SHA}^2 | sort -u
echo "Authors from origin/${BASE_REF}..${SHA}^2"
echo "specifically: $(git rev-parse origin/${BASE_REF})..$(git rev-parse ${SHA}^2)"
git log --pretty=format:"Author: %aN <%aE>" origin/${BASE_REF}..${SHA}^2 | sort | uniq -c
env:
BASE_REF: ${{ github.base_ref }}
SHA: ${{ github.sha }}
Expand Down
1,061 changes: 4 additions & 1,057 deletions .mailmap

Large diffs are not rendered by default.

15 changes: 7 additions & 8 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,13 @@
# is strictly forbidden. (Passive distribution with the Perl source
# code kit is, of course, allowed.)
#
# This should contain the preferred addresses. Alternate addresses are in
# Porting/checkAUTHORS.pl.
#
# updated_by: ./Porting/checkAUTHORS.pl --update --from=v5.30.0
# This file contains the "canonical" or "preferred" details for our
# contributors, and is managed by the Porting/updateAUTHORS.pl script,
# along with .mailmap and Porting/exclude_contrib.txt. Generally you
# should use the script to make any changes to this file, especially if
# you wish to remove yourself. If you wish to register a new email
# against one of these names you should update the .mailmap file
# instead.
--
A. C. Yardley <[email protected]>
A. Sinan Unur <[email protected]>
Expand Down Expand Up @@ -445,7 +448,6 @@ Eric Brine <[email protected]>
Eric E. Coe <[email protected]>
Eric Fifer <[email protected]>
Eric Herman <[email protected]>
Eric Lindblad <[email protected]>
Eric Melville
Eric Promislow <[email protected]>
Erich Rickheit
Expand Down Expand Up @@ -501,7 +503,6 @@ Gideon Israel Dsouza <[email protected]>
Giles Lean <[email protected]>
Giovanni Tataranni <[email protected]>
Gisle Aas <[email protected]>
GitHub <[email protected]>
Glenn D. Golden <[email protected]>
Glenn Linderman <[email protected]>
Gomar <[email protected]>
Expand Down Expand Up @@ -1259,7 +1260,6 @@ Simon Glover <[email protected]>
Simon Leinen
Simon Parsons <[email protected]>
Simon Schubert <[email protected]>
Sinan Unur <[email protected]>
Sisyphus <[email protected]>
Sizhe Zhao <[email protected]>
Slaven Rezic <[email protected]>
Expand Down Expand Up @@ -1397,7 +1397,6 @@ Vincent Pit <[email protected]>
Vishal Bhatia <[email protected]>
Vitali Peil <[email protected]>
vividsnow <[email protected]>
vividsnow @vividsnow
Vlad Harchev <[email protected]>
Vladimir Alexiev <[email protected]>
Vladimir Marek <[email protected]>
Expand Down
5 changes: 3 additions & 2 deletions MANIFEST
Original file line number Diff line number Diff line change
Expand Up @@ -5394,7 +5394,6 @@ Porting/bisect-runner.pl Tool to be called by git bisect run
Porting/bump-perl-version bump the perl version in relevant files
Porting/check-cpan-pollution Check for commits that may wrongly touch CPAN distros
Porting/checkansi.pl Check source code for ANSI-C violations
Porting/checkAUTHORS.pl Check that the AUTHORS file is complete
Porting/checkcfguse.pl Check that config symbols are being used
Porting/checkcfgvar.pl Check that config scripts define all symbols
Porting/checkpodencoding.pl Check POD encoding
Expand All @@ -5413,6 +5412,7 @@ Porting/corelist-perldelta.pl Generates data perldelta from Module::CoreList
Porting/deparse-skips.txt List of test files to ignore/skip for deparse tests.
Porting/docs-team-charter.pod Perl Documentation Team charter
Porting/epigraphs.pod the release epigraphs used over the years
Porting/exclude_contrib.txt Data about contributors that do not want to be listed in AUTHORS
Porting/exec-bit.txt List of files that get +x in release tarball
Porting/exercise_makedef.pl Brute force testing for makedef.pl
Porting/expand-macro.pl A tool to expand C macro definitions in the Perl source
Expand Down Expand Up @@ -5459,6 +5459,7 @@ Porting/timecheck.c Test program for the 2038 fix
Porting/timecheck2.c Test program for the 2038 fix
Porting/todo.pod Perl things to do
Porting/updateAUTHORS.pl Tool to automatically update AUTHORS and .mailmap from git log data
Porting/updateAUTHORS.pm Brains of updateAUTHORS.pl
Porting/valgrindpp.pl Summarize valgrind reports
Porting/vote_admin_guide.pod Perlgov Vote Administrator guide
pp.c Push/Pop code
Expand Down Expand Up @@ -6080,7 +6081,6 @@ t/porting/known_pod_issues.dat Data file for porting/podcheck.t
t/porting/libperl.t Check libperl.a sanity
t/porting/maintainers.t Test that Porting/Maintainers.pl is up to date
t/porting/manifest.t Test that this MANIFEST file is well formed
t/porting/pending-author.t Check if any pending commit would break tests
t/porting/perlfunc.t Test that Functions_pm.PL can parse perlfunc.pod
t/porting/pod_rules.t Check that various pod lists are consistent
t/porting/podcheck.t Test the POD of shipped modules is well formed
Expand All @@ -6089,6 +6089,7 @@ t/porting/readme.t Check that all files in Porting/ are mentioned in Porting/RE
t/porting/regen.t Check that regen.pl doesn't need running
t/porting/ss_dup.t Check that sv.c:ss_dup handles everything
t/porting/test_bootstrap.t Test that the instructions for test bootstrapping aren't accidentally overlooked.
t/porting/update_authors.t Tests for Porting/updateAUTHORS.pl
t/porting/utils.t Check that utility scripts still compile
t/re/alpha_assertions.t See if things like '(*postive_lookahed:...) work properly
t/re/anyof.t See if bracketed char classes [...] compile properly
Expand Down
19 changes: 11 additions & 8 deletions Porting/README.pod
Original file line number Diff line number Diff line change
Expand Up @@ -37,12 +37,6 @@ number in various files within the perl source.

Check source code for ANSI-C violations.

=head2 F<checkAUTHORS.pl>

Used by F<t/porting/authors.t> to ensure the F<AUTHORS> list is up to
date. See also L<< /"F<updateAUTHORS.pl>" >> for a way to automatically
fix issues found by this tool.

=head2 F<checkcfguse.pl>

Check where the symbols defined in the various F<config.sh>-clones
Expand Down Expand Up @@ -146,6 +140,11 @@ The charter of the Perl Documentation Team

List of Perl release epigraphs.

=head2 F<exclude_contrib.txt>

List of base 64 encoded SHA256 digests of C<< "name <email>" >> data
which should be ignored by F<updateAUTHORS.pl>.

=head2 F<exec-bit.txt>

This file contains a list of files that F<makerel> will ensure get an
Expand Down Expand Up @@ -381,10 +380,15 @@ any previous attempts.
=head2 F<updateAUTHORS.pl>

This script will automatically update AUTHORS and create .mailmap entries
based on the git commit log history. If F<checkAUTHORS.pl> complains
based on the git commit log history. If F<t/porting/authors.t> complains
during testing you should run this. It will automatically fix most if not
all AUTHORS related test fails.

=head2 F<updateAUTHORS.pm>

The class used by F<updateAUTHORS.pl> to do its business. Package name
C<Porting::updateAUTHORS>.

=head2 F<valgrindpp.pl>

A post-processor for C<make test.valgrind>. F<valgrindpp.pl> is a
Expand All @@ -398,4 +402,3 @@ leaks.
Guide for Vote Administrators for running Steering Council elections.

=cut

2 changes: 1 addition & 1 deletion Porting/acknowledgements.pl
Original file line number Diff line number Diff line change
Expand Up @@ -163,5 +163,5 @@ sub commify {
# returns a list of the authors
sub authors {
return
qx(git log --pretty=fuller $since_until | $^X Porting/checkAUTHORS.pl --who -);
qx($^X Porting/updateAUTHORS.pl --who $since_until);
}
Loading