From 7818c9278d761ba44297fd2d027f6a31babe5a57 Mon Sep 17 00:00:00 2001 From: Father Chrysostomos Date: Wed, 13 Jul 2011 22:14:49 -0700 Subject: [PATCH] perldelta update --- pod/perldelta.pod | 133 ++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 115 insertions(+), 18 deletions(-) diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 51e27a0..941cdd0 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -1,5 +1,9 @@ =encoding utf8 +=for comment +This has been completed up to 7be5bd17, except for: +bb789b09de07edfb74477eb1603949c96d60927d (Dave Mitchell) + =head1 NAME [ this is a template for a new perldelta file. Any text flagged as @@ -61,6 +65,11 @@ the new phase name; C is the old one. This is useful mostly for limiting your instrumentation to one or more of: compile time, run time, destruct time. +=head2 New Pad API + +Many new functions have been added to the API for manipulating lexical +pads. See L for more information. + =head1 Security XXX Any security-related notices go here. In particular, any security @@ -135,7 +144,17 @@ cribbed. =item * -XXX +The logic for parsing, merging, and dumping XS typemaps has been extracted +from C into a module of its own, L. +C offers an interface to typemap handling outside of +the scope of the XS compiler itself. + +As a first use case of the improved API and extensibility, typemaps can now +be included inline in XS code with a HEREDOC-like syntax: + + TYPEMAP: < has been upgraded from version 2.2210 to version 3.00_01. - -Much of L, the module behind the XS compiler C, -was rewritten and cleaned up. It has been made somewhat more extensible -and now finally uses strictures. - -The logic for parsing, merging, and dumping XS typemaps was extracted -from C into a module of its own, L. -C offers an interface to typemap handling outside of -the scope of the XS compiler itself. +L has been upgrade from version 1.05 to 1.06. -As a first use case of the improved API an extensibility, typemaps can now -be included inline into XS code with a HEREDOC-like syntax: - - TYPEMAP: <) that do not interpolate without braces [perl #93990]. =item * @@ -216,10 +222,33 @@ L has been upgraded from version 0.9105 to version 0.9107 =item * +L has been upgraded from version 3.36 to 3.37, to address an +incompatibility with the EPIC debugger. + +=item * + +L has been upgraded from version 1.22 to 1.23. + +It now knows how to find descriptions for diagnostic messages ending with a +dot, instead getting confused by it. + +=item * + L has been upgraded from version 6.57_05 to version 6.58 =item * +L has been upgraded from version 2.2210 to 3.00_01. + +Much of L, the module behind the XS compiler C, +was rewritten and cleaned up. It has been made somewhat more extensible +and now finally uses strictures. + +The typemap logic has been moved into a separate module, +L. See L, above. + +=item * + L has been upgraded from version 0.70 to version 0.72 Capturing of command output (both C and C) is now supported @@ -260,6 +289,22 @@ performance under ithreads. =item * +XXX This will probably be 2.53 for 5.15.1, as there has been a CPAN +release of 2.52. + +L has been upgraded from version 2.51 to 2.52. + +Some extraneous (and erroneous) entries have been removed +[rt.cpan.org #69108]. + +=item * + +L has been upgraded from version 3.15_05 to 3.15_06. + +The B<-v> option now fetches the right section for C<$0>. + +=item * + L has been upgraded from version 3.16 to version 3.17 =item * @@ -311,6 +356,10 @@ XXX Changes which create B files in F go here. L describes Perl's DTrace support, listing the provided probes and gives examples of their use. +=head3 L + +The delta file for Perl 5.14.1 has been copied to blead. + =head2 Changes to Existing Documentation XXX Changes which significantly change existing files in F go here. @@ -329,6 +378,18 @@ XXX Description of the change here L was extended with documentation on inline typemaps. +=item * + +L has a new L +section explaining how circularities may not be freed and how to solve that +with weak references. + +=item * + +The documentation for smart match in L has been corrected for the +case of C on the left-hand side. The list of different smart match +behaviours had an item in the wrong place. + =back =head1 Diagnostics @@ -380,7 +441,26 @@ XXX Changes (i.e. rewording) of diagnostic messages go here =item * -XXX Describe change here +The L +error message now says "negative version number" within the parentheses, +rather than "non-numeric data", for negative numbers. + +=item * + +The two warnings +L +and +L +are no longer mutually exclusive: the same C construct may produce +both. + +=item * + +Warnings that mention the names of lexical (C) variables with Unicode +characters in them now respect the presence or absence of the C<:utf8> +layer on the output handle, instead of outputting UTF8 regardless. Also, +the correct names are included in the strings passed to C<$SIG{__WARN__}> +handlers, rather than the raw UTF8 bytes. =back @@ -590,6 +670,23 @@ scalars that were sharing the same string buffer. =item * +C blocks are now capable of returning variables declared inside the +enclosing C block [perl #93548]. + +=item * + +A problem with context propagation when a C block is an argument to +C has been fixed. It used to cause undefined to be returned in +some cases of a C inside an C block which itself is followed by +another C. + +=item * + +Calling C with a tainted constant no longer causes constants in +subsequently compiled code to become tainted [perl #64804]. + +=item * + The C C macro now returns false for read-only copies of typeglobs, such as those created by: -- 2.7.4