Skip to content

Commit b1aef3c

Browse files
committed
checkAUTHORS.pl -> updateAUTHORS.pl in all cases
This removes C<checkAUTHORS.pl> and replaces it in nearly all use cases with C<updateAUTHORS.pl>. The only use case I am aware of that is not supported is piping a set of commit info to a file so it can be parsed separately, and interfacing with github to look up github accounts. C<updateAUTHORS.pl> wasn't doing this anyway so it shouldn't matter much. Virtually every option supported by C<checkAUTHORS.pl> is supported by C<updateAUTHORS.pl>, along with multiple new features, with more to come. This patch updates t/porting/authors.t to use C<updateAUTHORS.pl> for verifying that the AUTHORS and .mailmap data is up to date. Keeping checkAUTHORS.pl in sync with how updateAUTHORS.pl works once the excluded contributors file was created was a pain. There are new reporting options as well. --files will show the files modified during the time period, --activity will show the same but sorted by lines added, --chainsaw will show the same but sorted lines removed. Using any of the files related options will likely be slow if you do it on the full history. As part of this patch the code in the tool has been split in two. That defining options to the tool stayed where it was, that implementing the internal logic has been moved to F<Porting/updateAUTHORS.pm>. This removes one test file F<t/porting/pending-authors.t> as I couldn't figure out why it was necessary. I am pretty sure it should not be anymore.
1 parent eb59277 commit b1aef3c

File tree

10 files changed

+1340
-2166
lines changed

10 files changed

+1340
-2166
lines changed

MANIFEST

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5386,7 +5386,6 @@ Porting/bisect-runner.pl Tool to be called by git bisect run
53865386
Porting/bump-perl-version bump the perl version in relevant files
53875387
Porting/check-cpan-pollution Check for commits that may wrongly touch CPAN distros
53885388
Porting/checkansi.pl Check source code for ANSI-C violations
5389-
Porting/checkAUTHORS.pl Check that the AUTHORS file is complete
53905389
Porting/checkcfguse.pl Check that config symbols are being used
53915390
Porting/checkcfgvar.pl Check that config scripts define all symbols
53925391
Porting/checkpodencoding.pl Check POD encoding
@@ -5452,6 +5451,7 @@ Porting/timecheck.c Test program for the 2038 fix
54525451
Porting/timecheck2.c Test program for the 2038 fix
54535452
Porting/todo.pod Perl things to do
54545453
Porting/updateAUTHORS.pl Tool to automatically update AUTHORS and .mailmap from git log data
5454+
Porting/updateAUTHORS.pm Brains of updateAUTHORS.pl
54555455
Porting/valgrindpp.pl Summarize valgrind reports
54565456
Porting/vote_admin_guide.pod Perlgov Vote Administrator guide
54575457
pp.c Push/Pop code
@@ -6073,7 +6073,6 @@ t/porting/known_pod_issues.dat Data file for porting/podcheck.t
60736073
t/porting/libperl.t Check libperl.a sanity
60746074
t/porting/maintainers.t Test that Porting/Maintainers.pl is up to date
60756075
t/porting/manifest.t Test that this MANIFEST file is well formed
6076-
t/porting/pending-author.t Check if any pending commit would break tests
60776076
t/porting/perlfunc.t Test that Functions_pm.PL can parse perlfunc.pod
60786077
t/porting/pod_rules.t Check that various pod lists are consistent
60796078
t/porting/podcheck.t Test the POD of shipped modules is well formed

Porting/README.pod

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,6 @@ number in various files within the perl source.
3737

3838
Check source code for ANSI-C violations.
3939

40-
=head2 F<checkAUTHORS.pl>
41-
42-
Used by F<t/porting/authors.t> to ensure the F<AUTHORS> list is up to
43-
date. See also L<< /"F<updateAUTHORS.pl>" >> for a way to automatically
44-
fix issues found by this tool.
45-
4640
=head2 F<checkcfguse.pl>
4741

4842
Check where the symbols defined in the various F<config.sh>-clones
@@ -149,7 +143,7 @@ List of Perl release epigraphs.
149143
=head2 F<exclude_contrib.txt>
150144

151145
List of base 64 encoded SHA256 digests of C<< "name <email>" >> data
152-
which should be ignored by F<checkAUTHORS.pl> and F<updateAUTHORS.pl>.
146+
which should be ignored by F<updateAUTHORS.pl>.
153147

154148
=head2 F<exec-bit.txt>
155149

@@ -386,10 +380,15 @@ any previous attempts.
386380
=head2 F<updateAUTHORS.pl>
387381

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

387+
=head2 F<updateAUTHORS.pm>
388+
389+
The class used by F<updateAUTHORS.pl> to do its business. Package name
390+
C<Porting::updateAUTHORS>.
391+
393392
=head2 F<valgrindpp.pl>
394393

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

405404
=cut
406-

Porting/acknowledgements.pl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,5 +163,5 @@ sub commify {
163163
# returns a list of the authors
164164
sub authors {
165165
return
166-
qx(git log --pretty=fuller $since_until | $^X Porting/checkAUTHORS.pl --who -);
166+
qx($^X Porting/updateAUTHORS.pl --who $since_until);
167167
}

0 commit comments

Comments
 (0)