| =head1 NAME |
| |
| perl586delta - what is new for perl v5.8.6 |
| |
| =head1 DESCRIPTION |
| |
| This document describes differences between the 5.8.5 release and |
| the 5.8.6 release. |
| |
| =head1 Incompatible Changes |
| |
| There are no changes incompatible with 5.8.5. |
| |
| =head1 Core Enhancements |
| |
| The perl interpreter is now more tolerant of UTF-16-encoded scripts. |
| |
| On Win32, Perl can now use non-IFS compatible LSPs, which allows Perl to |
| work in conjunction with firewalls such as McAfee Guardian. For full details |
| see the file F<README.win32>, particularly if you're running Win95. |
| |
| =head1 Modules and Pragmata |
| |
| =over 4 |
| |
| =item * |
| |
| With the C<base> pragma, an intermediate class with no fields used to messes |
| up private fields in the base class. This has been fixed. |
| |
| =item * |
| |
| Cwd upgraded to version 3.01 (as part of the new PathTools distribution) |
| |
| =item * |
| |
| Devel::PPPort upgraded to version 3.03 |
| |
| =item * |
| |
| File::Spec upgraded to version 3.01 (as part of the new PathTools distribution) |
| |
| =item * |
| |
| Encode upgraded to version 2.08 |
| |
| =item * |
| |
| ExtUtils::MakeMaker remains at version 6.17, as later stable releases currently |
| available on CPAN have some issues with core modules on some core platforms. |
| |
| =item * |
| |
| I18N::LangTags upgraded to version 0.35 |
| |
| =item * |
| |
| Math::BigInt upgraded to version 1.73 |
| |
| =item * |
| |
| Math::BigRat upgraded to version 0.13 |
| |
| =item * |
| |
| MIME::Base64 upgraded to version 3.05 |
| |
| =item * |
| |
| POSIX::sigprocmask function can now retrieve the current signal mask without |
| also setting it. |
| |
| =item * |
| |
| Time::HiRes upgraded to version 1.65 |
| |
| =back |
| |
| =head1 Utility Changes |
| |
| Perl has a new -dt command-line flag, which enables threads support in the |
| debugger. |
| |
| =head1 Performance Enhancements |
| |
| C<reverse sort ...> is now optimized to sort in reverse, avoiding the |
| generation of a temporary intermediate list. |
| |
| C<for (reverse @foo)> now iterates in reverse, avoiding the generation of a |
| temporary reversed list. |
| |
| =head1 Selected Bug Fixes |
| |
| The regexp engine is now more robust when given invalid utf8 input, as is |
| sometimes generated by buggy XS modules. |
| |
| C<foreach> on threads::shared array used to be able to crash Perl. This bug |
| has now been fixed. |
| |
| A regexp in C<STDOUT>'s destructor used to coredump, because the regexp pad |
| was already freed. This has been fixed. |
| |
| C<goto &> is now more robust - bugs in deep recursion and chained C<goto &> |
| have been fixed. |
| |
| Using C<delete> on an array no longer leaks memory. A C<pop> of an item from a |
| shared array reference no longer causes a leak. |
| |
| C<eval_sv()> failing a taint test could corrupt the stack - this has been |
| fixed. |
| |
| On platforms with 64 bit pointers numeric comparison operators used to |
| erroneously compare the addresses of references that are overloaded, rather |
| than using the overloaded values. This has been fixed. |
| |
| C<read> into a UTF8-encoded buffer with an offset off the end of the buffer |
| no longer mis-calculates buffer lengths. |
| |
| Although Perl has promised since version 5.8 that C<sort()> would be |
| stable, the two cases C<sort {$b cmp $a}> and C<< sort {$b <=> $a} >> could |
| produce non-stable sorts. This is corrected in perl5.8.6. |
| |
| Localising C<$^D> no longer generates a diagnostic message about valid -D |
| flags. |
| |
| =head1 New or Changed Diagnostics |
| |
| For -t and -T, |
| Too late for "-T" option |
| has been changed to the more informative |
| "-T" is on the #! line, it must also be used on the command line |
| |
| =head1 Changed Internals |
| |
| From now on all applications embedding perl will behave as if perl |
| were compiled with -DPERL_USE_SAFE_PUTENV. See "Environment access" in |
| the F<INSTALL> file for details. |
| |
| Most C<C> source files now have comments at the top explaining their purpose, |
| which should help anyone wishing to get an overview of the implementation. |
| |
| =head1 New Tests |
| |
| There are significantly more tests for the C<B> suite of modules. |
| |
| =head1 Reporting Bugs |
| |
| If you find what you think is a bug, you might check the articles |
| recently posted to the comp.lang.perl.misc newsgroup and the perl |
| bug database at http://bugs.perl.org. There may also be |
| information at http://www.perl.org, the Perl Home Page. |
| |
| If you believe you have an unreported bug, please run the B<perlbug> |
| program included with your release. Be sure to trim your bug down |
| to a tiny but sufficient test case. Your bug report, along with the |
| output of C<perl -V>, will be sent off to perlbug@perl.org to be |
| analysed by the Perl porting team. You can browse and search |
| the Perl 5 bugs at http://bugs.perl.org/ |
| |
| =head1 SEE ALSO |
| |
| The F<Changes> file for exhaustive details on what changed. |
| |
| The F<INSTALL> file for how to build Perl. |
| |
| The F<README> file for general stuff. |
| |
| The F<Artistic> and F<Copying> files for copyright information. |
| |
| =cut |