X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/db98b5a25ac5537be04f17243c5e929aceb3560b..a6c70abe1db5debf058e2e9a2f5feef94859fe44:/pod/perldelta.pod diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 5819b80..b579688 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -1,483 +1,170 @@ =encoding utf8 -=for comment -This has been completed up to 0aae26c14, except for: -803e389 rurban CYG17 utf8 paths -d9298c1 rurban mymalloc isn't thread safe - =head1 NAME -[ 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.15.8 +perldelta - what is new for perl v5.15.9 =head1 DESCRIPTION -This document describes differences between the 5.15.7 release and -the 5.15.8 release. +This document describes differences between the 5.15.8 release and +the 5.15.9 release. -If you are upgrading from an earlier release such as 5.15.6, first read -L, which describes differences between 5.15.6 and -5.15.7. +If you are upgrading from an earlier release such as 5.15.7, first read +L, which describes differences between 5.15.7 and +5.15.8. =head1 Notice -XXX Any important notices here +This space intentionally left blank. =head1 Core Enhancements -XXX New core language features go here. Summarise user-visible core language -enhancements. Particularly prominent performance optimisations could go -here, but most should go in the L section. - -[ List each enhancement as a =head2 entry ] - -=head2 Improved ability to mix locales and Unicode, including UTF-8 locales - -An optional parameter has been added to C - - use locale ':not_characters'; - -which tells Perl to use all but the C and C -portions of the current locale. Instead, the character set is assumed -to be Unicode. This allows locales and Unicode to be seamlessly mixed, -including the increasingly frequent UTF-8 locales. When using this -hybrid form of locales, the C<:locale> layer to the L pragma can -be used to interface with the file system, and there are CPAN modules -available for ARGV and environment variable conversions. - -Full details are in L. - -=head2 New function C and corresponding escape sequence C<\F> for Unicode foldcase - -Unicode foldcase is an extension to lowercase that gives better results -when comparing two strings case-insensitively. It has long been used -internally in regular expression C matching. Now it is available -explicitly through the new C function call (enabled by -S>, or C, or explicitly callable via -C) or through the new C<\F> sequence in double-quotish -strings. - -Full details are in L. - -=head2 C<_> in subroutine prototypes - -The C<_> character in subroutine prototypes is now allowed before C<@> or -C<%>. - -=head2 Supports (I) Unicode 6.1 - -Besides the addition of whole new scripts, and new characters in -existing scripts, this new version of Unicode, as always, makes some -changes to existing characters. One change that may trip up some -applications is that the General Category of two characters in the -Latin-1 range, PILCROW SIGN and SECTION SIGN, has been changed from -Other_Symbol to Other_Punctuation. The same change has been made for -a character in each of Tibetan, Ethiopic, and Aegean. -The code points U+3248..U+324F (CIRCLED NUMBER TEN ON BLACK SQUARE -through CIRCLED NUMBER EIGHTY ON BLACK SQUARE) have had their General -Category changed from Other_Symbol to Other_Numeric. The Line Break -property has changes for Hebrew and Japanese; and as a consequence of -other changes in 6.1, the Perl regular expression construct C<\X> now -works differently for some characters in Thai and Lao. - -New aliases (synonyms) have been defined for many property values; -these, along with the previously existing ones, are all cross indexed in -L. - -The return value of C is affected by other -changes: - - Code point Old Name New Name - U+000A LINE FEED (LF) LINE FEED - U+000C FORM FEED (FF) FORM FEED - U+000D CARRIAGE RETURN (CR) CARRIAGE RETURN - U+0085 NEXT LINE (NEL) NEXT LINE - U+008E SINGLE-SHIFT 2 SINGLE-SHIFT-2 - U+008F SINGLE-SHIFT 3 SINGLE-SHIFT-3 - U+0091 PRIVATE USE 1 PRIVATE USE-1 - U+0092 PRIVATE USE 2 PRIVATE USE-2 - U+2118 SCRIPT CAPITAL P WEIERSTRASS ELLIPTIC FUNCTION - -Perl will accept any of these names as input, but -C now returns the new name of each pair. The -change for U+2118 is considered by Unicode to be a correction, that is -the original name was a mistake (but again, it will remain forever valid -to use it to refer to U+2118). But most of these changes are the -fallout of the mistake Unicode 6.0 made in naming a character used in -Japanese cell phones to be "BELL", which conflicts with the long -standing industry use of (and Unicode's recommendation to use) that name -to mean the ASCII control character at U+0007. As a result, that name -has been deprecated in Perl since v5.14; and any use of it will raise a -warning message (unless turned off). The name "ALERT" is now the -preferred name for this code point, with "BEL" being an acceptable short -form. The name for the new cell phone character, at code point U+1F514, -remains undefined in this version of Perl (hence we don't quite -implement all of Unicode 6.1), but starting in v5.18, BELL will mean -this character, and not U+0007. - -Unicode has taken steps to make sure that this sort of mistake does not -happen again. The Standard now includes all the generally accepted -names and abbreviations for control characters, whereas previously it -didn't (though there were recommended names for most of them, which Perl -used). This means that most of those recommended names are now -officially in the Standard. Unicode did not recommend names for the -four code points listed above between U+008E and U+008F, and in -standardizing them Unicode subtly changed the names that Perl had -previously given them, by replacing the final blank in each name by a -hyphen. Unicode also officially accepts names that Perl had deprecated, -such as FILE SEPARATOR. Now the only deprecated name is BELL. -Finally, Perl now uses the new official names instead of the old -(now considered obsolete) names for the first four code points in the -list above (the ones which have the parentheses in them). - -Now that the names have been placed in the Unicode standard, these kinds -of changes should not happen again, though corrections, such as to -U+2118, are still possible. - -Unicode also added some name abbreviations, which Perl now accepts: -SP for SPACE; -TAB for CHARACTER TABULATION; -NEW LINE, END OF LINE, NL, and EOL for LINE FEED; -LOCKING-SHIFT ONE for SHIFT OUT; -LOCKING-SHIFT ZERO for SHIFT IN; -and ZWNBSP for ZERO WIDTH NO-BREAK SPACE. - -More details on this version of Unicode are provided in -L. - -=head2 Added C - -This function is designed to replace the deprecated L -function. It includes an extra parameter to make sure it doesn't read -past the end of the input buffer. - -=head1 Security +=head2 C<< no feature; >> now means reset to default -XXX Any security-related notices go here. In particular, any security -vulnerabilities closed should be noted here rather than in the -L section. +C<< no feature >> now resets to the default feature set. To disable all +features (which is likely to be a pretty special-purpose request, since +it presumably won't match any named set of semantics) you can now +write C<< no feature ':all' >>. -[ List each security issue as a =head2 entry ] +=head1 Security -=head2 Use C and not C +=head2 Malformed UTF-8 input could cause attempts to read beyond the end of the buffer -The latter function is now deprecated because its API is insufficient to -guarantee that it doesn't read (up to 12 bytes in the worst case) beyond -the end of its input string. See -L. +Two new XS-accessible functions, C and +C are now available to prevent this, and the Perl +core has been converted to use them. +See L. =head1 Incompatible Changes -XXX For a release on a stable branch, this section aspires to be: - - 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 below. - -[ List each incompatible change as a =head2 entry ] - -=head2 Special blocks called in void context - -Special blocks (C, C, C, C, C) are now -called in void context. This avoids wasteful copying of the result of the -last statement [perl #108794]. - -=head2 The C pragma and regexp objects - -With C, regular expression objects returned by C are -now stringified as "Regexp=REGEXP(0xbe600d)" instead of the regular -expression itself [perl #108780]. - -=head2 Two XS typemap Entries removed - -Two presumably unused XS typemap entries have been removed from the -core typemap: T_DATAUNIT and T_CALLBACK. If you are, against all odds, -a user of these, please see the instructions on how to regain them -in L. - -=head2 Unicode 6.1 has incompatibilities with Unicode 6.0 - -These are detailed in L above. - -=head2 Changed returns for some properties in C - -The return values for C have been changed for some -properties to make the returned lists significantly smaller. This -allows those lists to be searched faster. - -This function was introduced earlier in the v5.15 series of releases, -and the API will not be considered stable until v5.16. - -See L for details on the new interface. - -=head2 C<$$> and C no longer emulate POSIX semantics under LinuxThreads - -The POSIX emulation of C<$$> and C under the obsolete -LinuxThreads implementation has been removed (the C<$$> emulation was -actually removed in v5.15.0). This only impacts users of Linux 2.4 and -users of Debian GNU/kFreeBSD up to and including 6.0, not the vast -majority of Linux installations that use NPTL threads. - -This means that C like C<$$> is now always guaranteed to -return the OS's idea of the current state of the process, not perl's -cached version of it. +=head2 C<< no feature; >> -See the documentation for L<$$|perlvar/$$> for details. - -=head2 Which Non-ASCII characters get quoted by C and C<\Q> has changed - -This is unlikely to result in a real problem, as Perl does not attach -special meaning to any non-ASCII character, so it is currently -irrelevant which are quoted or not. This change fixes bug [perl #77654] and -bring Perl's behavior more into line with Unicode's recommendations. -See L. +C now means reset to default. =head1 Deprecations -XXX Any deprecated features, syntax, modules etc. should be listed here. -In particular, deprecated modules should be listed here even if they are -listed as an updated module in the L section. +=head2 Literal C<< "{" >> characters in regular expressions. -[ List each deprecation as a =head2 entry ] +It has been documented that the current plans include requiring a +literal C<< "{" >> to be escaped: 5.18 will emit deprecation warnings, +and it will be required in 5.20. -=head2 C +=head2 XS functions C and C -This function is deprecated because it could read beyond the end of the -input string. Use the new L -instead. +Use C and C instead. +See L. =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 * -XXX +Fix a slowdown in freeing nested hashes. This may speedup the exit of +certain programs. =back =head1 Modules and Pragmata -XXX All changes to installed files in F, F, F and F -go here. If Module::CoreList is updated, generate an initial draft of the -following sections using F, which prints stub -entries to STDOUT. Results can be pasted in place of the '=head2' entries -below. A paragraph summary for important changes should then be added by hand. -In an ideal world, dual-life modules would have a F file that could be -cribbed. - -[ Within each section, list entries as a =item entry ] - -=head2 New Modules and Pragmata - -=over 4 - -=item * - -The C PerlIO layer is no longer implemented by perl itself, but has -been moved out into the new L module. - -=back - =head2 Updated Modules and Pragmata =over 4 =item * -L has been upgraded from version 0.03 to version 0.04. - -List slices no longer modify items on the stack belonging to outer lists -[perl #109570]. +C has been upgraded from version 0.17 to 0.18. =item * -L has been upgraded from version 1.33 to version 1.34. - -C now has a C method, corresponding to a new internal -field added in 5.15.4 [perl #108860]. +C has been upgraded from version 1.29 to 1.30. =item * -L has been upgraded from version 1.24 to version 1.25. +C has been upgraded from version 1.26 to 1.27. -It now puts a dot after the file and line number, just like errors from -C [perl #106538]. +C now means reset to default. The code has been refactored +to reduce duplication. =item * -L has been upgraded from version 2.045 to version 2.049. +C has been upgraded from version 1.12 to 1.13. =item * -L has been upgraded from version 2.045 to version 2.048. +C has been upgraded from version 1.13 to 1.14. =item * -L has been upgraded from version 2.046 to version 2.048. +C has been upgraded from version 2.120351 to 2.120630. =item * -L has been upgraded from version 2.113640 to version 2.120351. - -Work around a memory leak bug involving version objects in boolean context. +C has been upgraded from version 0.9118 to 0.9121. =item * -L has been upgraded from version 0.005 to version 0.007. +C has been upgraded from version 2.135_05 to 2.135_06. =item * -L has been upgraded from version 0.9116 to version 0.9118. +C has been upgraded from version 5.70 to 5.71. =item * -L has been upgraded from version 0.60 to version 0.62. +C has been upgraded from version 0.280205 to 0.280206. =item * -L has been upgraded from version 1.824 to version 1.826. +C has been upgraded from version 0.016 to 0.017. =item * -L has been upgraded from version 1.27 to version 1.28. - -When searching for F, it no longer uses paths that were only -relevant on Perl 5.004 and earlier. +C has been upgraded from version 2.60 to 2.63. =item * -L has been upgraded from version 3.12 to version 3.15. - -The new version comes with important tools for sharing typemaps between -different CPAN distributions. +C has been upgraded from version 1.14 to 1.1501. =item * -L has been upgraded from version 2.21 to version 2.23. - -It no longer emits warnings when copying files with newlines in their names -[perl #109104]. +C has been upgraded from version 3.15_15 to 3.17. =item * -L has been upgraded from version 0.72 to version 0.76. +C has been upgraded from version 3.19 to 3.20. =item * -L has been upgraded from version 1.58 to version 1.59. - -This avoids a new core warning. +C has been upgraded from version 1.98 to 2.000. =item * -L has been upgraded from version 1.000007 to version 1.000009. - -Adds C method to generate a CPAN META provides data structure -correctly; use of C is discouraged. +C has been upgraded from version 1.08 to 1.09. =item * -L has been upgraded from version 1.4401 to version 1.4402. +C has been upgraded from version 0.87 to 0.89. =item * -L has been upgraded from version 5.0150038 to version 5.0150039. +C has been upgraded from version 1.13 to 1.14. =item * -L has been upgraded from version 1.04 to version 1.05. - -F is now generated at perl build time from annotations in -F. This will ensure that L and L -remain in synchronisation. - -=item * - -L has been upgraded from version 1.37 to version 1.51. - -=item * - -L has been upgraded from version 1.07 to version 1.08. - -Its C method now supports L event loops, and not just -L. A more general mechanism has been proposed, so this may be reverted -before Perl 5.16 [perl #108470]. - -=item * - -L has been upgraded from version 1.97 to version 1.98. +C has been upgraded from version 0.41 to 0.42. =item * -L has been upgraded from version 1.9724 to version 1.9725. - -C no longer corrupts the Perl stack. - -=item * - -L has been upgraded from version 0.39 to 0.40. - -The only change is to fix a formatting error in the Pod. - -=item * - -L has been upgraded from version 0.101021 to version 0.101022. +C has been upgraded from version 0.36 to 0.37. =back -=head2 Removed Modules and Pragmata - -=over 4 - -=item * - -F has been added, to test that changes to -F do not inadvertently break the build of L. - -=back =head1 Documentation -XXX Changes to files in F go here. Consider grouping entries by -file and be sure to link to the appropriate page, e.g. L. - -=head2 New Documentation - -XXX Changes which create B files in F go here. - -=head3 L - -The new manual describes the XS typemapping mechanism in unprecedented -detail and combines new documentation with information extracted from -L and the previously unofficial list of all core typemaps. - -=head3 L - -XXX Description of the purpose of the new file here - -=head2 Changes to Existing Documentation - -XXX Changes which significantly change existing files in F go here. -However, any changes to F should go in the L -section. - -=head3 L - -=over 4 - -=item * - -XXX Description of the change here - -=back +There has been no significant change in the documentation between +5.15.8 and 5.15.9. =head1 Diagnostics @@ -485,317 +172,196 @@ 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. -XXX New or changed warnings emitted by the core's C code go here. Also -include any changes in L that reconcile it to the C code. - -[ Within each section, list entries as a =item entry that links to perldiag, - e.g. - - =item * - - L -] - =head2 New Diagnostics -XXX Newly added diagnostic messages go here - =head3 New Errors -=over 4 - -=item * - -XXX L - -=back +Compared to 5.15.8, 5.15.9 does not introduce new errors. =head3 New Warnings -=over 4 - -=item * - -XXX L - -=back +Compared to 5.15.8, 5.15.9 does not introduce new errors, but see +L =head2 Changes to Existing Diagnostics -XXX Changes (i.e. rewording) of diagnostic messages go here - =over 4 =item * -XXX Describe change here +L, which replaces +C<< lvalue attribute cannot be removed after the subroutine has been defined >>. =back =head1 Utility Changes -XXX Changes to installed programs such as F and F go -here. Most of these are built within the directories F and F. - -[ List utility changes as a =head3 entry for each utility and =item -entries for each change -Use L with program names to get proper documentation linking. ] - -=head3 L - -=over 4 - -=item * - -XXX - -=back +No utilities changed between 5.15.8 and 5.15.9. =head1 Configuration and Compilation -XXX Changes to F, F, F, 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 section, instead. - -[ List changes as a =item entry ]. - =over 4 =item * -XXX +C<< perlfunc.html >> is now being generated again. [perl #107870] =back =head1 Testing -XXX Any significant changes to the testing of a freshly built perl should be -listed here. Changes which create B files in F go here as do any -large changes to the testing harness (e.g. when parallel testing was added). -Changes to existing files in F aren't worth summarising, although the bugs -that they represent may be covered elsewhere. - -[ List each test improvement as a =item entry ] - =over 4 =item * -XXX - -=item * - -The test suite for typemaps has been extended to cover a larger fraction of -the core typemaps. +F<< t/op/require_37033.t >> has been added, to test that C +always closes the file handle that it opens. Previously, it had been +leaking the file handle if it happened to have file descriptor 0, which +would happen if C was called (explicitly or implicitly) when +C had been closed. =back =head1 Platform Support -XXX Any changes to platform support should be listed in the sections below. - -[ Within the sections, list each platform as a =item entry with specific -changes as paragraphs below it. ] - -=head2 New Platforms - -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 -directories, or new subdirectories and F files at the top level of the -source tree. - -=over 4 - -=item XXX-some-platform - -XXX - -=back - -=head2 Discontinued Platforms - -XXX List any platforms that this version of perl no longer compiles on. - -=over 4 - -=item XXX-some-platform - -XXX - -=back - -=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 section. - -=over 4 - -=item XXX-some-platform - -XXX - -=back +There have been no changes to Perl's support of various platforms between +5.15.8 and 5.15.9. =head1 Internal Changes -XXX Changes which affect the interface available to C code go here. -Other significant internal changes for future core maintainers should -be noted as well. +=over 4 -[ List each change as a =item entry ] +=item * -=over 4 +Two new functions C and C have +been added. These are the same as C and +C (which are now deprecated), but take an extra parameter +that is used to guard against reading beyond the end of the input +string. +See L and L. =item * -XXX +The regular expression engine now does TRIE case insensitive matches +under Unicode. This may change the output of C<< use re 'debug'; >>, +and will speed up various things. =back =head1 Selected Bug Fixes -XXX Important bug fixes in the core language are summarised here. -Bug fixes in files in F and F are best summarised in -L. - -[ List each fix as a =item entry ] - =over 4 =item * -C<~~> now correctly handles the precedence of Any~~Object, and is not tricked -by an overloaded object on the left-hand side. +I now matches two more characters under the C +property. This corrects a Unicode 6.1 omission. =item * -C no longer warns about unopened filehandles [perl #71002]. +C<< perlfunc.html >> is now being generated again. [perl #107870] =item * -C on an unopened filehandle now warns consistently, instead of -skipping the warning at times. +C<< $$ >> is no longer tainted. Since this value comes directly from +C<< getpid() >>, it is always safe. =item * -A change in an earlier 5.15 release caused warning hints to propagate into -C. This has been fixed [rt.cpan.org #72767]. +Fix leaking a file handle. [perl #37033] =item * -Starting with 5.12.0, Perl used to get its internal bookkeeping muddled up -after assigning C<${ qr// }> to a hash element and locking it with -L. This could result in double frees, crashes or erratic -behaviour. +An off-by-one error caused C<< /[:upper:]/ >> and C<< /[:punct:]/ >> to +unexpectedly match characters with code points above 255. This has been +rectified. [perl 111400]. =item * -In 5.15.7, some typeglobs in the CORE namespace were made read-only by -mistake. This has been fixed [rt.cpan.org #74289]. +C<< (?foo: ...) >> no longer loses passed in character set. =item * -C<-t> now works when stacked with other filetest operators [perl #77388]. +Allow attributes to set C<< :lvalue >> on a defined sub. [perl 107366]. =item * -Stacked filetest operators now only call FETCH once on a tied argument. +C<< die; >> with a non-reference, non-string value in $@ now properly +propagates that value [perl #111654]. =item * -C would sometimes refuse to match at the end of a string that ends -with "\n". This has been fixed [perl #109206]. +C<< Term::ReadLine >> now uses AnyEvent instead of Tk for an event loop. -=item * - -C and C now match identically (when not -under a differing locale). This fixes a regression introduced in 5.14 -in which the first expression could match characters outside of ASCII, -such as the KELVIN SIGN. +=back -=item * +=head1 Known Problems -Method calls whose arguments were all surrounded with C or C -(as in C<<$object->method(my($a,$b)) >>) used to force lvalue context on -the subroutine. This would prevent lvalue methods from returning certain -values. Due to lvalue fixes earlier in the 5.15.x series, it would also -prevent non-lvalue methods from being called [perl #109264]. +This is a list of some significant unfixed bugs, which need to be +resolved before 5.16.0 -=for comment -This bug I affect earlier stable releases. It is just the last -sentence that does not apply to 5.14. +=over 4 -=item * +=item F<< op/sigdispatch.t >> fails alarm test 14 and gets killed [perl #89718] -The C C function no longer tries to modify its argument, -resulting in errors [perl #108994]. +=item Perl crash due to wrong delimiter in C<< PATH >> environment [perl #94846] -=item * +It's possible to crash Win32 if the wrong delimiter is used. -C now works properly with magical variables. +=item Corrupt UTF8 [perl #79960, #100058] -=item * +It is possible to read an invalid UTF8 character, but have it marked valid, +or to incorrectly read UTF8 characters if C<< $/ >> is set to read fixed +length records. -C now works properly non-PVs. +=item UTF8 patches for 5.16 [perl #107008] -=item * +Brian Fraser's work on UTF8 needs further integration. -C and C now use locale rules under -C when the platform supports that. Previously, they used -the platform's native character set. +=item C is broken on Windows [perl #109718] -=item * +This is a known test failure to be fixed before 5.16.0. -A regression introduced in 5.13.6 was fixed. This involved an inverted -bracketed character class in a regular expression that consisted solely -of a Unicode property, that property wasn't getting inverted outside the -Latin1 range. +=item Warnings from cpan/IO-Compress [perl #110736] -=item * +Some tests in F<< cpan/IO-Compress/t/cz-03zlib-v1.t >> issues a +"isn't numeric" warning in blead, but not in maint. -C now quotes consistently the same non-ASCII characters under -C, regardless of whether the string is -encoded in UTF-8 or not, hence fixing the last vestiges (we hope) of the -infamous L. [perl #77654]. +=item C<< Pod-Html >> test failures on Windows. -Which of these code points is quoted has changed, based on Unicode's -recommendations. See L for details. +A number of tests for C<< Pod::Html >> fail under Windows, due to an +incorrect assumption by the test scripts about capitalization of the +network drive. =back -=head1 Known Problems - -XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any -tests that had to be Ced for the release would be noted here, unless -they were specific to a particular platform (see below). - -This is a list of some significant unfixed bugs, which are regressions -from either 5.XXX.XXX or 5.XXX.XXX. - -[ List each fix as a =item entry ] - -=over 4 - -=item * +=head1 Acknowledgements -XXX +Perl 5.15.9 represents approximately 4 weeks of development since Perl 5.15.8 +and contains approximately 79,000 lines of changes across 530 files from 23 +authors. -=back +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.15.9: -=head1 Obituary +Aaron Crane, Abigail, Chris 'BinGOs' Williams, Craig A. Berry, Dave Rolsky, +David Cantrell, David Golden, David Mitchell, Eric Brine, Father Chrysostomos, +Florian Ragwitz, James E Keenan, Jesse Vincent, Karl Williamson, Marc Green, +Max Maischein, Nicholas Clark, Pau Amma, Reini Urban, Ricardo Signes, Tony +Cook, Yves Orton, Zefram. -XXX If any significant core contributor has died, we've added a short obituary -here. - -=head1 Acknowledgements +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 Generate this with: +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. - perl Porting/acknowledgements.pl v5.15.7..HEAD +For a more complete list of all of Perl's historical contributors, please see +the F file in the Perl source distribution. =head1 Reporting Bugs