This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update ExtUtils-ParseXS to CPAN version 3.07
[perl5.git] / pod / perldelta.pod
index 1bba670..04f2254 100644 (file)
@@ -1,24 +1,20 @@
 =encoding utf8
 
-=for comment
-This has been completed up to 3ea0c5818 except for:
-a1da11a30dfa4f3543dcab00834ff535202f5085 (GNU/Hurd hints)
-
 =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.5
+perldelta - what is new for perl v5.15.6
 
 =head1 DESCRIPTION
 
-This document describes differences between the 5.15.4 release and
-the 5.15.5 release.
+This document describes differences between the 5.15.5 release and
+the 5.15.6 release.
 
-If you are upgrading from an earlier release such as 5.15.3, first read
-L<perl5154delta>, which describes differences between 5.15.3 and
-5.15.4.
+If you are upgrading from an earlier release such as 5.15.4, first read
+L<perl5155delta>, which describes differences between 5.15.4 and
+5.15.5.
 
 =head1 Notice
 
@@ -30,15 +26,7 @@ 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</Performance Enhancements> section.
 
-=head2 C<$[> is back
-
-The C<$[> variable is back again, but is now implemented as a module, so
-programs that do not mention it (i.e., most of them), will not incur any
-run-time penalty.  It is disabled in the scope of C<use v5.16>.
-
-XXX That last sentence is not true yet.
-
-The new implementation has some bug fixes.  See L<arybase>.
+[ List each enhancement as a =head2 entry ]
 
 =head1 Security
 
@@ -76,12 +64,7 @@ may well be none in a stable release.
 
 =item *
 
-Due to changes in L<File::Glob>, Perl's C<glob> function and its
-C<< <...> >> equivalent are now much faster.  The splitting of the pattern
-into words has been rewritten in C, resulting in speed-ups of 20% in some
-cases.
-
-This does not affect VMS, as it does not use File::Glob.
+XXX
 
 =back
 
@@ -103,7 +86,7 @@ cribbed.
 
 =item *
 
-L<arybase> -- this new module implements the C<$[> variable.
+XXX
 
 =back
 
@@ -113,71 +96,72 @@ L<arybase> -- this new module implements the C<$[> variable.
 
 =item *
 
-L<Archive::Extract> has been upgraded from version 0.56 to version 0.58.
+L<Archive::Tar> has been upgraded from version 1.80 to version 1.82.
+
+Adjustments to handle files >8gb (>0777777777777 octal) and a feature to
+return the MD5SUM of files in the archive.
 
 =item *
 
-L<B::Deparse> has been upgraded from version 1.08 to 1.08.
+L<AutoLoader> has been upgraded from version 5.71 to version 5.72.
+
+=item *
 
-It now correctly deparses C<CORE::do> and C<CORE::glob>.
+L<B::Debug> has been upgraded from version 1.16 to version 1.17.
 
 =item *
 
-L<CPANPLUS::Dist::Build> has been upgraded from version 0.58 to version 0.60.
+L<Compress::Raw::Zlib> has been upgraded from version 2.042 to version 2.045.
 
 =item *
 
-L<ExtUtils::MakeMaker> has been upgraded from version 6.61_01 to version 6.63_02.
+L<Compress::Raw::Bzip2> has been upgraded from version 2.042 to version 2.045.
 
 =item *
 
-L<File::Glob> has been upgrade from version 1.13 to 1.14.
+L<ExtUtils::ParseXS> has been upgraded from version 3.05 to version 3.07.
+
+=item *
 
-It has a new C<:bsd_glob> export tag, intended to replace C<:glob>.  Like
-C<:glob> it overrides C<glob> with a function that does not split the glob
-pattern into words, but, unlike C<:glob>, it iterates properly in scalar
-context, instead of returning the last file.
+L<IO::Compress::Base> has been upgraded from version 2.042 to version 2.045.
 
-There are other changes affecting Perl's own C<glob> operator (which uses
-File::Glob internally, except on VMS).  See L</Performance Enhancements>
-and L</Selected Bug Fixes>.
+Added zipdetails utility.
 
 =item *
 
-L<HTTP::Tiny> has been upgraded from version 0.013 to version 0.016.
+L<Locale::Codes> has been upgraded from version 3.18 to version 3.20.
 
-Adds additional shorthand methods for all common HTTP verbs,
-a C<post_form()> method for POST-ing x-www-form-urlencoded data and
-a C<www_form_urlencode()> utility method.
+The code2XXX, XXX2code, all_XXX_codes, and all_XXX_names functions now support retired codes.
+All codesets may be specified by a constant or by their name now. Previously,
+they were specified only by a constant.
+The alias_code function exists for backward compatibility. It has been replaced by rename_country_code.
+The alias_code function will be removed sometime after September, 2013.
+All work is now done in the central module (Locale::Codes). Previously, some was still done in the
+wrapper modules (Locale::Codes::*) but that is gone now.
+Added Language Family codes (langfam) as defined in ISO 639-5.
 
 =item *
 
-L<perlfaq> has been upgraded from version 5.0150035 to version 5.0150036.
+L<Module::Loaded> has been uprgaded from version 0.06 to version 0.08.
 
 =item *
 
-L<Socket> as been upgraded from version 1.94_01 to 1.94_02.
+L<Pod::LaTeX> has been upgraded from version 0.59 to version 0.60.
 
-It has new functions and constants for handling IPv6 sockets:
+Added another LaTeX escape: --- => -{}-{}-
 
-    pack_ipv6_mreq
-    unpack_ipv6_mreq
-    IPV6_ADD_MEMBERSHIP
-    IPV6_DROP_MEMBERSHIP
-    IPV6_MTU
-    IPV6_MTU_DISCOVER
-    IPV6_MULTICAST_HOPS
-    IPV6_MULTICAST_IF
-    IPV6_MULTICAST_LOOP
-    IPV6_UNICAST_HOPS
-    IPV6_V6ONLY
+Pod::LaTeX doesn't handle -- in PODs specially, passing it directly to
+LaTeX, which then proceeds to replace it with a single -. This patch
+replaces ----- with -{}-{}-{}-{}-
 
 =item *
 
-L<Unicode::Collate> has been upgraded from version 0.80 to version 0.81.
+L<Unicode::Collate> has been upgraded from version 0.85 to version 0.87.
 
-Locales updated to CLDR 2.0: mk, mt, nb, nn, ro, ru.
-Newly supported locales: ml, mr, or, pa.
+Tailored compatibility ideographs as well as unified ideographs for
+the locales: ja, ko, zh__big5han, zh__gb2312han, zh__pinyin, zh__stroke.
+
+Now Locale/*.pl files are searched in @INC.
 
 =back
 
@@ -282,13 +266,14 @@ here. Most of these are built within the directories F<utils> and F<x2p>.
 entries for each change
 Use L<XXX> with program names to get proper documentation linking. ]
 
-=head3 L<XXX>
+=head3 L<zipdetails>
 
 =over 4
 
 =item *
 
-XXX
+L<zipdetails> displays information about the internal record structure of the zip file.
+It is not concerned with displaying any details of the compressed data stored in the zip file.
 
 =back
 
@@ -305,7 +290,9 @@ L</Platform Support> section, instead.
 
 =item *
 
-XXX
+F<pod/roffitall> is now build by F<pod/buildtoc>, instead of being shipped
+with the distribution. Its list of manpages is now generated (and therefore
+current). See also RT #103202 for an unresolved related issue.
 
 =back
 
@@ -388,7 +375,7 @@ be noted as well.
 
 =item *
 
-C<PL_curstash> is now reference-counted.
+XXX
 
 =back
 
@@ -404,75 +391,7 @@ L</Modules and Pragmata>.
 
 =item *
 
-Perl now holds an extra reference count on the package that code is
-currently compiling in.  This means that the following code no longer crashes [perl #101486]:
-
-    package Foo;
-    BEGIN {*Foo:: = *Bar::}
-    sub foo;
-
-=item *
-
-F<dumpvar.pl>, and consequently the C<x> command in the debugger, have been
-fixed to handle objects blessed into classes whose names contain "=".  The
-contents of such objects used not to be dumped [perl #101814].
-
-=item *
-
-The C<x> repetition operator no longer crashes on 64-bit builds with large
-repeate counts [perl #94560].
-
-=item *
-
-A fix to C<glob> under miniperl (used to configure modules when perl itself
-is built) in Perl 5.15.3 stopped C<< <~> >> from returning the home
-directory, because it cleared %ENV before calling csh.  Now C<$ENV{HOME}>
-is preserved.  This fix probably does not affect anything.  If
-L<File::Glob> fails to load for some reason, Perl reverts to using csh.
-So it would apply in that case.
-
-=item *
-
-On OSes other than VMS, Perl's C<glob> operator (and the C<< <...> >> form)
-use L<File::Glob> underneath.  L<File::Glob> splits the pattern into words,
-before feeding each word to its C<bsd_glob> function.
-
-There were several inconsistencies in the way the split was done.  Now
-quotation marks (' and ") are always treated as shell-style word delimiters
-(that allow whitespace as part of a word) and backslashes are always
-preserved, unless they exist to escape quotation marks.  Before, those
-would only sometimes be the case, depending on whether the pattern
-contained whitespace.  Also, escaped whitespace at the end of the pattern
-is no longer stripped.
-
-=item *
-
-C<CORE::glob> now works as a way to call the default globbing function.  It
-used to respect overrides, despite the C<CORE::> prefix.
-
-=item *
-
-In 5.14, C</[[:lower:]]/i> and C</[[:upper:]]/i> no longer matched the
-opposite case.  This has been fixed [perl #101970].
-
-=item *
-
-A regular expression match with an overloaded object on the right-hand side
-would in some cases stringify the object too many times.
-
-=item *
-
-The C-level C<pregcomp> function could become confused as to whether the
-pattern was in UTF8 if the pattern was an overloaded, tied, or otherwise
-magical scalar [perl #101940].
-
-=item *
-
-A regression has been fixed that was introduced in 5.14, in C</i>
-regular expression matching, in which a match improperly fails if the
-pattern is in UTF-8, the target string is not, and a Latin-1 character
-precedes a character in the string that should match the pattern.  [perl
-#101710]
+XXX
 
 =back
 
@@ -504,7 +423,7 @@ here.
 
 XXX Generate this with:
 
-  perl Porting/acknowledgements.pl v5.15.4..HEAD
+  perl Porting/acknowledgements.pl v5.15.5..HEAD
 
 =head1 Reporting Bugs