Initial Commit
This commit is contained in:
257
database/perl/lib/pods/perl585delta.pod
Normal file
257
database/perl/lib/pods/perl585delta.pod
Normal file
@@ -0,0 +1,257 @@
|
||||
=head1 NAME
|
||||
|
||||
perl585delta - what is new for perl v5.8.5
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This document describes differences between the 5.8.4 release and
|
||||
the 5.8.5 release.
|
||||
|
||||
=head1 Incompatible Changes
|
||||
|
||||
There are no changes incompatible with 5.8.4.
|
||||
|
||||
=head1 Core Enhancements
|
||||
|
||||
Perl's regular expression engine now contains support for matching on the
|
||||
intersection of two Unicode character classes. You can also now refer to
|
||||
user-defined character classes from within other user defined character
|
||||
classes.
|
||||
|
||||
=head1 Modules and Pragmata
|
||||
|
||||
=over 4
|
||||
|
||||
=item *
|
||||
|
||||
Carp improved to work nicely with Safe. Carp's message reporting should now
|
||||
be anomaly free - it will always print out line number information.
|
||||
|
||||
=item *
|
||||
|
||||
CGI upgraded to version 3.05
|
||||
|
||||
=item *
|
||||
|
||||
charnames now avoids clobbering $_
|
||||
|
||||
=item *
|
||||
|
||||
Digest upgraded to version 1.08
|
||||
|
||||
=item *
|
||||
|
||||
Encode upgraded to version 2.01
|
||||
|
||||
=item *
|
||||
|
||||
FileCache upgraded to version 1.04
|
||||
|
||||
=item *
|
||||
|
||||
libnet upgraded to version 1.19
|
||||
|
||||
=item *
|
||||
|
||||
Pod::Parser upgraded to version 1.28
|
||||
|
||||
=item *
|
||||
|
||||
Pod::Perldoc upgraded to version 3.13
|
||||
|
||||
=item *
|
||||
|
||||
Pod::LaTeX upgraded to version 0.57
|
||||
|
||||
=item *
|
||||
|
||||
Safe now works properly with Carp
|
||||
|
||||
=item *
|
||||
|
||||
Scalar-List-Utils upgraded to version 1.14
|
||||
|
||||
=item *
|
||||
|
||||
Shell's documentation has been re-written, and its historical partial
|
||||
auto-quoting of command arguments can now be disabled.
|
||||
|
||||
=item *
|
||||
|
||||
Test upgraded to version 1.25
|
||||
|
||||
=item *
|
||||
|
||||
Test::Harness upgraded to version 2.42
|
||||
|
||||
=item *
|
||||
|
||||
Time::Local upgraded to version 1.10
|
||||
|
||||
=item *
|
||||
|
||||
Unicode::Collate upgraded to version 0.40
|
||||
|
||||
=item *
|
||||
|
||||
Unicode::Normalize upgraded to version 0.30
|
||||
|
||||
=back
|
||||
|
||||
=head1 Utility Changes
|
||||
|
||||
=head2 Perl's debugger
|
||||
|
||||
The debugger can now emulate stepping backwards, by restarting and rerunning
|
||||
all bar the last command from a saved command history.
|
||||
|
||||
=head2 h2ph
|
||||
|
||||
F<h2ph> is now able to understand a very limited set of C inline functions
|
||||
-- basically, the inline functions that look like CPP macros. This has
|
||||
been introduced to deal with some of the headers of the newest versions of
|
||||
the glibc. The standard warning still applies; to quote F<h2ph>'s
|
||||
documentation, I<you may need to dicker with the files produced>.
|
||||
|
||||
=head1 Installation and Configuration Improvements
|
||||
|
||||
Perl 5.8.5 should build cleanly from source on LynxOS.
|
||||
|
||||
=head1 Selected Bug Fixes
|
||||
|
||||
=over 4
|
||||
|
||||
=item *
|
||||
|
||||
The in-place sort optimisation introduced in 5.8.4 had a bug. For example,
|
||||
in code such as
|
||||
|
||||
@a = sort ($b, @a)
|
||||
|
||||
the result would omit the value $b. This is now fixed.
|
||||
|
||||
=item *
|
||||
|
||||
The optimisation for unnecessary assignments introduced in 5.8.4 could give
|
||||
spurious warnings. This has been fixed.
|
||||
|
||||
=item *
|
||||
|
||||
Perl should now correctly detect and read BOM-marked and (BOMless) UTF-16
|
||||
scripts of either endianness.
|
||||
|
||||
=item *
|
||||
|
||||
Creating a new thread when weak references exist was buggy, and would often
|
||||
cause warnings at interpreter destruction time. The known bug is now fixed.
|
||||
|
||||
=item *
|
||||
|
||||
Several obscure bugs involving manipulating Unicode strings with C<substr> have
|
||||
been fixed.
|
||||
|
||||
=item *
|
||||
|
||||
Previously if Perl's file globbing function encountered a directory that it
|
||||
did not have permission to open it would return immediately, leading to
|
||||
unexpected truncation of the list of results. This has been fixed, to be
|
||||
consistent with Unix shells' globbing behaviour.
|
||||
|
||||
=item *
|
||||
|
||||
Thread creation time could vary wildly between identical runs. This was caused
|
||||
by a poor hashing algorithm in the thread cloning routines, which has now
|
||||
been fixed.
|
||||
|
||||
=item *
|
||||
|
||||
The internals of the ithreads implementation were not checking if OS-level
|
||||
thread creation had failed. threads->create() now returns C<undef> in if
|
||||
thread creation fails instead of crashing perl.
|
||||
|
||||
=back
|
||||
|
||||
=head1 New or Changed Diagnostics
|
||||
|
||||
=over 4
|
||||
|
||||
=item *
|
||||
|
||||
Perl -V has several improvements
|
||||
|
||||
=over 4
|
||||
|
||||
=item *
|
||||
|
||||
correctly outputs local patch names that contain embedded code snippets
|
||||
or other characters that used to confuse it.
|
||||
|
||||
=item *
|
||||
|
||||
arguments to -V that look like regexps will give multiple lines of output.
|
||||
|
||||
=item *
|
||||
|
||||
a trailing colon suppresses the linefeed and ';' terminator, allowing
|
||||
embedding of queries into shell commands.
|
||||
|
||||
=item *
|
||||
|
||||
a leading colon removes the 'name=' part of the response, allowing mapping to
|
||||
any name.
|
||||
|
||||
=back
|
||||
|
||||
=item *
|
||||
|
||||
When perl fails to find the specified script, it now outputs a second line
|
||||
suggesting that the user use the C<-S> flag:
|
||||
|
||||
$ perl5.8.5 missing.pl
|
||||
Can't open perl script "missing.pl": No such file or directory.
|
||||
Use -S to search $PATH for it.
|
||||
|
||||
=back
|
||||
|
||||
=head1 Changed Internals
|
||||
|
||||
The Unicode character class files used by the regular expression engine are
|
||||
now built at build time from the supplied Unicode consortium data files,
|
||||
instead of being shipped prebuilt. This makes the compressed Perl source
|
||||
tarball about 200K smaller. A side effect is that the layout of files inside
|
||||
lib/unicore has changed.
|
||||
|
||||
=head1 Known Problems
|
||||
|
||||
The regression test F<t/uni/class.t> is now performing considerably more
|
||||
tests, and can take several minutes to run even on a fast machine.
|
||||
|
||||
=head1 Platform Specific Problems
|
||||
|
||||
This release is known not to build on Windows 95.
|
||||
|
||||
=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
|
||||
Reference in New Issue
Block a user