summaryrefslogtreecommitdiffstats
path: root/upstream/mageia-cauldron/man1/perl588delta.1
diff options
context:
space:
mode:
Diffstat (limited to 'upstream/mageia-cauldron/man1/perl588delta.1')
-rw-r--r--upstream/mageia-cauldron/man1/perl588delta.11142
1 files changed, 1142 insertions, 0 deletions
diff --git a/upstream/mageia-cauldron/man1/perl588delta.1 b/upstream/mageia-cauldron/man1/perl588delta.1
new file mode 100644
index 00000000..fc22ae1d
--- /dev/null
+++ b/upstream/mageia-cauldron/man1/perl588delta.1
@@ -0,0 +1,1142 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\" ========================================================================
+.\"
+.IX Title "PERL588DELTA 1"
+.TH PERL588DELTA 1 2023-11-28 "perl v5.38.2" "Perl Programmers Reference Guide"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH NAME
+perl588delta \- what is new for perl v5.8.8
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+This document describes differences between the 5.8.7 release and
+the 5.8.8 release.
+.SH "Incompatible Changes"
+.IX Header "Incompatible Changes"
+There are no changes intentionally incompatible with 5.8.7. If any exist,
+they are bugs and reports are welcome.
+.SH "Core Enhancements"
+.IX Header "Core Enhancements"
+.IP \(bu 4
+\&\f(CW\*(C`chdir\*(C'\fR, \f(CW\*(C`chmod\*(C'\fR and \f(CW\*(C`chown\*(C'\fR can now work on filehandles as well as
+filenames, if the system supports respectively \f(CW\*(C`fchdir\*(C'\fR, \f(CW\*(C`fchmod\*(C'\fR and
+\&\f(CW\*(C`fchown\*(C'\fR, thanks to a patch provided by Gisle Aas.
+.SH "Modules and Pragmata"
+.IX Header "Modules and Pragmata"
+.IP \(bu 4
+\&\f(CW\*(C`Attribute::Handlers\*(C'\fR upgraded to version 0.78_02
+.RS 4
+.IP \(bu 4
+Documentation typo fix
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`attrs\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+Internal cleanup only
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`autouse\*(C'\fR upgraded to version 1.05
+.RS 4
+.IP \(bu 4
+Simplified implementation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`B\*(C'\fR upgraded to version 1.09_01
+.RS 4
+.IP \(bu 4
+The inheritance hierarchy of the \f(CW\*(C`B::\*(C'\fR modules has been corrected;
+\&\f(CW\*(C`B::NV\*(C'\fR now inherits from \f(CW\*(C`B::SV\*(C'\fR (instead of \f(CW\*(C`B::IV\*(C'\fR).
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`blib\*(C'\fR upgraded to version 1.03
+.RS 4
+.IP \(bu 4
+Documentation typo fix
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`ByteLoader\*(C'\fR upgraded to version 0.06
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`CGI\*(C'\fR upgraded to version 3.15
+.RS 4
+.IP \(bu 4
+Extraneous "?" from \f(CWself_url()\fR removed
+.IP \(bu 4
+\&\f(CWscrolling_list()\fR select attribute fixed
+.IP \(bu 4
+\&\f(CW\*(C`virtual_port\*(C'\fR now works properly with the https protocol
+.IP \(bu 4
+\&\f(CWupload_hook()\fR and \f(CWappend()\fR now works in function-oriented mode
+.IP \(bu 4
+\&\f(CW\*(C`POST_MAX\*(C'\fR doesn't cause the client to hang any more
+.IP \(bu 4
+Automatic tab indexes are now disabled and new \f(CW\*(C`\-tabindex\*(C'\fR pragma has
+been added to turn automatic indexes back on
+.IP \(bu 4
+\&\f(CWend_form()\fR doesn't emit empty (and non-validating) \f(CW\*(C`<div>\*(C'\fR
+.IP \(bu 4
+\&\f(CW\*(C`CGI::Carp\*(C'\fR works better in certain mod_perl configurations
+.IP \(bu 4
+Setting \f(CW$CGI::TMPDIRECTORY\fR is now effective
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`charnames\*(C'\fR upgraded to version 1.05
+.RS 4
+.IP \(bu 4
+\&\f(CWviacode()\fR now accept hex strings and has been optimized.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`CPAN\*(C'\fR upgraded to version 1.76_02
+.RS 4
+.IP \(bu 4
+1 minor bug fix for Win32
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Cwd\*(C'\fR upgraded to version 3.12
+.RS 4
+.IP \(bu 4
+\&\f(CWcanonpath()\fR on Win32 now collapses \fIfoo\e..\fR sections correctly.
+.IP \(bu 4
+Improved behaviour on Symbian OS.
+.IP \(bu 4
+Enhanced documentation and typo fixes
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Data::Dumper\*(C'\fR upgraded to version 2.121_08
+.RS 4
+.IP \(bu 4
+A problem where \f(CW\*(C`Data::Dumper\*(C'\fR would sometimes update the iterator state
+of hashes has been fixed
+.IP \(bu 4
+Numeric labels now work
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`DB\*(C'\fR upgraded to version 1.01
+.RS 4
+.IP \(bu 4
+A problem where the state of the regexp engine would sometimes get clobbered when running
+under the debugger has been fixed.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`DB_File\*(C'\fR upgraded to version 1.814
+.RS 4
+.IP \(bu 4
+Adds support for Berkeley DB 4.4.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Devel::DProf\*(C'\fR upgraded to version 20050603.00
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Devel::Peek\*(C'\fR upgraded to version 1.03
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Devel::PPPort\*(C'\fR upgraded to version 3.06_01
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`\-\-compat\-version\*(C'\fR argument checking has been improved
+.IP \(bu 4
+Files passed on the command line are filtered by default
+.IP \(bu 4
+\&\f(CW\*(C`\-\-nofilter\*(C'\fR option to override the filtering has been added
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`diagnostics\*(C'\fR upgraded to version 1.15
+.RS 4
+.IP \(bu 4
+Documentation typo fix
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Digest\*(C'\fR upgraded to version 1.14
+.RS 4
+.IP \(bu 4
+The constructor now knows which module implements SHA\-224
+.IP \(bu 4
+Documentation tweaks and typo fixes
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Digest::MD5\*(C'\fR upgraded to version 2.36
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`XSLoader\*(C'\fR is now used for faster loading
+.IP \(bu 4
+Enhanced documentation including MD5 weaknesses discovered lately
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Dumpvalue\*(C'\fR upgraded to version 1.12
+.RS 4
+.IP \(bu 4
+Documentation fix
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`DynaLoader\*(C'\fR upgraded but unfortunately we're not able to increment its version number :\-(
+.RS 4
+.IP \(bu 4
+Implements \f(CW\*(C`dl_unload_file\*(C'\fR on Win32
+.IP \(bu 4
+Internal cleanup
+.IP \(bu 4
+\&\f(CW\*(C`XSLoader\*(C'\fR 0.06 incorporated; small optimisation for calling
+\&\f(CWbootstrap_inherit()\fR and documentation enhancements.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Encode\*(C'\fR upgraded to version 2.12
+.RS 4
+.IP \(bu 4
+A coderef is now acceptable for \f(CW\*(C`CHECK\*(C'\fR!
+.IP \(bu 4
+3 new characters added to the ISO\-8859\-7 encoding
+.IP \(bu 4
+New encoding \f(CW\*(C`MIME\-Header\-ISO_2022_JP\*(C'\fR added
+.IP \(bu 4
+Problem with partial characters and \f(CWencoding(utf\-8\-strict)\fR fixed.
+.IP \(bu 4
+Documentation enhancements and typo fixes
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`English\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+the \f(CW$COMPILING\fR variable has been added
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`ExtUtils::Constant\*(C'\fR upgraded to version 0.17
+.RS 4
+.IP \(bu 4
+Improved compatibility with older versions of perl
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`ExtUtils::MakeMaker\*(C'\fR upgraded to version 6.30 (was 6.17)
+.RS 4
+.IP \(bu 4
+Too much to list here; see <http://search.cpan.org/dist/ExtUtils\-MakeMaker/Changes>
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`File::Basename\*(C'\fR upgraded to version 2.74, with changes contributed by Michael Schwern.
+.RS 4
+.IP \(bu 4
+Documentation clarified and errors corrected.
+.IP \(bu 4
+\&\f(CW\*(C`basename\*(C'\fR now strips trailing path separators before processing the name.
+.IP \(bu 4
+\&\f(CW\*(C`basename\*(C'\fR now returns \f(CW\*(C`/\*(C'\fR for parameter \f(CW\*(C`/\*(C'\fR, to make \f(CW\*(C`basename\*(C'\fR
+consistent with the shell utility of the same name.
+.IP \(bu 4
+The suffix is no longer stripped if it is identical to the remaining characters
+in the name, again for consistency with the shell utility.
+.IP \(bu 4
+Some internal code cleanup.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`File::Copy\*(C'\fR upgraded to version 2.09
+.RS 4
+.IP \(bu 4
+Copying a file onto itself used to fail.
+.IP \(bu 4
+Moving a file between file systems now preserves the access and
+modification time stamps
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`File::Find\*(C'\fR upgraded to version 1.10
+.RS 4
+.IP \(bu 4
+Win32 portability fixes
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`File::Glob\*(C'\fR upgraded to version 1.05
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`File::Path\*(C'\fR upgraded to version 1.08
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`mkpath\*(C'\fR now preserves \f(CW\*(C`errno\*(C'\fR when \f(CW\*(C`mkdir\*(C'\fR fails
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`File::Spec\*(C'\fR upgraded to version 3.12
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`File::Spec\->rootdir()\*(C'\fR now returns \f(CW\*(C`\e\*(C'\fR on Win32, instead of \f(CW\*(C`/\*(C'\fR
+.IP \(bu 4
+\&\f(CW$^O\fR could sometimes become tainted. This has been fixed.
+.IP \(bu 4
+\&\f(CW\*(C`canonpath\*(C'\fR on Win32 now collapses \f(CW\*(C`foo/..\*(C'\fR (or \f(CW\*(C`foo\e..\*(C'\fR) sections
+correctly, rather than doing the "misguided" work it was previously doing.
+Note that \f(CW\*(C`canonpath\*(C'\fR on Unix still does \fBnot\fR collapse these sections, as
+doing so would be incorrect.
+.IP \(bu 4
+Some documentation improvements
+.IP \(bu 4
+Some internal code cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`FileCache\*(C'\fR upgraded to version 1.06
+.RS 4
+.IP \(bu 4
+POD formatting errors in the documentation fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Filter::Simple\*(C'\fR upgraded to version 0.82
+.IP \(bu 4
+\&\f(CW\*(C`FindBin\*(C'\fR upgraded to version 1.47
+.RS 4
+.IP \(bu 4
+Now works better with directories where access rights are more
+restrictive than usual.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`GDBM_File\*(C'\fR upgraded to version 1.08
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Getopt::Long\*(C'\fR upgraded to version 2.35
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`prefix_pattern\*(C'\fR has now been complemented by a new configuration
+option \f(CW\*(C`long_prefix_pattern\*(C'\fR that allows the user to specify what
+prefix patterns should have long option style semantics applied.
+.IP \(bu 4
+Options can now take multiple values at once (experimental)
+.IP \(bu 4
+Various bug fixes
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`if\*(C'\fR upgraded to version 0.05
+.RS 4
+.IP \(bu 4
+Give more meaningful error messages from \f(CW\*(C`if\*(C'\fR when invoked with a
+condition in list context.
+.IP \(bu 4
+Restore backwards compatibility with earlier versions of perl
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`IO\*(C'\fR upgraded to version 1.22
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`IPC::Open2\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`IPC::Open3\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`List::Util\*(C'\fR upgraded to version 1.18 (was 1.14)
+.RS 4
+.IP \(bu 4
+Fix pure-perl version of \f(CW\*(C`refaddr\*(C'\fR to avoid blessing an un-blessed reference
+.IP \(bu 4
+Use \f(CW\*(C`XSLoader\*(C'\fR for faster loading
+.IP \(bu 4
+Fixed various memory leaks
+.IP \(bu 4
+Internal cleanup and portability fixes
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Math::Complex\*(C'\fR upgraded to version 1.35
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`atan2(0, i)\*(C'\fR now works, as do all the (computable) complex argument cases
+.IP \(bu 4
+Fixes for certain bugs in \f(CW\*(C`make\*(C'\fR and \f(CW\*(C`emake\*(C'\fR
+.IP \(bu 4
+Support returning the \fIk\fRth root directly
+.IP \(bu 4
+Support \f(CW\*(C`[2,\-3pi/8]\*(C'\fR in \f(CW\*(C`emake\*(C'\fR
+.IP \(bu 4
+Support \f(CW\*(C`inf\*(C'\fR for \f(CW\*(C`make\*(C'\fR/\f(CW\*(C`emake\*(C'\fR
+.IP \(bu 4
+Document \f(CW\*(C`make\*(C'\fR/\f(CW\*(C`emake\*(C'\fR more visibly
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Math::Trig\*(C'\fR upgraded to version 1.03
+.RS 4
+.IP \(bu 4
+Add more great circle routines: \f(CW\*(C`great_circle_waypoint\*(C'\fR and
+\&\f(CW\*(C`great_circle_destination\*(C'\fR
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`MIME::Base64\*(C'\fR upgraded to version 3.07
+.RS 4
+.IP \(bu 4
+Use \f(CW\*(C`XSLoader\*(C'\fR for faster loading
+.IP \(bu 4
+Enhanced documentation
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`NDBM_File\*(C'\fR upgraded to version 1.06
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`ODBM_File\*(C'\fR upgraded to version 1.06
+.RS 4
+.IP \(bu 4
+Documentation typo fixed
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Opcode\*(C'\fR upgraded to version 1.06
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`open\*(C'\fR upgraded to version 1.05
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`overload\*(C'\fR upgraded to version 1.04
+.RS 4
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`PerlIO\*(C'\fR upgraded to version 1.04
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`PerlIO::via\*(C'\fR iterate over layers properly now
+.IP \(bu 4
+\&\f(CW\*(C`PerlIO::scalar\*(C'\fR understands \f(CW\*(C`$/ = ""\*(C'\fR now
+.IP \(bu 4
+\&\f(CWencoding(utf\-8\-strict)\fR with partial characters now works
+.IP \(bu 4
+Enhanced documentation
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Pod::Functions\*(C'\fR upgraded to version 1.03
+.RS 4
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Pod::Html\*(C'\fR upgraded to version 1.0504
+.RS 4
+.IP \(bu 4
+HTML output will now correctly link
+to \f(CW\*(C`=item\*(C'\fRs on the same page, and should be valid XHTML.
+.IP \(bu 4
+Variable names are recognized as intended
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Pod::Parser\*(C'\fR upgraded to version 1.32
+.RS 4
+.IP \(bu 4
+Allow files that start with \f(CW\*(C`=head\*(C'\fR on the first line
+.IP \(bu 4
+Win32 portability fix
+.IP \(bu 4
+Exit status of \f(CW\*(C`pod2usage\*(C'\fR fixed
+.IP \(bu 4
+New \f(CW\*(C`\-noperldoc\*(C'\fR switch for \f(CW\*(C`pod2usage\*(C'\fR
+.IP \(bu 4
+Arbitrary URL schemes now allowed
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`POSIX\*(C'\fR upgraded to version 1.09
+.RS 4
+.IP \(bu 4
+Documentation typos fixed
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`re\*(C'\fR upgraded to version 0.05
+.RS 4
+.IP \(bu 4
+Documentation typo fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Safe\*(C'\fR upgraded to version 2.12
+.RS 4
+.IP \(bu 4
+Minor documentation enhancement
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`SDBM_File\*(C'\fR upgraded to version 1.05
+.RS 4
+.IP \(bu 4
+Documentation typo fixed
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Socket\*(C'\fR upgraded to version 1.78
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Storable\*(C'\fR upgraded to version 2.15
+.RS 4
+.IP \(bu 4
+This includes the \f(CW\*(C`STORABLE_attach\*(C'\fR hook functionality added by
+Adam Kennedy, and more frugal memory requirements when storing under \f(CW\*(C`ithreads\*(C'\fR, by
+using the \f(CW\*(C`ithreads\*(C'\fR cloning tracking code.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Switch\*(C'\fR upgraded to version 2.10_01
+.RS 4
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Sys::Syslog\*(C'\fR upgraded to version 0.13
+.RS 4
+.IP \(bu 4
+Now provides numeric macros and meaningful \f(CW\*(C`Exporter\*(C'\fR tags.
+.IP \(bu 4
+No longer uses \f(CW\*(C`Sys::Hostname\*(C'\fR as it may provide useless values in
+unconfigured network environments, so instead uses \f(CW\*(C`INADDR_LOOPBACK\*(C'\fR directly.
+.IP \(bu 4
+\&\f(CWsyslog()\fR now uses local timestamp.
+.IP \(bu 4
+\&\f(CWsetlogmask()\fR now behaves like its C counterpart.
+.IP \(bu 4
+\&\f(CWsetlogsock()\fR will now \f(CWcroak()\fR as documented.
+.IP \(bu 4
+Improved error and warnings messages.
+.IP \(bu 4
+Improved documentation.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Term::ANSIColor\*(C'\fR upgraded to version 1.10
+.RS 4
+.IP \(bu 4
+Fixes a bug in \f(CW\*(C`colored\*(C'\fR when \f(CW$EACHLINE\fR is set that caused it to not color
+lines consisting solely of 0 (literal zero).
+.IP \(bu 4
+Improved tests.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Term::ReadLine\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+Documentation tweaks
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Test::Harness\*(C'\fR upgraded to version 2.56 (was 2.48)
+.RS 4
+.IP \(bu 4
+The \f(CW\*(C`Test::Harness\*(C'\fR timer is now off by default.
+.IP \(bu 4
+Now shows elapsed time in milliseconds.
+.IP \(bu 4
+Various bug fixes
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Test::Simple\*(C'\fR upgraded to version 0.62 (was 0.54)
+.RS 4
+.IP \(bu 4
+\&\f(CWis_deeply()\fR no longer fails to work for many cases
+.IP \(bu 4
+Various minor bug fixes
+.IP \(bu 4
+Documentation enhancements
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Text::Tabs\*(C'\fR upgraded to version 2005.0824
+.RS 4
+.IP \(bu 4
+Provides a faster implementation of \f(CW\*(C`expand\*(C'\fR
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Text::Wrap\*(C'\fR upgraded to version 2005.082401
+.RS 4
+.IP \(bu 4
+Adds \f(CW$Text::Wrap::separator2\fR, which allows you to preserve existing newlines
+but add line-breaks with some other string.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`threads\*(C'\fR upgraded to version 1.07
+.RS 4
+.IP \(bu 4
+\&\f(CW\*(C`threads\*(C'\fR will now honour \f(CW\*(C`no warnings \*(Aqthreads\*(Aq\*(C'\fR
+.IP \(bu 4
+A thread's interpreter is now freed after \f(CW\*(C`$t\->join()\*(C'\fR rather than after
+\&\f(CW\*(C`undef $t\*(C'\fR, which should fix some \f(CW\*(C`ithreads\*(C'\fR memory leaks. (Fixed by Dave
+Mitchell)
+.IP \(bu 4
+Some documentation typo fixes.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`threads::shared\*(C'\fR upgraded to version 0.94
+.RS 4
+.IP \(bu 4
+Documentation changes only
+.IP \(bu 4
+Note: An improved implementation of \f(CW\*(C`threads::shared\*(C'\fR is available on
+CPAN \- this will be merged into 5.8.9 if it proves stable.
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Tie::Hash\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+Documentation typo fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Time::HiRes\*(C'\fR upgraded to version 1.86 (was 1.66)
+.RS 4
+.IP \(bu 4
+\&\f(CWclock_nanosleep()\fR and \f(CWclock()\fR functions added
+.IP \(bu 4
+Support for the POSIX \f(CWclock_gettime()\fR and \f(CWclock_getres()\fR has been added
+.IP \(bu 4
+Return \f(CW\*(C`undef\*(C'\fR or an empty list if the C \f(CWgettimeofday()\fR function fails
+.IP \(bu 4
+Improved \f(CW\*(C`nanosleep\*(C'\fR detection
+.IP \(bu 4
+Internal cleanup
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Unicode::Collate\*(C'\fR upgraded to version 0.52
+.RS 4
+.IP \(bu 4
+Now implements UCA Revision 14 (based on Unicode 4.1.0).
+.IP \(bu 4
+\&\f(CW\*(C`Unicode::Collate\->new\*(C'\fR method no longer overwrites user's \f(CW$_\fR
+.IP \(bu 4
+Enhanced documentation
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Unicode::UCD\*(C'\fR upgraded to version 0.24
+.RS 4
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`User::grent\*(C'\fR upgraded to version 1.01
+.RS 4
+.IP \(bu 4
+Documentation typo fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`utf8\*(C'\fR upgraded to version 1.06
+.RS 4
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`vmsish\*(C'\fR upgraded to version 1.02
+.RS 4
+.IP \(bu 4
+Documentation typos fixed
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`warnings\*(C'\fR upgraded to version 1.05
+.RS 4
+.IP \(bu 4
+Gentler messing with \f(CW\*(C`Carp::\*(C'\fR internals
+.IP \(bu 4
+Internal cleanup
+.IP \(bu 4
+Documentation update
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`Win32\*(C'\fR upgraded to version 0.2601
+.RS 4
+.IP \(bu 4
+Provides Windows Vista support to \f(CW\*(C`Win32::GetOSName\*(C'\fR
+.IP \(bu 4
+Documentation enhancements
+.RE
+.RS 4
+.RE
+.IP \(bu 4
+\&\f(CW\*(C`XS::Typemap\*(C'\fR upgraded to version 0.02
+.RS 4
+.IP \(bu 4
+Internal cleanup
+.RE
+.RS 4
+.RE
+.SH "Utility Changes"
+.IX Header "Utility Changes"
+.ie n .SS """h2xs"" enhancements"
+.el .SS "\f(CWh2xs\fP enhancements"
+.IX Subsection "h2xs enhancements"
+\&\f(CW\*(C`h2xs\*(C'\fR implements new option \f(CW\*(C`\-\-use\-xsloader\*(C'\fR to force use of
+\&\f(CW\*(C`XSLoader\*(C'\fR even in backwards compatible modules.
+.PP
+The handling of authors' names that had apostrophes has been fixed.
+.PP
+Any enums with negative values are now skipped.
+.ie n .SS """perlivp"" enhancements"
+.el .SS "\f(CWperlivp\fP enhancements"
+.IX Subsection "perlivp enhancements"
+\&\f(CW\*(C`perlivp\*(C'\fR implements new option \f(CW\*(C`\-a\*(C'\fR and will not check for \fI*.ph\fR
+files by default any more. Use the \f(CW\*(C`\-a\*(C'\fR option to run \fIall\fR tests.
+.SH "New Documentation"
+.IX Header "New Documentation"
+The perlglossary manpage is a glossary of terms used in the Perl
+documentation, technical and otherwise, kindly provided by O'Reilly Media,
+inc.
+.SH "Performance Enhancements"
+.IX Header "Performance Enhancements"
+.IP \(bu 4
+Weak reference creation is now \fIO(1)\fR rather than \fIO(n)\fR, courtesy of
+Nicholas Clark. Weak reference deletion remains \fIO(n)\fR, but if deletion only
+happens at program exit, it may be skipped completely.
+.IP \(bu 4
+Salvador FandiƱo provided improvements to reduce the memory usage of \f(CW\*(C`sort\*(C'\fR
+and to speed up some cases.
+.IP \(bu 4
+Jarkko Hietaniemi and Andy Lester worked to mark as much data as possible in
+the C source files as \f(CW\*(C`static\*(C'\fR, to increase the proportion of the executable
+file that the operating system can share between process, and thus reduce
+real memory usage on multi-user systems.
+.SH "Installation and Configuration Improvements"
+.IX Header "Installation and Configuration Improvements"
+Parallel makes should work properly now, although there may still be problems
+if \f(CW\*(C`make test\*(C'\fR is instructed to run in parallel.
+.PP
+Building with Borland's compilers on Win32 should work more smoothly. In
+particular Steve Hay has worked to side step many warnings emitted by their
+compilers and at least one C compiler internal error.
+.PP
+\&\f(CW\*(C`Configure\*(C'\fR will now detect \f(CW\*(C`clearenv\*(C'\fR and \f(CW\*(C`unsetenv\*(C'\fR, thanks to a patch
+from Alan Burlison. It will also probe for \f(CW\*(C`futimes\*(C'\fR and whether \f(CW\*(C`sprintf\*(C'\fR
+correctly returns the length of the formatted string, which will both be used
+in perl 5.8.9.
+.PP
+There are improved hints for next\-3.0, vmesa, IX, Darwin, Solaris, Linux,
+DEC/OSF, HP-UX and MPE/iX
+.PP
+Perl extensions on Windows now can be statically built into the Perl DLL,
+thanks to a work by Vadim Konovalov. (This improvement was actually in 5.8.7,
+but was accidentally omitted from perl587delta).
+.SH "Selected Bug Fixes"
+.IX Header "Selected Bug Fixes"
+.SS "no warnings 'category' works correctly with \-w"
+.IX Subsection "no warnings 'category' works correctly with -w"
+Previously when running with warnings enabled globally via \f(CW\*(C`\-w\*(C'\fR, selective
+disabling of specific warning categories would actually turn off all warnings.
+This is now fixed; now \f(CW\*(C`no warnings \*(Aqio\*(Aq;\*(C'\fR will only turn off warnings in the
+\&\f(CW\*(C`io\*(C'\fR class. Previously it would erroneously turn off all warnings.
+.PP
+This bug fix may cause some programs to start correctly issuing warnings.
+.SS "Remove over-optimisation"
+.IX Subsection "Remove over-optimisation"
+Perl 5.8.4 introduced a change so that assignments of \f(CW\*(C`undef\*(C'\fR to a
+scalar, or of an empty list to an array or a hash, were optimised away. As
+this could cause problems when \f(CW\*(C`goto\*(C'\fR jumps were involved, this change
+has been backed out.
+.SS "\fBsprintf()\fP fixes"
+.IX Subsection "sprintf() fixes"
+Using the \fBsprintf()\fR function with some formats could lead to a buffer
+overflow in some specific cases. This has been fixed, along with several
+other bugs, notably in bounds checking.
+.PP
+In related fixes, it was possible for badly written code that did not follow
+the documentation of \f(CW\*(C`Sys::Syslog\*(C'\fR to have formatting vulnerabilities.
+\&\f(CW\*(C`Sys::Syslog\*(C'\fR has been changed to protect people from poor quality third
+party code.
+.SS "Debugger and Unicode slowdown"
+.IX Subsection "Debugger and Unicode slowdown"
+It had been reported that running under perl's debugger when processing
+Unicode data could cause unexpectedly large slowdowns. The most likely cause
+of this was identified and fixed by Nicholas Clark.
+.SS "Smaller fixes"
+.IX Subsection "Smaller fixes"
+.IP \(bu 4
+\&\f(CW\*(C`FindBin\*(C'\fR now works better with directories where access rights are more
+restrictive than usual.
+.IP \(bu 4
+Several memory leaks in ithreads were closed. An improved implementation of
+\&\f(CW\*(C`threads::shared\*(C'\fR is available on CPAN \- this will be merged into 5.8.9 if
+it proves stable.
+.IP \(bu 4
+Trailing spaces are now trimmed from \f(CW$!\fR and \f(CW$^E\fR.
+.IP \(bu 4
+Operations that require perl to read a process's list of groups, such as reads
+of \f(CW$(\fR and \f(CW$)\fR, now dynamically allocate memory rather than using a
+fixed sized array. The fixed size array could cause C stack exhaustion on
+systems configured to use large numbers of groups.
+.IP \(bu 4
+\&\f(CW\*(C`PerlIO::scalar\*(C'\fR now works better with non-default \f(CW$/\fR settings.
+.IP \(bu 4
+You can now use the \f(CW\*(C`x\*(C'\fR operator to repeat a \f(CW\*(C`qw//\*(C'\fR list. This used
+to raise a syntax error.
+.IP \(bu 4
+The debugger now traces correctly execution in eval("")uated code that
+contains #line directives.
+.IP \(bu 4
+The value of the \f(CW\*(C`open\*(C'\fR pragma is no longer ignored for three-argument
+opens.
+.IP \(bu 4
+The optimisation of \f(CW\*(C`for (reverse @a)\*(C'\fR introduced in perl 5.8.6 could
+misbehave when the array had undefined elements and was used in LVALUE
+context. Dave Mitchell provided a fix.
+.IP \(bu 4
+Some case insensitive matches between UTF\-8 encoded data and 8 bit regexps,
+and vice versa, could give malformed character warnings. These have been
+fixed by Dave Mitchell and Yves Orton.
+.IP \(bu 4
+\&\f(CW\*(C`lcfirst\*(C'\fR and \f(CW\*(C`ucfirst\*(C'\fR could corrupt the string for certain cases where
+the length UTF\-8 encoding of the string in lower case, upper case or title
+case differed. This was fixed by Nicholas Clark.
+.IP \(bu 4
+Perl will now use the C library calls \f(CW\*(C`unsetenv\*(C'\fR and \f(CW\*(C`clearenv\*(C'\fR if present
+to delete keys from \f(CW%ENV\fR and delete \f(CW%ENV\fR entirely, thanks to a patch
+from Alan Burlison.
+.SH "New or Changed Diagnostics"
+.IX Header "New or Changed Diagnostics"
+.SS "Attempt to set length of freed array"
+.IX Subsection "Attempt to set length of freed array"
+This is a new warning, produced in situations such as this:
+.PP
+.Vb 2
+\& $r = do {my @a; \e$#a};
+\& $$r = 503;
+.Ve
+.SS "Non-string passed as bitmask"
+.IX Subsection "Non-string passed as bitmask"
+This is a new warning, produced when number has been passed as an argument to
+\&\fBselect()\fR, instead of a bitmask.
+.PP
+.Vb 3
+\& # Wrong, will now warn
+\& $rin = fileno(STDIN);
+\& ($nfound,$timeleft) = select($rout=$rin, undef, undef, $timeout);
+\&
+\& # Should be
+\& $rin = \*(Aq\*(Aq;
+\& vec($rin,fileno(STDIN),1) = 1;
+\& ($nfound,$timeleft) = select($rout=$rin, undef, undef, $timeout);
+.Ve
+.SS "Search pattern not terminated or ternary operator parsed as search pattern"
+.IX Subsection "Search pattern not terminated or ternary operator parsed as search pattern"
+This syntax error indicates that the lexer couldn't find the final
+delimiter of a \f(CW\*(C`?PATTERN?\*(C'\fR construct. Mentioning the ternary operator in
+this error message makes it easier to diagnose syntax errors.
+.SH "Changed Internals"
+.IX Header "Changed Internals"
+There has been a fair amount of refactoring of the \f(CW\*(C`C\*(C'\fR source code, partly to
+make it tidier and more maintainable. The resulting object code and the
+\&\f(CW\*(C`perl\*(C'\fR binary may well be smaller than 5.8.7, in particular due to a change
+contributed by Dave Mitchell which reworked the warnings code to be
+significantly smaller. Apart from being smaller and possibly faster, there
+should be no user-detectable changes.
+.PP
+Andy Lester supplied many improvements to determine which function
+parameters and local variables could actually be declared \f(CW\*(C`const\*(C'\fR to the C
+compiler. Steve Peters provided new \f(CW*_set\fR macros and reworked the core to
+use these rather than assigning to macros in LVALUE context.
+.PP
+Dave Mitchell improved the lexer debugging output under \f(CW\*(C`\-DT\*(C'\fR
+.PP
+Nicholas Clark changed the string buffer allocation so that it is now rounded
+up to the next multiple of 4 (or 8 on platforms with 64 bit pointers). This
+should reduce the number of calls to \f(CW\*(C`realloc\*(C'\fR without actually using any
+extra memory.
+.PP
+The \f(CW\*(C`HV\*(C'\fR's array of \f(CW\*(C`HE*\*(C'\fRs is now allocated at the correct (minimal) size,
+thanks to another change by Nicholas Clark. Compile with
+\&\f(CW\*(C`\-DPERL_USE_LARGE_HV_ALLOC\*(C'\fR to use the old, sloppier, default.
+.PP
+For XS or embedding debugging purposes, if perl is compiled with
+\&\f(CW\*(C`\-DDEBUG_LEAKING_SCALARS_FORK_DUMP\*(C'\fR in addition to
+\&\f(CW\*(C`\-DDEBUG_LEAKING_SCALARS\*(C'\fR then a child process is \f(CW\*(C`fork\*(C'\fRed just before
+global destruction, which is used to display the values of any scalars
+found to have leaked at the end of global destruction. Without this, the
+scalars have already been freed sufficiently at the point of detection that
+it is impossible to produce any meaningful dump of their contents. This
+feature was implemented by the indefatigable Nicholas Clark, based on an idea
+by Mike Giroux.
+.SH "Platform Specific Problems"
+.IX Header "Platform Specific Problems"
+The optimiser on HP-UX 11.23 (Itanium 2) is currently partly disabled (scaled
+down to +O1) when using HP C\-ANSI-C; the cause of problems at higher
+optimisation levels is still unclear.
+.PP
+There are a handful of remaining test failures on VMS, mostly due to
+test fixes and minor module tweaks with too many dependencies to
+integrate into this release from the development stream, where they have
+all been corrected. The following is a list of expected failures with
+the patch number of the fix where that is known:
+.PP
+.Vb 6
+\& ext/Devel/PPPort/t/ppphtest.t #26913
+\& ext/List/Util/t/p_tainted.t #26912
+\& lib/ExtUtils/t/PL_FILES.t #26813
+\& lib/ExtUtils/t/basic.t #26813
+\& t/io/fs.t
+\& t/op/cmp.t
+.Ve
+.SH "Reporting Bugs"
+.IX Header "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.
+.PP
+If you believe you have an unreported bug, please run the \fBperlbug\fR
+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 \f(CW\*(C`perl \-V\*(C'\fR, 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/
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+The \fIChanges\fR file for exhaustive details on what changed.
+.PP
+The \fIINSTALL\fR file for how to build Perl.
+.PP
+The \fIREADME\fR file for general stuff.
+.PP
+The \fIArtistic\fR and \fICopying\fR files for copyright information.