This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta: Insert missing =item
[perl5.git] / pod / perldelta.pod
index 8ed52b7..db8bcb6 100644 (file)
 
 =head1 NAME
 
-perldelta - what is new for perl v5.21.3
+[ this is a template for a new perldelta file.  Any text flagged as XXX needs
+to be processed before release. ]
+
+perldelta - what is new for perl v5.21.4
 
 =head1 DESCRIPTION
 
-This document describes differences between the 5.21.2 release and the 5.21.3
+This document describes differences between the 5.21.3 release and the 5.21.4
 release.
 
-If you are upgrading from an earlier release such as 5.21.1, first read
-L<perl5212delta>, which describes differences between 5.21.1 and 5.21.2.
+If you are upgrading from an earlier release such as 5.21.2, first read
+L<perl5213delta>, which describes differences between 5.21.2 and 5.21.3.
+
+=head1 Notice
+
+XXX Any important notices here
 
 =head1 Core Enhancements
 
-=head2 C<defined(@array = LIST)> is no longer fatal
+XXX New core language features go here.  Summarize user-visible core language
+enhancements.  Particularly prominent performance optimisations could go
+here, but most should go in the L</Performance Enhancements> section.
 
-In 5.21.1, C<defined(@array)> was made fatal.  This has been relaxed
-to not die if the argument is assigning to an array.
+[ List each enhancement as a =head2 entry ]
 
-=head2 Floating point parsing has been improved
+=head2 Infinity and NaN (not-a-number) handling improved
 
-Parsing and printing of floating point values has been improved.
+Floating point values are able to hold the special values infinity
+(also -infinity), and NaN (not-a-number).  Now we more robustly recognize
+and propagate the value in computations, and on output normalize them
+to C<Inf> and C<NaN>.
 
-As a completely new feature, hexadecimal floating point literals
-(like 0x1.23p-4)  are now supported, and they can be output with
-C<printf %a>.
+See also the L<POSIX> enhancements.
 
 =head1 Security
 
-=head2 The L<Safe> module could allow outside packages to be replaced
+XXX Any security-related notices go here.  In particular, any security
+vulnerabilities closed should be noted here rather than in the
+L</Selected Bug Fixes> section.
 
-Critical bugfix: outside packages could be replaced.  L<Safe> has
-been patched to 2.38 to address this.
+[ List each security issue as a =head2 entry ]
 
 =head1 Incompatible Changes
 
-=head2 S<C<use UNIVERSAL '...'>> is now a fatal error
+XXX For a release on a stable branch, this section aspires to be:
 
-Importing functions from C<UNIVERSAL> has been deprecated since v5.12, and
-is now a fatal error.  S<C<"use UNIVERSAL">> without any arguments is still
-allowed.
+    There are no changes intentionally incompatible with 5.XXX.XXX
+    If any exist, they are bugs, and we request that you submit a
+    report.  See L</Reporting Bugs> below.
 
-=head1 Modules and Pragmata
+[ List each incompatible change as a =head2 entry ]
 
-=head2 Updated Modules and Pragmata
+=head2 Changes to the C<*> prototype
+
+The C<*> character in a subroutine's prototype used to allow barewords
+to take precedence over most, but not all subroutines.  It was never
+consistent and exhibited buggy behaviour.
+
+Now it has been changed, so subroutines always take precedence over
+barewords, which brings it into conformity with similarly prototyped
+built-in functions:
+
+    sub splat($) { ... }
+    sub foo { ... }
+    splat(foo); # now always splat(foo())
+    splat(bar); # still splat('bar') as before
+    close(foo); # close(foo())
+    close(bar); # close('bar')
+
+=head1 Deprecations
+
+XXX Any deprecated features, syntax, modules etc. should be listed here.
+
+=head2 Module removals
+
+XXX Remove this section if inapplicable.
+
+The following modules will be removed from the core distribution in a
+future release, and will at that time need to be installed from CPAN.
+Distributions on CPAN which require these modules will need to list them as
+prerequisites.
+
+The core versions of these modules will now issue C<"deprecated">-category
+warnings to alert you to this fact.  To silence these deprecation warnings,
+install the modules in question from CPAN.
+
+Note that these are (with rare exceptions) fine modules that you are encouraged
+to continue to use.  Their disinclusion from core primarily hinges on their
+necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
+not usually on concerns over their design.
+
+=over
+
+=item XXX
+
+XXX Note that deprecated modules should be listed here even if they are listed
+as an updated module in the L</Modules and Pragmata> section.
+
+=back
+
+[ List each other deprecation as a =head2 entry ]
+
+=head1 Performance Enhancements
+
+XXX Changes which enhance performance without changing behaviour go here.
+There may well be none in a stable release.
+
+[ List each enhancement as a =item entry ]
 
 =over 4
 
 =item *
 
-L<B::Debug> has been upgraded from version 1.19 to 1.21.
+Subroutines with an empty prototype and bodies containing just C<undef> are
+now eligible for inlining.  [perl #122728]
+
+=back
+
+=head1 Modules and Pragmata
+
+XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
+go here.  If Module::CoreList is updated, generate an initial draft of the
+following sections using F<Porting/corelist-perldelta.pl>.  A paragraph summary
+for important changes should then be added by hand.  In an ideal world,
+dual-life modules would have a F<Changes> file that could be cribbed.
+
+[ Within each section, list entries as a =item entry ]
+
+=head2 New Modules and Pragmata
+
+=over 4
 
 =item *
 
-L<Config::Perl::V> has been upgraded from version 0.20 to 0.22.
+XXX
+
+=back
+
+=head2 Updated Modules and Pragmata
+
+=over 4
 
 =item *
 
-L<CPAN::Meta> has been upgraded from version 2.141520 to 2.142060.
+L<XXX> has been upgraded from version A.xx to B.yy.
 
 =item *
 
-L<CPAN::Meta::Requirements> has been upgraded from version 2.125 to 2.126.
+L<B::Concise> has been upgraded from version 0.992 to 0.993.
 
 =item *
 
-L<ExtUtils::CBuilder> was moved from F<dist> to F<cpan>.
+L<B::Deparse> has been upgraded from version 1.27 to 1.28.
+
+It now deparses C<our(I<LIST>)> and typed lexical (C<my Dog $spot>)
+correctly.
 
 =item *
 
-L<ExtUtils::CBuilder> has been upgraded from version 0.280216 to 0.280217.
+L<CPAN::Meta::Requirements> has been upgraded from version 2.126 to 2.128.
 
 =item *
 
-L<ExtUtils::Install> was moved from F<dist> to F<cpan>.
+L<ExtUtils::CBuilder> has been upgraded from version 0.280216 to 0.280219.
+[perl #122675].
 
 =item *
 
-L<ExtUtils::Manifest> has been upgraded from version 1.64 to 1.65.
-It was also moved from F<dist> to F<cpan>.
+L<ExtUtils::Manifest> has been upgraded from version 1.65 to 1.66.
+[perl #122415].
 
 =item *
 
-L<HTTP::Tiny> has been upgraded from version 0.043 to 0.047.
+L<ExtUtils::ParseXS>:  Documentation has been added to
+F<ExtUtils-ParseXS/lib/perlxs.pod> concerning handling of locales when writing
+XS code.
 
 =item *
 
-L<IPC::Open3> has been upgraded from version 1.17 to 1.18.
+L<File::Find> has been upgraded from version 1.27 to 1.28.
+
+C<find()> and C<finddepth()> will now warn if passed inappropriate or
+misspelled options.
 
 =item *
 
-L<Module::CoreList> has been upgraded from version 5.021002 to 5.021003.
+L<Getopt::Std> has been upgraded from version 1.10 to 1.11.
 
 =item *
 
-L<Opcode> has been upgraded from version 1.27 to 1.28.
+L<HTTP::Tiny> has been upgraded from version 0.047 to 0.048.
 
 =item *
 
-L<perl5db.pl> has been upgraded from version 1.45 to 1.46.
+L<Module::CoreList> has been upgraded from version 5.021003 to 5.021004.
 
 =item *
 
-L<perlfaq> has been upgraded from version 5.0150044 to 5.0150045.
+L<POSIX> has been upgraded from version 1.42 to 1.43.
+
+The C99 math functions and constants (for example acosh, round,
+M_E, M_PI) have been added.
 
 =item *
 
-L<POSIX> has been upgraded from version 1.41 to 1.42.
+L<Pod::Perldoc> has been upgraded from version 3.23 to 3.24.
 
 =item *
 
-L<Safe> has been upgraded from version 2.37 to 2.38.
+Scalar-List-Utils has been upgraded from version 1.40 to 1.41.
 
 =item *
 
-L<Socket> has been upgraded from version 2.014 to 2.015.
+L<constant> has been upgraded from version 1.31 to 1.32.
+
+It now accepts fully-qualified constant names, allowing constants to be
+defined in packages other than the caller.
 
 =item *
 
-L<Sys::Hostname> has been upgraded from version 1.18 to 1.19
+L<threads> has been upgraded from version 1.95 to 1.96.
+
+=back
+
+=head2 Removed Modules and Pragmata
+
+=over 4
 
 =item *
 
-L<UNIVERSAL> has been upgraded from version 1.11 to 1.12.
+XXX
 
 =back
 
 =head1 Documentation
 
+XXX Changes to files in F<pod/> go here.  Consider grouping entries by
+file and be sure to link to the appropriate page, e.g. L<perlfunc>.
+
+=head2 New Documentation
+
+XXX Changes which create B<new> files in F<pod/> go here.
+
+=head3 L<XXX>
+
+XXX Description of the purpose of the new file here
+
 =head2 Changes to Existing Documentation
 
-=head3 L<perlexperiment>
+XXX Changes which significantly change existing files in F<pod/> go here.
+However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
+section.
+
+=head3 L<XXX>
 
 =over 4
 
 =item *
 
-Added reference to L<feature>.
+XXX Description of the change here
+
+=item *
+
+L<perlsyn>: An ambiguity in the documentation of the Ellipsis statement has
+been corrected. [perl #122661]
 
 =back
 
-=head3 L<perlguts>
+=head1 Diagnostics
+
+The following additions or changes have been made to diagnostic output,
+including warnings and fatal error messages.  For the complete list of
+diagnostic messages, see L<perldiag>.
+
+XXX New or changed warnings emitted by the core's C<C> code go here.  Also
+include any changes in L<perldiag> that reconcile it to the C<C> code.
+
+=head2 New Diagnostics
+
+XXX Newly added diagnostic messages go under here, separated into New Errors
+and New Warnings
+
+=head3 New Errors
 
 =over 4
 
 =item *
 
-Details on C level symbols and libperl.t added.
+XXX L<message|perldiag/"message">
 
 =back
 
-=head3 L<perlhacktips>
+=head3 New Warnings
 
 =over 4
 
 =item *
 
-Recommended replacements for tmpfile, atoi, strtol, and strtoul added.
+XXX L<message|perldiag/"message">
 
 =back
 
-=head3 L<perlop>
+=head2 Changes to Existing Diagnostics
+
+XXX Changes (i.e. rewording) of diagnostic messages go here
 
 =over 4
 
 =item *
 
-ASCII v. EBCDIC clarifications added.
+XXX Describe change here
 
 =back
 
-=head3 L<perlsec>
+=head2 Diagnostic Removals
 
 =over 4
 
 =item *
 
-Comments added on algorithmic complexity and tied hashes.
+"Constant is not a FOO reference"
 
-=back
+Compile-time checking of constant dereferencing (e.g.,
+C<< my_constant->() >>) has been removed, since it was not taking
+overloading into account.  [perl #69456] [perl #122607]
 
-=head3 L<perlvms>
+=item *
 
-=over 4
+The warning "Ambiguous use of -foo resolved as -&foo()" has been removed.
+There is actually no ambiguity here, and this impedes the use of negated
+constants; e.g., C<-Inf>.
 
 =item *
 
-Updated documentation on environment and shell interaction in VMS.
+The little-known C<my Class $var> syntax (see L<fields> and L<attributes>)
+could get confused in the scope of C<use utf8> if C<Class> were a constant
+whose value contained Latin-1 characters.
 
 =back
 
-=head1 Diagnostics
+=head1 Utility Changes
 
-The following additions or changes have been made to diagnostic output,
-including warnings and fatal error messages.  For the complete list of
-diagnostic messages, see L<perldiag>.
+XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
+Most of these are built within the directory F<utils>.
 
-=head2 New Diagnostics
+[ List utility changes as a =head2 entry for each utility and =item
+entries for each change
+Use L<XXX> with program names to get proper documentation linking. ]
 
-=head3 New Errors
+=head2 L<XXX>
 
 =over 4
 
 =item *
 
-L<Hexadecimal float: internal error|perldiag/"Hexadecimal float: internal error">
+XXX
 
-(F) Something went horribly bad in hexadecimal float handling.
+=back
 
-=item *
+=head1 Configuration and Compilation
 
-L<Hexadecimal float: unsupported long double format|perldiag/"Hexadecimal float: unsupported long double format">
+XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
+go here.  Any other changes to the Perl build process should be listed here.
+However, any platform-specific changes should be listed in the
+L</Platform Support> section, instead.
 
-(F) You have configured Perl to use long doubles but
-the internals of the long double format are unknown,
-therefore the hexadecimal float output is impossible.
+[ List changes as a =item entry ].
+
+=over 4
+
+=item *
+
+XXX
 
 =back
 
-=head3 New Warnings
+=head1 Testing
+
+XXX Any significant changes to the testing of a freshly built perl should be
+listed here.  Changes which create B<new> files in F<t/> go here as do any
+large changes to the testing harness (e.g. when parallel testing was added).
+Changes to existing files in F<t/> aren't worth summarizing, although the bugs
+that they represent may be covered elsewhere.
+
+[ List each test improvement as a =item entry ]
 
 =over 4
 
 =item *
 
-L<Hexadecimal float: exponent overflow|perldiag/"Hexadecimal float: exponent overflow">
+XXX
 
-(W overflow) The hexadecimal floating point has larger exponent
-than the floating point supports.
+=back
 
-=item *
+=head1 Platform Support
 
-L<Hexadecimal float: exponent underflow|perldiag/"Hexadecimal float: exponent underflow">
+XXX Any changes to platform support should be listed in the sections below.
 
-(W overflow) The hexadecimal floating point has smaller exponent
-than the floating point supports.
+[ Within the sections, list each platform as a =item entry with specific
+changes as paragraphs below it. ]
 
-=item *
+=head2 New Platforms
 
-L<Hexadecimal float: mantissa overflow|perldiag/"Hexadecimal float: mantissa overflow">
+XXX List any platforms that this version of perl compiles on, that previous
+versions did not.  These will either be enabled by new files in the F<hints/>
+directories, or new subdirectories and F<README> files at the top level of the
+source tree.
 
-(W overflow) The hexadecimal floating point literal had more bits in
-the mantissa (the part between the 0x and the exponent, also known as
-the fraction or the significand) than the floating point supports.
+=over 4
 
-=item *
+=item XXX-some-platform
+
+XXX
+
+=back
 
-L<Hexadecimal float: precision loss|perldiag/"Hexadecimal float: precision loss">
+=head2 Discontinued Platforms
 
-(W overflow) The hexadecimal floating point had internally more
-digits than could be output.  This can be caused by unsupported
-long double formats, or by 64-bit integers not being available
-(needed to retrieve the digits under some configurations).
+XXX List any platforms that this version of perl no longer compiles on.
+
+=over 4
+
+=item XXX-some-platform
+
+XXX
 
 =back
 
-=head2 Changes to Existing Diagnostics
+=head2 Platform-Specific Notes
+
+XXX List any changes for specific platforms.  This could include configuration
+and compilation changes or changes in portability/compatibility.  However,
+changes within modules for platforms should generally be listed in the
+L</Modules and Pragmata> section.
 
 =over 4
 
-=item *
+=item XXX-some-platform
 
-C<require> with no argument or undef used to warn about a Null filename; now
-it dies with C<Missing or undefined argument to require>.
+XXX
 
 =back
 
-=head1 Configuration and Compilation
+=head1 Internal Changes
+
+XXX Changes which affect the interface available to C<XS> code go here.  Other
+significant internal changes for future core maintainers should be noted as
+well.
+
+[ List each change as a =item entry ]
 
 =over 4
 
 =item *
 
-MurmurHash64A and MurmurHash64B can now be configured as the internal hash
-function.
+C<save_re_context> no longer does anything and has been moved to
+F<mathoms.c>.
 
 =back
 
-=head1 Platform Support
+=head1 Selected Bug Fixes
 
-=head2 Platform-Specific Notes
+XXX Important bug fixes in the core language are summarized here.  Bug fixes in
+files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
+
+[ List each fix as a =item entry ]
 
 =over 4
 
-=item Android
+=item *
 
-Build support has been improved for cross-compiling in general and for
-Android in particular.
+XXX
 
-=item Solaris
+=item *
 
-C<c99> options have been cleaned up, hints look for C<solstudio>
-as well as C<SUNWspro>, and support for native C<setenv> has been added.
+Constant dereferencing now works correctly for typeglob constants.
+Previously the glob was stringified and its name looked up.  Now the glob
+itself is used.  [perl #69456]
 
-=item VMS
+=item *
 
-C<finite>, C<finitel>, and C<isfinite> detection has been added to
-C<configure.com>, environment handling has had some minor changes, and
-a fix for legacy feature checking status.
+When parsing a funny character ($ @ % &) followed by braces, the parser no
+longer tries to guess whether it is a block or a hash constructor (causing
+a syntax error when it guesses the latter), since it can only be a block.
 
-=item Windows
+=item *
 
-C<%I64d> is now being used instead of C<%lld> for MinGW.
+C<undef $reference> now frees the referent immediately, instead of hanging
+on to it until the next statement.  [perl #122556]
 
-=back
+=item *
 
-=head1 Internal Changes
+Various cases where the name of a sub is used (autoload, overloading, error
+messages) used to crash for lexical subs, but have been fixed.
 
-=over 4
+=item *
+
+Bareword lookup now tries to avoid vivifying packages if it turns out the
+bareword is not going to be a subroutine name.
 
 =item *
 
-Added L<perlapi/sync_locale>.
-Changing the program's locale should be avoided by XS code.  Nevertheless,
-certain non-Perl libraries called from XS, such as C<Gtk> do so.  When this
-happens, Perl needs to be told that the locale has changed.  Use this function
-to do so, before returning to Perl.
+Compilation of anonymous constants (e.g., C<sub () { 3 }>) no longer
+deletes any subroutine named C<__ANON__> in the current package.  Not only
+was C<*__ANON__{CODE}> cleared, but there was a memory leak, too.  This bug
+goes back to perl 5.8.0. 
 
 =item *
 
-Added L<perlapi/grok_atou> as a safer replacement for atoi and strtol.
+Stub declarations like C<sub f;> and C<sub f ();> no longer wipe out
+constants of the same name declared by C<use constant>.  This bug was
+introduced in perl 5.10.0.
 
-=back
+=item *
 
-=head1 Selected Bug Fixes
+Under some conditions a warning raised in compilation of regular
+expression patterns could be displayed multiple times.  This is now
+fixed.
 
-=over 4
+=item *
+
+C<qr/[\N{named sequence}]/> now works properly in many instances.  Some
+names known to C<\N{...}> refer to a sequence of multiple characters,
+instead of the usual single character.  Bracketed character classes
+generally only match single characters, but now special handling has
+been added so that they can match named sequences, but not if the class
+is inverted or the sequence is specified as the beginning or end of a
+range.  In these cases, the only behavior change from before is a slight
+rewording of the fatal error message given when this class is part of a
+C<?[...])> construct.  When the C<[...]> stands alone, the same
+non-fatal warning as before is raised, and only the first character in
+the sequence is used, again just as before.
+
+=item *
+
+Tainted constants evaluated at compile time no longer cause unrelated
+statements to become tainted.  [perl #122669]
+
+=item *
+
+C<open $$fh, ...>, which vivifies a handle with a name like "main::_GEN_0",
+was not giving the handle the right reference count, so a double free could
+happen.
+
+=item *
+
+When deciding that a bareword was a method name, the parser would get
+confused if an "our" sub with the same name existed, and look up the method
+in the package of the "our" sub, instead of the package of the invocant.
+
+=item *
+
+The parser no longer gets confused by C<\U=> within a double-quoted string.
+It used to roduce a syntax error, but now compiles it correctly.
+[perl #80368]
+
+=item *
+
+It has always been the intention for the C<-B> and C<-T> file test
+operators to treat UTF-8 encoded files as text.
+(L<perlfunc|perlfunc/-X FILEHANDLE> has been updated to say this.)
+Previously, it was possible for some files to be considered UTF-8 that
+actually weren't valid UTF-8.  This is now fixed.  The operators now
+work on EBCDIC platforms as well.
 
 =item *
 
-Failing to compile C<use Foo> in an eval could leave a spurious
-C<BEGIN> subroutine definition, which would produce a "Subroutine
-BEGIN redefined" warning on the next use of C<use>, or other C<BEGIN>
-block.  [perl #122107]
+Under some conditions warning messages raised during regular expression
+pattern compilation were being output more than once.  This has now been
+fixed.
 
 =item *
 
-C<method { BLOCK } ARGS> syntax now correctly parses the arguments if they
-begin with an opening brace.  [perl #46947]
+A regression has been fixed that was introduced in v5.20.0 (fixed in
+v5.20.1 as well as here) in which a UTF-8 encoded regular expression
+pattern that contains a single ASCII lowercase letter does not match its
+uppercase counterpart. [perl #122655]
 
 =item *
 
-External libraries and Perl may have different ideas of what the locale is.
-This is problematic when parsing version strings if the locale's numeric
-separator has been changed.  Version parsing has been patched to ensure
-it handles the locales correctly.  [perl #121930]
+Constant folding could incorrectly suppress warnings if lexical warnings
+(C<use warnings> or C<no warnings>) were not in effect and C<$^W> were
+false at compile time and true at run time.
 
 =item *
 
-A bug has been fixed where zero-length assertions and code blocks inside of a
-regex could cause C<pos> to see an incorrect value.  [perl #122460]
+Loading UTF8 tables during a regular expression match could cause assertion
+failures under debugging builds if the previous match used the very same
+regular expression.  [perl #122747]
+
+=item *
+
+Thread cloning used to work incorrectly for lexical subs, possibly causing
+crashes or double frees on exit.
 
 =back
 
-=head1 Acknowledgements
+=head1 Known Problems
+
+XXX Descriptions of platform agnostic bugs we know we can't fix go here.  Any
+tests that had to be C<TODO>ed for the release would be noted here.  Unfixed
+platform specific bugs also go here.
+
+[ List each fix as a =item entry ]
+
+=over 4
+
+=item *
 
-Perl 5.21.3 represents approximately 4 weeks of development since Perl 5.21.2
-and contains approximately 21,000 lines of changes across 250 files from 25
-authors.
+XXX
 
-Excluding auto-generated files, documentation and release tools, there were
-approximately 18,000 lines of changes to 160 .pm, .t, .c and .h files.
+=back
+
+=head1 Errata From Previous Releases
+
+=over 4
+
+=item *
+
+XXX Add anything here that we forgot to add, or were mistaken about, in
+the perldelta of a previous release.
 
-Perl continues to flourish into its third decade thanks to a vibrant community
-of users and developers. The following people are known to have contributed the
-improvements that became Perl 5.21.3:
+=back
 
-Aaron Crane, Abigail, Alberto Simões, Andy Dougherty, Brian Fraser, Chad
-Granum, Chris 'BinGOs' Williams, Craig A. Berry, Dagfinn Ilmari Mannsåker,
-Daniel Dragan, David Mitchell, Father Chrysostomos, H.Merijn Brand, James E
-Keenan, Jan Dubois, Jarkko Hietaniemi, Karen Etheridge, Karl Williamson, Lukas
-Mai, Peter Martini, Rafael Garcia-Suarez, syber, Tony Cook, Vladimir Marek,
-Yves Orton.
+=head1 Obituary
 
-The list above is almost certainly incomplete as it is automatically generated
-from version control history. In particular, it does not include the names of
-the (very much appreciated) contributors who reported issues to the Perl bug
-tracker.
+XXX If any significant core contributor has died, we've added a short obituary
+here.
+
+=head1 Acknowledgements
 
-Many of the changes included in this version originated in the CPAN modules
-included in Perl's core. We're grateful to the entire CPAN community for
-helping Perl to flourish.
+XXX Generate this with:
 
-For a more complete list of all of Perl's historical contributors, please see
-the F<AUTHORS> file in the Perl source distribution.
+  perl Porting/acknowledgements.pl v5.21.3..HEAD
 
 =head1 Reporting Bugs