summaryrefslogtreecommitdiff
path: root/pod
diff options
context:
space:
mode:
authorRafael Garcia-Suarez <rgarciasuarez@gmail.com>2007-10-09 13:06:26 +0000
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2007-10-09 13:06:26 +0000
commitcf6c151c4d1b7ed05e154d608f547018d54674bc (patch)
tree6a23c8de2a0eb0a3cc74e135e3e66decfc3b484d /pod
parentffb0b41ddab819dfe927b571e62eeff6a7811557 (diff)
downloadperl-cf6c151c4d1b7ed05e154d608f547018d54674bc.tar.gz
Add a rough, incomplete version of perl5100delta
p4raw-id: //depot/perl@32080
Diffstat (limited to 'pod')
-rw-r--r--pod/perl.pod1
-rw-r--r--pod/perl5100delta.pod611
-rw-r--r--pod/perltoc.pod603
3 files changed, 1074 insertions, 141 deletions
diff --git a/pod/perl.pod b/pod/perl.pod
index 80768fa962..ce8f29814f 100644
--- a/pod/perl.pod
+++ b/pod/perl.pod
@@ -146,6 +146,7 @@ For ease of access, the Perl manual has been split up into several sections.
perlhist Perl history records
perldelta Perl changes since previous version
+ perl595delta Perl changes in version 5.9.5
perl594delta Perl changes in version 5.9.4
perl593delta Perl changes in version 5.9.3
perl592delta Perl changes in version 5.9.2
diff --git a/pod/perl5100delta.pod b/pod/perl5100delta.pod
new file mode 100644
index 0000000000..6b3db37c1a
--- /dev/null
+++ b/pod/perl5100delta.pod
@@ -0,0 +1,611 @@
+TODO: perl591delta and further
+
+=head1 NAME
+
+perldelta - what is new for perl 5.10.0
+
+=head1 DESCRIPTION
+
+This document describes the differences between the 5.8.8 release and
+the 5.10.0 release.
+
+Many of the bug fixes in 5.10.0 were already seen in the 5.8.X maintenance
+releases; they are not duplicated here and are documented in the set of
+man pages named perl58[1-8]?delta.
+
+=head1 Incompatible Changes
+
+=head2 Packing and UTF-8 strings
+
+=for XXX update this
+
+The semantics of pack() and unpack() regarding UTF-8-encoded data has been
+changed. Processing is now by default character per character instead of
+byte per byte on the underlying encoding. Notably, code that used things
+like C<pack("a*", $string)> to see through the encoding of string will now
+simply get back the original $string. Packed strings can also get upgraded
+during processing when you store upgraded characters. You can get the old
+behaviour by using C<use bytes>.
+
+To be consistent with pack(), the C<C0> in unpack() templates indicates
+that the data is to be processed in character mode, i.e. character by
+character; on the contrary, C<U0> in unpack() indicates UTF-8 mode, where
+the packed string is processed in its UTF-8-encoded Unicode form on a byte
+by byte basis. This is reversed with regard to perl 5.8.X.
+
+Moreover, C<C0> and C<U0> can also be used in pack() templates to specify
+respectively character and byte modes.
+
+C<C0> and C<U0> in the middle of a pack or unpack format now switch to the
+specified encoding mode, honoring parens grouping. Previously, parens were
+ignored.
+
+Also, there is a new pack() character format, C<W>, which is intended to
+replace the old C<C>. C<C> is kept for unsigned chars coded as bytes in
+the strings internal representation. C<W> represents unsigned (logical)
+character values, which can be greater than 255. It is therefore more
+robust when dealing with potentially UTF-8-encoded data (as C<C> will wrap
+values outside the range 0..255, and not respect the string encoding).
+
+In practice, that means that pack formats are now encoding-neutral, except
+C<C>.
+
+For consistency, C<A> in unpack() format now trims all Unicode whitespace
+from the end of the string. Before perl 5.9.2, it used to strip only the
+classical ASCII space characters.
+
+=head2 The C<$*> and C<$#> variables have been removed
+
+C<$*>, which was deprecated in favor of the C</s> and C</m> regexp
+modifiers, has been removed.
+
+The deprecated C<$#> variable (output format for numbers) has been
+removed.
+
+Two new warnings, C<$#/$* is no longer supported>, have been added.
+
+=head2 substr() lvalues are no longer fixed-length
+
+The lvalues returned by the three argument form of substr() used to be a
+"fixed length window" on the original string. In some cases this could
+cause surprising action at distance or other undefined behaviour. Now the
+length of the window adjusts itself to the length of the string assigned to
+it.
+
+=head2 Parsing of C<-f _>
+
+The identifier C<_> is now forced to be a bareword after a filetest
+operator. This solves a number of misparsing issues when a global C<_>
+subroutine is defined.
+
+=head2 C<:unique>
+
+The C<:unique> attribute has been made a no-op, since its current
+implementation was fundamentally flawed and not threadsafe.
+
+=head2 Scoping of the C<sort> pragma
+
+The C<sort> pragma is now lexically scoped. Its effect used to be global.
+
+=head2 Scoping of C<bignum>, C<bigint>, C<bigrat>
+
+The three numeric pragmas C<bignum>, C<bigint> and C<bigrat> are now
+lexically scoped. (Tels)
+
+=head2 Effect of pragmas in eval
+
+The compile-time value of the C<%^H> hint variable can now propagate into
+eval("")uated code. This makes it more useful to implement lexical
+pragmas.
+
+As a side-effect of this, the overloaded-ness of constants now propagates
+into eval("").
+
+=head2 chdir FOO
+
+A bareword argument to chdir() is now recognized as a file handle.
+Earlier releases interpreted the bareword as a directory name.
+(Gisle Aas)
+
+=head2 Handling of .pmc files
+
+An old feature of perl was that before C<require> or C<use> look for a
+file with a F<.pm> extension, they will first look for a similar filename
+with a F<.pmc> extension. If this file is found, it will be loaded in
+place of any potentially existing file ending in a F<.pm> extension.
+
+Previously, F<.pmc> files were loaded only if more recent than the
+matching F<.pm> file. Starting with 5.9.4, they'll be always loaded if
+they exist.
+
+=head2 @- and @+ in patterns
+
+The special arrays C<@-> and C<@+> are no longer interpolated in regular
+expressions. (Sadahiro Tomoyuki)
+
+=head2 $AUTOLOAD can now be tainted
+
+If you call a subroutine by a tainted name, and if it defers to an
+AUTOLOAD function, then $AUTOLOAD will be (correctly) tainted.
+(Rick Delaney)
+
+=head2 Tainting and printf
+
+When perl is run under taint mode, C<printf()> and C<sprintf()> will now
+reject any tainted format argument. (Rafael Garcia-Suarez)
+
+=head2 undef and signal handlers
+
+Undefining or deleting a signal handler via C<undef $SIG{FOO}> is now
+equivalent to setting it to C<'DEFAULT'>. (Rafael Garcia-Suarez)
+
+=head2 strictures and array/hash dereferencing in defined()
+
+C<defined @$foo> and C<defined %$bar> are now subject to C<strict 'refs'>
+(that is, C<$foo> and C<$bar> shall be proper references there.)
+(Nicholas Clark)
+
+(However, C<defined(@foo)> and C<defined(%bar)> are discouraged constructs
+anyway.)
+
+=head2 C<(?p{})> has been removed
+
+The regular expression construct C<(?p{})>, which was deprecated in perl
+5.8, has been removed. Use C<(??{})> instead. (Rafael Garcia-Suarez)
+
+=head2 Pseudo-hashes have been removed
+
+Support for pseudo-hashes has been removed from Perl 5.9. (The C<fields>
+pragma remains here, but uses an alternate implementation.)
+
+=head2 Removal of the bytecode compiler and of perlcc
+
+C<perlcc>, the byteloader and the supporting modules (B::C, B::CC,
+B::Bytecode, etc.) are no longer distributed with the perl sources. Those
+experimental tools have never worked reliably, and, due to the lack of
+volunteers to keep them in line with the perl interpreter developments, it
+was decided to remove them instead of shipping a broken version of those.
+The last version of those modules can be found with perl 5.9.4.
+
+However the B compiler framework stays supported in the perl core, as with
+the more useful modules it has permitted (among others, B::Deparse and
+B::Concise).
+
+=head2 Removal of the JPL
+
+The JPL (Java-Perl Linguo) has been removed from the perl sources tarball.
+
+=head2 Recursive inheritance detected earlier
+
+Perl will now immediately throw an exception if you modify any package's
+C<@ISA> in such a way that it would cause recursive inheritance.
+
+Previously, the exception would not occur until Perl attempted to make
+use of the recursive inheritance while resolving a method or doing a
+C<$foo-E<gt>isa($bar)> lookup.
+
+=head1 Core Enhancements
+
+=head2 The C<feature> pragma
+
+The C<feature> pragma is used to enable new syntax that would break Perl's
+backwards-compatibility with older releases of the language. It's a lexical
+pragma, like C<strict> or C<warnings>.
+
+Currently the following new features are available: C<switch> (adds a
+switch statement), C<say> (adds a C<say> built-in function), and C<state>
+(adds an C<state> keyword for declaring "static" variables). Those
+features are described in their own sections of this document.
+
+The C<feature> pragma is also implicitly loaded when you require a minimal
+perl version (with the C<use VERSION> construct) greater than, or equal
+to, 5.9.5. See L<feature> for details.
+
+=head2 New B<-E> command-line switch
+
+B<-E> is equivalent to B<-e>, but it implicitly enables all
+optional features (like C<use feature ":5.10">).
+
+=head2 Defined-or operator
+
+A new operator C<//> (defined-or) has been implemented.
+The following statement:
+
+ $a // $b
+
+is merely equivalent to
+
+ defined $a ? $a : $b
+
+and
+
+ $c //= $d;
+
+can now be used instead of
+
+ $c = $d unless defined $c;
+
+The C<//> operator has the same precedence and associativity as C<||>.
+Special care has been taken to ensure that this operator Do What You Mean
+while not breaking old code, but some edge cases involving the empty
+regular expression may now parse differently. See L<perlop> for
+details.
+
+=head2 Switch and Smart Match operator
+
+Perl 5 now has a switch statement. It's available when C<use feature
+'switch'> is in effect. This feature introduces three new keywords,
+C<given>, C<when>, and C<default>:
+
+ given ($foo) {
+ when (/^abc/) { $abc = 1; }
+ when (/^def/) { $def = 1; }
+ when (/^xyz/) { $xyz = 1; }
+ default { $nothing = 1; }
+ }
+
+A more complete description of how Perl matches the switch variable
+against the C<when> conditions is given in L<perlsyn/"Switch statements">.
+
+This kind of match is called I<smart match>, and it's also possible to use
+it outside of switch statements, via the new C<~~> operator. See
+L<perlsyn/"Smart matching in detail">.
+
+This feature was contributed by Robin Houston.
+
+=head2 Regular expressions
+
+=over 4
+
+=item Recursive Patterns
+
+It is now possible to write recursive patterns without using the C<(??{})>
+construct. This new way is more efficient, and in many cases easier to
+read.
+
+Each capturing parenthesis can now be treated as an independent pattern
+that can be entered by using the C<(?PARNO)> syntax (C<PARNO> standing for
+"parenthesis number"). For example, the following pattern will match
+nested balanced angle brackets:
+
+ /
+ ^ # start of line
+ ( # start capture buffer 1
+ < # match an opening angle bracket
+ (?: # match one of:
+ (?> # don't backtrack over the inside of this group
+ [^<>]+ # one or more non angle brackets
+ ) # end non backtracking group
+ | # ... or ...
+ (?1) # recurse to bracket 1 and try it again
+ )* # 0 or more times.
+ > # match a closing angle bracket
+ ) # end capture buffer one
+ $ # end of line
+ /x
+
+Note, users experienced with PCRE will find that the Perl implementation
+of this feature differs from the PCRE one in that it is possible to
+backtrack into a recursed pattern, whereas in PCRE the recursion is
+atomic or "possessive" in nature. (Yves Orton)
+
+=item Named Capture Buffers
+
+It is now possible to name capturing parenthesis in a pattern and refer to
+the captured contents by name. The naming syntax is C<< (?<NAME>....) >>.
+It's possible to backreference to a named buffer with the C<< \k<NAME> >>
+syntax. In code, the new magical hashes C<%+> and C<%-> can be used to
+access the contents of the capture buffers.
+
+Thus, to replace all doubled chars, one could write
+
+ s/(?<letter>.)\k<letter>/$+{letter}/g
+
+Only buffers with defined contents will be "visible" in the C<%+> hash, so
+it's possible to do something like
+
+ foreach my $name (keys %+) {
+ print "content of buffer '$name' is $+{$name}\n";
+ }
+
+The C<%-> hash is a bit more complete, since it will contain array refs
+holding values from all capture buffers similarly named, if there should
+be many of them.
+
+C<%+> and C<%-> are implemented as tied hashes through the new module
+C<Tie::Hash::NamedCapture>.
+
+Users exposed to the .NET regex engine will find that the perl
+implementation differs in that the numerical ordering of the buffers
+is sequential, and not "unnamed first, then named". Thus in the pattern
+
+ /(A)(?<B>B)(C)(?<D>D)/
+
+$1 will be 'A', $2 will be 'B', $3 will be 'C' and $4 will be 'D' and not
+$1 is 'A', $2 is 'C' and $3 is 'B' and $4 is 'D' that a .NET programmer
+would expect. This is considered a feature. :-) (Yves Orton)
+
+=item Possessive Quantifiers
+
+Perl now supports the "possessive quantifier" syntax of the "atomic match"
+pattern. Basically a possessive quantifier matches as much as it can and never
+gives any back. Thus it can be used to control backtracking. The syntax is
+similar to non-greedy matching, except instead of using a '?' as the modifier
+the '+' is used. Thus C<?+>, C<*+>, C<++>, C<{min,max}+> are now legal
+quantifiers. (Yves Orton)
+
+=item Backtracking control verbs
+
+The regex engine now supports a number of special-purpose backtrack
+control verbs: (*THEN), (*PRUNE), (*MARK), (*SKIP), (*COMMIT), (*FAIL)
+and (*ACCEPT). See L<perlre> for their descriptions. (Yves Orton)
+
+=item Relative backreferences
+
+A new syntax C<\g{N}> or C<\gN> where "N" is a decimal integer allows a
+safer form of back-reference notation as well as allowing relative
+backreferences. This should make it easier to generate and embed patterns
+that contain backreferences. See L<perlre/"Capture buffers">. (Yves Orton)
+
+=item C<\K> escape
+
+The functionality of Jeff Pinyan's module Regexp::Keep has been added to
+the core. You can now use in regular expressions the special escape C<\K>
+as a way to do something like floating length positive lookbehind. It is
+also useful in substitutions like:
+
+ s/(foo)bar/$1/g
+
+that can now be converted to
+
+ s/foo\Kbar//g
+
+which is much more efficient. (Yves Orton)
+
+=item Vertical and horizontal whitespace, and linebreak
+
+Regular expressions now recognize the C<\v> and C<\h> escapes, that match
+vertical and horizontal whitespace, respectively. C<\V> and C<\H>
+logically match their complements.
+
+C<\R> matches a generic linebreak, that is, vertical whitespace, plus
+the multi-character sequence C<"\x0D\x0A">.
+
+=back
+
+=head2 C<say()>
+
+say() is a new built-in, only available when C<use feature 'say'> is in
+effect, that is similar to print(), but that implicitly appends a newline
+to the printed string. See L<perlfunc/say>. (Robin Houston)
+
+=head2 Lexical C<$_>
+
+The default variable C<$_> can now be lexicalized, by declaring it like
+any other lexical variable, with a simple
+
+ my $_;
+
+The operations that default on C<$_> will use the lexically-scoped
+version of C<$_> when it exists, instead of the global C<$_>.
+
+In a C<map> or a C<grep> block, if C<$_> was previously my'ed, then the
+C<$_> inside the block is lexical as well (and scoped to the block).
+
+In a scope where C<$_> has been lexicalized, you can still have access to
+the global version of C<$_> by using C<$::_>, or, more simply, by
+overriding the lexical declaration with C<our $_>.
+
+=head2 The C<_> prototype
+
+A new prototype character has been added. C<_> is equivalent to C<$> (it
+denotes a scalar), but defaults to C<$_> if the corresponding argument
+isn't supplied. Due to the optional nature of the argument, you can only
+use it at the end of a prototype, or before a semicolon.
+
+This has a small incompatible consequence: the prototype() function has
+been adjusted to return C<_> for some built-ins in appropriate cases (for
+example, C<prototype('CORE::rmdir')>). (Rafael Garcia-Suarez)
+
+=head2 UNITCHECK blocks
+
+C<UNITCHECK>, a new special code block has been introduced, in addition to
+C<BEGIN>, C<CHECK>, C<INIT> and C<END>.
+
+C<CHECK> and C<INIT> blocks, while useful for some specialized purposes,
+are always executed at the transition between the compilation and the
+execution of the main program, and thus are useless whenever code is
+loaded at runtime. On the other hand, C<UNITCHECK> blocks are executed
+just after the unit which defined them has been compiled. See L<perlmod>
+for more information. (Alex Gough)
+
+=head2 New Pragma, C<mro>
+
+A new pragma, C<mro> (for Method Resolution Order) has been added. It
+permits to switch, on a per-class basis, the algorithm that perl uses to
+find inherited methods in case of a mutiple inheritance hierachy. The
+default MRO hasn't changed (DFS, for Depth First Search). Another MRO is
+available: the C3 algorithm. See L<mro> for more information.
+(Brandon Black)
+
+Note that, due to changes in the implentation of class hierarchy search,
+code that used to undef the C<*ISA> glob will most probably break. Anyway,
+undef'ing C<*ISA> had the side-effect of removing the magic on the @ISA
+array and should not have been done in the first place.
+
+=head2 readpipe() is now overridable
+
+The built-in function readpipe() is now overridable. Overriding it permits
+also to override its operator counterpart, C<qx//> (a.k.a. C<``>).
+Moreover, it now defaults to C<$_> if no argument is provided. (Rafael
+Garcia-Suarez)
+
+=head2 default argument for readline()
+
+readline() now defaults to C<*ARGV> if no argument is provided. (Rafael
+Garcia-Suarez)
+
+=head2 state() variables
+
+A new class of variables has been introduced. State variables are similar
+to C<my> variables, but are declared with the C<state> keyword in place of
+C<my>. They're visible only in their lexical scope, but their value is
+persistent: unlike C<my> variables, they're not undefined at scope entry,
+but retain their previous value. (Rafael Garcia-Suarez, Nicholas Clark)
+
+To use state variables, one needs to enable them by using
+
+ use feature "state";
+
+or by using the C<-E> command-line switch in one-liners.
+See L<perlsub/"Persistent variables via state()">.
+
+=head2 Stacked filetest operators
+
+As a new form of syntactic sugar, it's now possible to stack up filetest
+operators. You can now write C<-f -w -x $file> in a row to mean
+C<-x $file && -w _ && -f _>. See L<perlfunc/-X>.
+
+=head2 UNIVERSAL::DOES()
+
+The C<UNIVERSAL> class has a new method, C<DOES()>. It has been added to
+solve semantic problems with the C<isa()> method. C<isa()> checks for
+inheritance, while C<DOES()> has been designed to be overridden when
+module authors use other types of relations between classes (in addition
+to inheritance). (chromatic)
+
+See L<< UNIVERSAL/"$obj->DOES( ROLE )" >>.
+
+=head2 C<CLONE_SKIP()>
+
+Perl has now support for the C<CLONE_SKIP> special subroutine. Like
+C<CLONE>, C<CLONE_SKIP> is called once per package; however, it is called
+just before cloning starts, and in the context of the parent thread. If it
+returns a true value, then no objects of that class will be cloned. See
+L<perlmod> for details. (Contributed by Dave Mitchell.)
+
+=head2 Formats
+
+Formats were improved in several ways. A new field, C<^*>, can be used for
+variable-width, one-line-at-a-time text. Null characters are now handled
+correctly in picture lines. Using C<@#> and C<~~> together will now
+produce a compile-time error, as those format fields are incompatible.
+L<perlform> has been improved, and miscellaneous bugs fixed.
+
+=head2 Byte-order modifiers for pack() and unpack()
+
+There are two new byte-order modifiers, C<E<gt>> (big-endian) and C<E<lt>>
+(little-endian), that can be appended to most pack() and unpack() template
+characters and groups to force a certain byte-order for that type or group.
+See L<perlfunc/pack> and L<perlpacktut> for details.
+
+=head2 Byte count feature in pack()
+
+A new pack() template character, C<".">, returns the number of characters
+read so far.
+
+=head2 C<no VERSION>
+
+You can now use C<no> followed by a version number to specify that you
+want to use a version of perl older than the specified one.
+
+=head2 C<chdir>, C<chmod> and C<chown> on filehandles
+
+C<chdir>, C<chmod> and C<chown> can now work on filehandles as well as
+filenames, if the system supports respectively C<fchdir>, C<fchmod> and
+C<fchown>, thanks to a patch provided by Gisle Aas.
+
+=head2 OS groups
+
+C<$(> and C<$)> now return groups in the order where the OS returns them,
+thanks to Gisle Aas. This wasn't previously the case.
+
+=head2 Recursive sort subs
+
+You can now use recursive subroutines with sort(), thanks to Robin Houston.
+
+=head2 Exceptions in constant folding
+
+The constant folding routine is now wrapped in an exception handler, and
+if folding throws an exception (such as attempting to evaluate 0/0), perl
+now retains the current optree, rather than aborting the whole program.
+(Nicholas Clark, Dave Mitchell)
+
+=head2 Source filters in @INC
+
+It's possible to enhance the mechanism of subroutine hooks in @INC by
+adding a source filter on top of the filehandle opened and returned by the
+hook. This feature was planned a long time ago, but wasn't quite working
+until now. See L<perlfunc/require> for details. (Nicholas Clark)
+
+=head2 New internal variables
+
+=over 4
+
+=item C<${^RE_DEBUG_FLAGS}>
+
+This variable controls what debug flags are in effect for the regular
+expression engine when running under C<use re "debug">. See L<re> for
+details.
+
+=item C<${^CHILD_ERROR_NATIVE}>
+
+This variable gives the native status returned by the last pipe close,
+backtick command, successful call to wait() or waitpid(), or from the
+system() operator. See L<perlrun> for details. (Contributed by Gisle Aas.)
+
+=back
+
+=head2 Miscellaneous
+
+C<unpack()> now defaults to unpacking the C<$_> variable.
+
+C<mkdir()> without arguments now defaults to C<$_>.
+
+The internal dump output has been improved, so that non-printable characters
+such as newline and backspace are output in C<\x> notation, rather than
+octal.
+
+The B<-C> option can no longer be used on the C<#!> line. It wasn't
+working there anyway.
+
+=head2 UCD 5.0.0
+
+The copy of the Unicode Character Database included in Perl 5 has
+been updated to version 5.0.0.
+
+
+=head2 MAD
+
+MAD, which stands for I<Misc Attribute Decoration>, is a
+still-in-development work leading to a Perl 5 to Perl 6 converter. To
+enable it, it's necessary to pass the argument C<-Dmad> to Configure. The
+obtained perl isn't binary compatible with a regular perl 5.9.4, and has
+space and speed penalties; moreover not all regression tests still pass
+with it. (Larry Wall, Nicholas Clark)
+
+=head1 Modules and Pragmata
+=head1 Utility Changes
+=head1 New Documentation
+=head1 Performance Enhancements
+=head1 Installation and Configuration Improvements
+=head1 Selected Bug Fixes
+=head1 New or Changed Diagnostics
+=head1 Changed Internals
+=head1 New Tests
+=head1 Known Problems
+=head1 Platform Specific Problems
+=head1 Reporting Bugs
+
+=head1 SEE ALSO
+
+The F<Changes> file and the perl590delta to perl595delta man pages 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
diff --git a/pod/perltoc.pod b/pod/perltoc.pod
index 160943a052..9504714611 100644
--- a/pod/perltoc.pod
+++ b/pod/perltoc.pod
@@ -2001,10 +2001,9 @@ X<operator, logical, not> X<not>
X<operator, logical, and> X<and>
=item Logical or, Defined or, and Exclusive Or
-X<operator, logical, or> X<operator, logical, xor> X<operator, logical,
-err>
+X<operator, logical, or> X<operator, logical, xor>
X<operator, logical, defined or> X<operator, logical, exclusive or>
-X<or> X<xor> X<err>
+X<or> X<xor>
=item C Operators Missing From Perl
X<operator, missing from perl> X<&> X<*>
@@ -2153,7 +2152,7 @@ flow of your Perl program X<control flow>, Keywords related to switch,
Keywords related to scoping, Miscellaneous functions, Functions for
processes and process groups X<process> X<pid> X<process id>, Keywords
related to perl modules X<module>, Keywords related to classes and
-object-orientedness X<object> X<class> X<package>, Low-level socket
+object-orientation X<object> X<class> X<package>, Low-level socket
functions X<socket> X<sock>, System V interprocess communication functions
X<IPC> X<System V> X<semaphore> X<shared memory> X<memory> X<message>,
Fetching user and group info X<user> X<group> X<password> X<uid> X<gid>
@@ -2605,7 +2604,7 @@ B<-M>[B<->]I<'module ...'>, B<-[mM]>[B<->]I<module=arg[,arg]...>, B<-n>
X<-n>, B<-p> X<-p>, B<-P> X<-P>, B<-s> X<-s>, B<-S> X<-S>, B<-t> X<-t>,
B<-T> X<-T>, B<-u> X<-u>, B<-U> X<-U>, B<-v> X<-v>, B<-V> X<-V>,
B<-V:>I<configvar>, B<-w> X<-w>, B<-W> X<-W>, B<-X> X<-X>, B<-x> X<-x>,
-B<-x> I<directory>
+B<-x>I<directory>
=back
@@ -2635,6 +2634,8 @@ X<SYS$LOGIN>
=item DESCRIPTION
+=item SEE ALSO
+
=back
=head2 perllexwarn - Perl Lexical Warnings
@@ -2666,8 +2667,6 @@ X<warning, reporting> X<warning, registering>
=back
-=item TODO
-
=item SEE ALSO
=item AUTHOR
@@ -2865,7 +2864,7 @@ m X</m> X<regex, multiline> X<regexp, multiline> X<regular expression,
multiline>, s X</s> X<regex, single-line> X<regexp, single-line> X<regular
expression, single-line>, i X</i> X<regex, case-insensitive> X<regexp,
case-insensitive> X<regular expression, case-insensitive>, x X</x>, p X</p>
-X<regex, preserve> X<regexp, preserve>
+X<regex, preserve> X<regexp, preserve>, g and c X</g> X</c>
=item Regular Expressions
@@ -2926,7 +2925,7 @@ C<(?(condition)yes-pattern|no-pattern)>
=item PCRE/Python Support
-C<< (?PE<lt>NAMEE<gt>pattern) >>, C<< (?P=NAME) >>, C<< (?P>NAME) >>
+C<< (?P<NAME>pattern) >>, C<< (?P=NAME) >>, C<< (?P>NAME) >>
=item BUGS
@@ -4265,31 +4264,32 @@ AnyDBM_File, Archive::Extract, Archive::Tar, Archive::Tar::File,
Attribute::Handlers, AutoLoader, AutoSplit, B, B::Concise, B::Debug,
B::Deparse, B::Lint, B::Showlex, B::Terse, B::Xref, Benchmark, CGI,
CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast, CGI::Pretty, CGI::Push,
-CGI::Switch, CGI::Util, CPAN, CPAN::FirstTime, CPAN::Kwalify, CPAN::Nox,
-CPAN::Version, CPANPLUS, CPANPLUS::Dist::Base, CPANPLUS::Dist::Sample,
-CPANPLUS::Shell::Classic, CPANPLUS::Shell::Default::Plugins::HOWTO, Carp,
-Carp::Heavy, Class::ISA, Class::Struct, Compress::Raw::Zlib,
-Compress::Zlib, Config, Cwd, DB, DBM_Filter, DBM_Filter::compress,
-DBM_Filter::encode, DBM_Filter::int32, DBM_Filter::null, DBM_Filter::utf8,
-DB_File, Data::Dumper, Devel::DProf, Devel::InnerPackage, Devel::Peek,
-Devel::SelfStubber, Digest, Digest::MD5, Digest::SHA, Digest::base,
-Digest::file, DirHandle, Dumpvalue, DynaLoader, Encode, Encode::Alias,
-Encode::Byte, Encode::CJKConstants, Encode::CN, Encode::CN::HZ,
-Encode::Config, Encode::EBCDIC, Encode::Encoder, Encode::Encoding,
-Encode::GSM0338, Encode::Guess, Encode::JP, Encode::JP::H2Z,
-Encode::JP::JIS7, Encode::KR, Encode::KR::2022_KR, Encode::MIME::Header,
-Encode::MIME::Name, Encode::PerlIO, Encode::Supported, Encode::Symbol,
-Encode::TW, Encode::Unicode, Encode::Unicode::UTF7, English, Env, Errno,
-Exporter, Exporter::Heavy, ExtUtils::CBuilder,
-ExtUtils::CBuilder::Platform::Windows, ExtUtils::Command,
-ExtUtils::Command::MM, ExtUtils::Constant, ExtUtils::Constant::Base,
-ExtUtils::Constant::Utils, ExtUtils::Constant::XS, ExtUtils::Embed,
-ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM,
-ExtUtils::MM_AIX, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin,
-ExtUtils::MM_DOS, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2,
-ExtUtils::MM_QNX, ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS,
-ExtUtils::MM_VOS, ExtUtils::MM_Win32, ExtUtils::MM_Win95, ExtUtils::MY,
-ExtUtils::MakeMaker, ExtUtils::MakeMaker::Config, ExtUtils::MakeMaker::FAQ,
+CGI::Switch, CGI::Util, CORE, CPAN, CPAN::API::HOWTO, CPAN::FirstTime,
+CPAN::Kwalify, CPAN::Nox, CPAN::Version, CPANPLUS, CPANPLUS::Dist::Base,
+CPANPLUS::Dist::Sample, CPANPLUS::Shell::Classic,
+CPANPLUS::Shell::Default::Plugins::HOWTO, Carp, Carp::Heavy, Class::ISA,
+Class::Struct, Compress::Raw::Zlib, Compress::Zlib, Config, Cwd, DB,
+DBM_Filter, DBM_Filter::compress, DBM_Filter::encode, DBM_Filter::int32,
+DBM_Filter::null, DBM_Filter::utf8, DB_File, Data::Dumper, Devel::DProf,
+Devel::InnerPackage, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5,
+Digest::SHA, Digest::base, Digest::file, DirHandle, Dumpvalue, DynaLoader,
+Encode, Encode::Alias, Encode::Byte, Encode::CJKConstants, Encode::CN,
+Encode::CN::HZ, Encode::Config, Encode::EBCDIC, Encode::Encoder,
+Encode::Encoding, Encode::GSM0338, Encode::Guess, Encode::JP,
+Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR, Encode::KR::2022_KR,
+Encode::MIME::Header, Encode::MIME::Name, Encode::PerlIO,
+Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode,
+Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy,
+ExtUtils::CBuilder, ExtUtils::CBuilder::Platform::Windows,
+ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant,
+ExtUtils::Constant::Base, ExtUtils::Constant::Utils,
+ExtUtils::Constant::XS, ExtUtils::Embed, ExtUtils::Install,
+ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM_AIX,
+ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, ExtUtils::MM_DOS,
+ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_QNX,
+ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_VOS,
+ExtUtils::MM_Win32, ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker,
+ExtUtils::MakeMaker::Config, ExtUtils::MakeMaker::FAQ,
ExtUtils::MakeMaker::Tutorial, ExtUtils::MakeMaker::bytes,
ExtUtils::MakeMaker::vmsish, ExtUtils::Manifest, ExtUtils::Mkbootstrap,
ExtUtils::Mksymlists, ExtUtils::Packlist, ExtUtils::ParseXS,
@@ -4353,18 +4353,18 @@ Pod::Simple::TextContent, Pod::Simple::XMLOutStream, Pod::Text,
Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage,
SDBM_File, Safe, Scalar::Util, Search::Dict, SelectSaver, SelfLoader,
Shell, Socket, Storable, Switch, Symbol, Sys::Hostname, Sys::Syslog,
-Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Term::UI, Test,
-Test::Builder, Test::Builder::Module, Test::Builder::Tester,
-Test::Builder::Tester::Color, Test::Harness, Test::Harness::Assert,
-Test::Harness::Iterator, Test::Harness::Point, Test::Harness::Results,
-Test::Harness::Straps, Test::Harness::TAP, Test::Harness::Util, Test::More,
-Test::Simple, Test::Tutorial, Text::Abbrev, Text::Balanced,
-Text::ParseWords, Text::Soundex, Text::Tabs, Text::Wrap, Thread,
-Thread::Queue, Thread::Semaphore, Tie::Array, Tie::File, Tie::Handle,
-Tie::Hash, Tie::Hash::NamedCapture, Tie::Memoize, Tie::RefHash,
-Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local, Time::Piece,
-Time::Piece::Seconds, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL,
-Unicode::Collate, Unicode::Normalize, Unicode::UCD, User::grent,
+Sys::Syslog::win32::Win32, Term::ANSIColor, Term::Cap, Term::Complete,
+Term::ReadLine, Term::UI, Test, Test::Builder, Test::Builder::Module,
+Test::Builder::Tester, Test::Builder::Tester::Color, Test::Harness,
+Test::Harness::Assert, Test::Harness::Iterator, Test::Harness::Point,
+Test::Harness::Results, Test::Harness::Straps, Test::Harness::TAP,
+Test::Harness::Util, Test::More, Test::Simple, Test::Tutorial,
+Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Soundex, Text::Tabs,
+Text::Wrap, Thread, Thread::Queue, Thread::Semaphore, Tie::Array,
+Tie::File, Tie::Handle, Tie::Hash, Tie::Hash::NamedCapture, Tie::Memoize,
+Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::HiRes, Time::Local,
+Time::Piece, Time::Piece::Seconds, Time::gmtime, Time::localtime, Time::tm,
+UNIVERSAL, Unicode::Collate, Unicode::Normalize, Unicode::UCD, User::grent,
User::pwent, Win32, Win32API::File, Win32CORE, XS::APItest, XS::Typemap,
XSLoader
@@ -4769,9 +4769,10 @@ currently selected output channel, CV
=item D
dangling statement, data structure, data type, datagram, DBM, declaration,
-decrement, default, defined, delimiter, dereference, derived class,
-descriptor, destroy, destructor, device, directive, directory, directory
-handle, dispatch, distribution, dweomer, dwimmer, dynamic scoping
+decrement, default, defined, delimiter, deprecated modules and features,
+dereference, derived class, descriptor, destroy, destructor, device,
+directive, directory, directory handle, dispatch, distribution, (to be)
+dropped modules, dweomer, dwimmer, dynamic scoping
=item E
@@ -5526,7 +5527,7 @@ callback
C</m> - RXf_PMf_MULTILINE, C</s> - RXf_PMf_SINGLELINE, C</i> -
RXf_PMf_FOLD, C</x> - RXf_PMf_EXTENDED, C</p> - RXf_PMf_KEEPCOPY,
RXf_PMf_LOCALE, RXf_UTF8, RXf_SPLIT, RXf_SKIPWHITE, RXf_START_ONLY,
-RXf_WHITE
+RXf_WHITE, RXf_NULL
=item exec
@@ -5792,9 +5793,8 @@ vverify X<vverify>
=item MRO Functions
-mro_get_linear_isa X<mro_get_linear_isa>, mro_get_linear_isa_c3
-X<mro_get_linear_isa_c3>, mro_get_linear_isa_dfs X<mro_get_linear_isa_dfs>,
-mro_method_changed_in X<mro_method_changed_in>
+mro_get_linear_isa X<mro_get_linear_isa>, mro_method_changed_in
+X<mro_method_changed_in>
=item Multicall Functions
@@ -6021,7 +6021,8 @@ magic_sethint X<magic_sethint>, mg_localize X<mg_localize>
=item MRO Functions
-mro_isa_changed_in X<mro_isa_changed_in>
+mro_get_linear_isa_c3 X<mro_get_linear_isa_c3>, mro_get_linear_isa_dfs
+X<mro_get_linear_isa_dfs>, mro_isa_changed_in X<mro_isa_changed_in>
=item Pad Data Structures
@@ -6397,6 +6398,8 @@ L<http://perl.com/>, L<http://use.perl.org/>, L<http://www.perlmonks.org/>
=item test B
+=item Deparse inlined constants
+
=item A decent benchmark
=item fix tainting bugs
@@ -6435,6 +6438,8 @@ L<http://perl.com/>, L<http://use.perl.org/>, L<http://www.perlmonks.org/>
=over 4
+=item Modernize the order of directories in @INC
+
=item Make it clear from -v if this is the exact official release
=item Profile Perl - am I hot or not?
@@ -6459,6 +6464,8 @@ L<http://perl.com/>, L<http://use.perl.org/>, L<http://www.perlmonks.org/>
=item Unicode and glob()
+=item Unicode and lc/uc operators
+
=item use less 'memory'
=item Re-implement C<:unique> in a way that is actually thread-safe
@@ -6481,10 +6488,18 @@ L<http://perl.com/>, L<http://use.perl.org/>, L<http://www.perlmonks.org/>
=over 4
+=item state variable initialization in list context
+
=item Implement $value ~~ 0 .. $range
+=item A does() built-in
+
+=item Tied filehandles and write() don't mix
+
=item Attach/detach debugger from running program
+=item Optimize away empty destructors
+
=item LVALUE functions for lists
=item LVALUE functions in the debugger
@@ -6650,6 +6665,12 @@ and horizontal whitespace, and linebreak
=item bignum, bigint, bigrat
+=item Math::BigInt/Math::BigFloat
+
+config(), import(), roundmode common, bpi(), bcos(), bsin(), batan(),
+batan2(), bmuladd(), bexp(), bnok(), from_hex(), from_oct(), and
+from_bin(), as_oct()
+
=item New Core Modules
=item Module changes
@@ -6691,7 +6712,13 @@ C<Attribute::Handlers>, C<B::Lint>, C<B>, C<Thread>
=item Static build on Win32
-=item C<d_pseudofork>
+=item win32 builds
+
+=item C<d_pseudofork> and C<d_printf_format_null>
+
+=item Help
+
+=item 64bit systems
=item Ports
@@ -6723,6 +6750,145 @@ C<Attribute::Handlers>, C<B::Lint>, C<B>, C<Thread>
=back
+=head2 perl5100delta, perldelta - what is new for perl 5.10.0
+
+=over 4
+
+=item DESCRIPTION
+
+=item Incompatible Changes
+
+=over 4
+
+=item Packing and UTF-8 strings
+
+=item The C<$*> and C<$#> variables have been removed
+
+=item substr() lvalues are no longer fixed-length
+
+=item Parsing of C<-f _>
+
+=item C<:unique>
+
+=item Scoping of the C<sort> pragma
+
+=item Scoping of C<bignum>, C<bigint>, C<bigrat>
+
+=item Effect of pragmas in eval
+
+=item chdir FOO
+
+=item Handling of .pmc files
+
+=item @- and @+ in patterns
+
+=item $AUTOLOAD can now be tainted
+
+=item Tainting and printf
+
+=item undef and signal handlers
+
+=item strictures and array/hash dereferencing in defined()
+
+=item C<(?p{})> has been removed
+
+=item Pseudo-hashes have been removed
+
+=item Removal of the bytecode compiler and of perlcc
+
+=item Removal of the JPL
+
+=item Recursive inheritance detected earlier
+
+=back
+
+=item Core Enhancements
+
+=over 4
+
+=item The C<feature> pragma
+
+=item New B<-E> command-line switch
+
+=item Defined-or operator
+
+=item Switch and Smart Match operator
+
+=item Regular expressions
+
+Recursive Patterns, Named Capture Buffers, Possessive Quantifiers,
+Backtracking control verbs, Relative backreferences, C<\K> escape, Vertical
+and horizontal whitespace, and linebreak
+
+=item C<say()>
+
+=item Lexical C<$_>
+
+=item The C<_> prototype
+
+=item UNITCHECK blocks
+
+=item New Pragma, C<mro>
+
+=item readpipe() is now overridable
+
+=item default argument for readline()
+
+=item state() variables
+
+=item Stacked filetest operators
+
+=item UNIVERSAL::DOES()
+
+=item C<CLONE_SKIP()>
+
+=item Formats
+
+=item Byte-order modifiers for pack() and unpack()
+
+=item Byte count feature in pack()
+
+=item C<no VERSION>
+
+=item C<chdir>, C<chmod> and C<chown> on filehandles
+
+=item OS groups
+
+=item Recursive sort subs
+
+=item Exceptions in constant folding
+
+=item Source filters in @INC
+
+=item New internal variables
+
+C<${^RE_DEBUG_FLAGS}>, C<${^CHILD_ERROR_NATIVE}>
+
+=item Miscellaneous
+
+=item UCD 5.0.0
+
+=item MAD
+
+=back
+
+=item Modules and Pragmata
+=head1 Utility Changes
+=head1 New Documentation
+=head1 Performance Enhancements
+=head1 Installation and Configuration Improvements
+=head1 Selected Bug Fixes
+=head1 New or Changed Diagnostics
+=head1 Changed Internals
+=head1 New Tests
+=head1 Known Problems
+=head1 Platform Specific Problems
+=head1 Reporting Bugs
+
+=item SEE ALSO
+
+=back
+
=head2 perl595delta, perldelta - what is new for perl v5.9.5
=over 4
@@ -6785,6 +6951,12 @@ and horizontal whitespace, and linebreak
=item bignum, bigint, bigrat
+=item Math::BigInt/Math::BigFloat
+
+config(), import(), roundmode common, bpi(), bcos(), bsin(), batan(),
+batan2(), bmuladd(), bexp(), bnok(), from_hex(), from_oct(), and
+from_bin(), as_oct()
+
=item New Core Modules
=item Module changes
@@ -6826,7 +6998,13 @@ C<Attribute::Handlers>, C<B::Lint>, C<B>, C<Thread>
=item Static build on Win32
-=item C<d_pseudofork>
+=item win32 builds
+
+=item C<d_pseudofork> and C<d_printf_format_null>
+
+=item Help
+
+=item 64bit systems
=item Ports
@@ -10031,8 +10209,8 @@ C<PATH>, I<nroff>, Permissions
=item Optional Libraries for Perl on Cygwin
-C<-lcrypt>, C<-lgdbm> (C<use GDBM_File>), C<-ldb> (C<use DB_File>),
-C<-lcygipc> (C<use IPC::SysV>), C<-lutil>
+C<-lcrypt>, C<-lgdbm_compat> (C<use GDBM_File>), C<-ldb> (C<use DB_File>),
+C<cygserver> (C<use IPC::SysV>), C<-lutil>
=item Configure-time Options for Perl on Cygwin
@@ -10042,20 +10220,12 @@ C<-Dmksymlinks>
=item Suspicious Warnings on Cygwin
-I<dlsym()>, Win9x and C<d_eofnblk>, Compiler/Preprocessor defines
+Win9x and C<d_eofnblk>, Compiler/Preprocessor defines
=back
=item MAKE ON CYGWIN
-=over 4
-
-=item Errors on Cygwin
-
-=item ld2 on Cygwin
-
-=back
-
=item TEST ON CYGWIN
=over 4
@@ -10074,12 +10244,14 @@ I<dlsym()>, Win9x and C<d_eofnblk>, Compiler/Preprocessor defines
=item Script Portability on Cygwin
-Pathnames, Text/Binary, PerlIO, F<.exe>, cygwin vs. windows process ids,
-C<chown()>, Miscellaneous
+Pathnames, Text/Binary, PerlIO, F<.exe>, Cygwin vs. Windows process ids,
+Cygwin vs. Windows errors, C<chown()>, Miscellaneous
=item Prebuilt methods:
-C<Cwd::cwd>, C<Cygwin::pid_to_winpid>, C<Cygwin::winpid_to_pid>
+C<Cwd::cwd>, C<Cygwin::pid_to_winpid>, C<Cygwin::winpid_to_pid>,
+C<Cygwin::win_to_posix_path>, C<Cygwin::posix_to_win_path>,
+C<Cygwin::mount_table()>, C<Cygwin::mount_flags>, C<Cygwin::is_binmount>
=back
@@ -10088,7 +10260,7 @@ C<Cwd::cwd>, C<Cygwin::pid_to_winpid>, C<Cygwin::winpid_to_pid>
=item MANIFEST ON CYGWIN
Documentation, Build, Configure, Make, Install, Tests, Compiled Perl
-Source, Compiled Module Source, Perl Modules/Scripts
+Source, Compiled Module Source, Perl Modules/Scripts, Perl Module Tests
=item BUGS ON CYGWIN
@@ -10281,6 +10453,8 @@ DJGPP, Pthreads
=item nss_delete core dump from op/pwent or op/grent
+=item Miscellaneous
+
=item AUTHOR
=item DATE
@@ -11201,6 +11375,8 @@ Digital UNIX formerly known as DEC OSF/1) systems
=item PERL5LIB and PERLLIB
+=item The Perl Forked Debugger
+
=item PERL_VMS_EXCEPTION_DEBUG
=item Command line
@@ -11283,9 +11459,9 @@ utime LIST, waitpid PID,FLAGS
=item Setting Up Perl on Win32
Make, Command Shell, Borland C++, Microsoft Visual C++, Microsoft Visual
-C++ 2005 Express Edition, Microsoft Visual C++ Toolkit 2003, Microsoft
-Platform SDK 64-bit Compiler, MinGW release 3 with gcc, MinGW release 1
-with gcc
+C++ 2008 Express Edition Beta 2, Microsoft Visual C++ 2005 Express Edition,
+Microsoft Visual C++ Toolkit 2003, Microsoft Platform SDK 64-bit Compiler,
+MinGW release 3 with gcc, MinGW release 1 with gcc
=item Building
@@ -11470,9 +11646,10 @@ signal name: ..
=item BUGS AND LIMITATIONS
-Threadsafe modules, Using non-threadsafe modules, Parent-child threads,
-Creating threads inside special blocks, Unsafe signals, Perl has been built
-with C<PERL_OLD_SIGNALS> (see C<perl -V>), The environment variable
+Thread-safe modules, Using non-thread-safe modules, Current working
+directory, Environment variables, Parent-child threads, Creating threads
+inside special blocks, Unsafe signals, Perl has been built with
+C<PERL_OLD_SIGNALS> (see C<perl -V>), The environment variable
C<PERL_SIGNALS> is set to C<unsafe> (see L<perlrun/"PERL_SIGNALS">), The
module L<Perl::Unsafe::Signals> is used, Returning closures from threads,
Returning objects from threads, Perl Bugs and the CPAN Version of
@@ -11751,7 +11928,7 @@ escapes
=item DESCRIPTION
-=item CUSTOM TRANSLATORS
+=item ALIASES
=item CUSTOM ALIASES
@@ -11769,7 +11946,7 @@ escapes
=item charnames::vianame(name)
-=item ALIASES
+=item CUSTOM TRANSLATORS
=item ILLEGAL CHARACTERS
@@ -11799,9 +11976,11 @@ escapes
=item TECHNICAL NOTES
+=item CAVEATS
+
=item BUGS
-=item AUTHOR
+=item AUTHORS
=item COPYRIGHT
@@ -11963,8 +12142,6 @@ upgrading for byte-strings
=item The 'say' feature
-=item the 'err' feature
-
=item the 'state' feature
=back
@@ -12141,8 +12318,6 @@ operations
=back
-=item PERFORMANCE CONSIDERATIONS
-
=item SEE ALSO
=over 4
@@ -12647,6 +12822,10 @@ $ae->extract_path, $ae->files
=item File Extensions
+=item Supporting Very Large Files
+
+=item Bunzip2 support of arbitrary extensions.
+
=back
=item GLOBAL VARIABLES
@@ -12867,7 +13046,7 @@ Can't you lazy-load data instead?, How much memory will an X kb tar file
need?, What do you do with unsupported filetypes in an archive?, I'm using
WinZip, or some other non-POSIX client, and files are not being extracted
properly!, How do I extract only files that have property X from an
-archive?, How do I access .tar.Z files?
+archive?, How do I access .tar.Z files?, How do I handle Unicode strings?
=item TODO
@@ -13257,7 +13436,8 @@ B<-base>I<n>, B<-bigendian>, B<-littleendian>
=item Other options
-B<-main>, B<-nomain>, B<-nobanner>, B<-banner>, B<-banneris> => subref
+B<-src>, B<-stash="somepackage">, B<-main>, B<-nomain>, B<-nobanner>,
+B<-banner>, B<-banneris> => subref
=item Option Stickiness
@@ -13300,7 +13480,8 @@ B<#typenum>
perl -MO=Concise,bar foo.pl, perl -MDigest::MD5=md5 -MO=Concise,md5 -e1,
perl -MPOSIX -MO=Concise,_POSIX_ARG_MAX -e1, perl -MPOSIX -MO=Concise,a -e
'print _POSIX_SAVED_IDS', perl -MPOSIX -MO=Concise,a -e 'sub
-a{_POSIX_SAVED_IDS}'
+a{_POSIX_SAVED_IDS}', perl -MB::Concise -e
+'B::Concise::compile("-exec","-src", \%B::Concise::)->()'
=item Using B::Concise outside of the O framework
@@ -13365,7 +13546,8 @@ B<i>I<NUMBER>, B<T>, B<v>I<STRING>B<.>, B<-x>I<LEVEL>
=item ambient_pragmas
-strict, $[, bytes, utf8, integer, re, warnings, hint_bits, warning_bits
+strict, $[, bytes, utf8, integer, re, warnings, hint_bits, warning_bits,
+%^H
=item coderef2text
@@ -13982,6 +14164,22 @@ FCGI_SOCKET_PATH, FCGI_LISTEN_QUEUE
=back
+=head2 CORE - Pseudo-namespace for Perl's core routines
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item OVERRIDING CORE FUNCTIONS
+
+=item AUTHOR
+
+=item SEE ALSO
+
+=back
+
=head2 CPAN - query, download and build perl modules from CPAN sites
=over 4
@@ -14008,10 +14206,14 @@ and the C<fforce> pragma, Lockfile, Signals
=item mkmyconfig
+=item recent ***EXPERIMENTAL COMMAND***
+
=item recompile
=item report Bundle|Distribution|Module
+=item smoke ***EXPERIMENTAL COMMAND***
+
=item upgrade [Module|/Regex/]...
=item The four C<CPAN::*> Classes: Author, Bundle, Module, Distribution
@@ -14059,9 +14261,9 @@ cwd, getcwd, fastcwd, backtickcwd
=item Language Specs
-comment [scalar], cpanconfig [hash], disabled [boolean], goto [string],
-install [hash], make [hash], match [hash], patches [array], pl [hash], test
-[hash]
+comment [scalar], cpanconfig [hash], depends [hash] *** EXPERIMENTAL
+FEATURE ***, disabled [boolean], goto [string], install [hash], make
+[hash], match [hash], patches [array], pl [hash], test [hash]
=item Processing Instructions
@@ -14090,7 +14292,8 @@ CPAN::Bundle::inst_file(), CPAN::Bundle::inst_version(),
CPAN::Bundle::uptodate(), CPAN::Bundle::install(), CPAN::Bundle::make(),
CPAN::Bundle::readme(), CPAN::Bundle::test(),
CPAN::Distribution::as_glimpse(), CPAN::Distribution::as_string(),
-CPAN::Distribution::author, CPAN::Distribution::clean(),
+CPAN::Distribution::author, CPAN::Distribution::pretty_id(),
+CPAN::Distribution::base_id(), CPAN::Distribution::clean(),
CPAN::Distribution::containsmods(), CPAN::Distribution::cvs_import(),
CPAN::Distribution::dir(), CPAN::Distribution::force($method,@args),
CPAN::Distribution::get(), CPAN::Distribution::install(),
@@ -14168,7 +14371,7 @@ http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
=item FAQ
-1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15)
+1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16)
=item COMPATIBILITY
@@ -14194,6 +14397,28 @@ http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
=back
+=head2 CPAN::API::HOWTO - a recipe book for programming with CPAN.pm
+
+=over 4
+
+=item RECIPES
+
+=over 4
+
+=item What distribution contains a particular module?
+
+=item What modules does a particular distribution contain?
+
+=back
+
+=item SEE ALSO
+
+=item LICENSE
+
+=item AUTHOR
+
+=back
+
=head2 CPAN::FirstTime - Utility for CPAN::Config file Initialization
=over 4
@@ -14202,6 +14427,22 @@ http firewall, ftp firewall, One way visibility, SOCKS, IP Masquerade
=item DESCRIPTION
+=back
+
+auto_commit, build_cache, build_dir, build_dir_reuse,
+build_requires_install_policy, cache_metadata, check_sigs, colorize_output,
+colorize_print, colorize_warn, colorize_debug, commandnumber_in_prompt,
+ftp_passive, getcwd, histfile, histsize, inactivity_timeout, index_expire,
+inhibit_startup_message, keep_source_where, load_module_verbosity,
+makepl_arg, make_arg, make_install_arg, make_install_make_command,
+mbuildpl_arg, mbuild_arg, mbuild_install_arg, mbuild_install_build_command,
+pager, prefer_installer, prefs_dir, prerequisites_policy,
+randomize_urllist, scan_cache, shell, show_unparsable_versions,
+show_upload_date, show_zero_versions, tar_verbosity, term_is_latin,
+term_ornaments, test_report, use_sqlite, yaml_load_code, yaml_module
+
+=over 4
+
=item LICENSE
=back
@@ -14360,7 +14601,8 @@ verbose => BOOL] )
=over 4
-=item $mod_obj = $cb->parse_module( module => $modname|$distname|$modobj )
+=item $mod_obj = $cb->parse_module( module =>
+$modname|$distname|$modobj|URI )
Text::Bastardize, Text-Bastardize, Text-Bastardize-1.06,
AYRNIEU/Text-Bastardize, AYRNIEU/Text-Bastardize-1.06,
@@ -14603,7 +14845,7 @@ perlwrapper
=item add_SOMETHING( ITEM => VAL, [ITEM => VAL, ITEM => VAL, ... ] );
set|get_conf, set|get_program, _set|_get_build, _set|_get_source,
-_set|_get_mirror, _set|_get_dist, _set|_get_fetch, _set|_get_daemon
+_set|_get_mirror, _set|_get_fetch
=back
@@ -16500,11 +16742,11 @@ C<baserev>, C<bash>, C<bin>, C<binexp>, C<bison>, C<byacc>, C<byteorder>
C<c>, C<castflags>, C<cat>, C<cc>, C<cccdlflags>, C<ccdlflags>, C<ccflags>,
C<ccflags_uselargefiles>, C<ccname>, C<ccsymbols>, C<ccversion>, C<cf_by>,
-C<cf_email>, C<cf_time>, C<charsize>, C<chgrp>, C<chmod>, C<chown>,
-C<clocktype>, C<comm>, C<compress>, C<contains>, C<cp>, C<cpio>, C<cpp>,
-C<cpp_stuff>, C<cppccsymbols>, C<cppflags>, C<cpplast>, C<cppminus>,
-C<cpprun>, C<cppstdin>, C<cppsymbols>, C<crypt_r_proto>, C<cryptlib>,
-C<csh>, C<ctermid_r_proto>, C<ctime_r_proto>
+C<cf_email>, C<cf_time>, C<chgrp>, C<chmod>, C<chown>, C<clocktype>,
+C<comm>, C<compress>, C<contains>, C<cp>, C<cpio>, C<cpp>, C<cpp_stuff>,
+C<cppccsymbols>, C<cppflags>, C<cpplast>, C<cppminus>, C<cpprun>,
+C<cppstdin>, C<cppsymbols>, C<crypt_r_proto>, C<cryptlib>, C<csh>,
+C<ctermid_r_proto>, C<ctime_r_proto>
=item d
@@ -16736,7 +16978,7 @@ C<quadkind>, C<quadtype>
C<randbits>, C<randfunc>, C<random_r_proto>, C<randseedtype>, C<ranlib>,
C<rd_nodata>, C<readdir64_r_proto>, C<readdir_r_proto>, C<revision>, C<rm>,
-C<rmail>, C<run>, C<runnm>
+C<rm_try>, C<rmail>, C<run>, C<runnm>
=item s
@@ -16852,9 +17094,7 @@ abs_path, realpath, fast_abs_path
=back
-=head2 DB - programmatic interface to the Perl debugging API (draft,
-subject to
-change)
+=head2 DB - programmatic interface to the Perl debugging API
=over 4
@@ -17428,7 +17668,7 @@ $md5->add_bits($bitstring), $md5->digest, $md5->hexdigest, $md5->b64digest
=over 4
-=item SYNOPSIS (SHA)
+=item SYNOPSIS
=item SYNOPSIS (HMAC-SHA)
@@ -20035,7 +20275,7 @@ C<fileparse_set_fstype> X<filesystem>
=back
-=head2 File::CheckTree, validate - run many filetest checks on a tree
+=head2 File::CheckTree - run many filetest checks on a tree
=over 4
@@ -20330,7 +20570,7 @@ B<~>, B<~user>, B<.>, B<*>, B<?>, B<\>, B<[]>, B<{,}>, B<()>
=item FUNCTIONS
-mode, verbose, error, verbose, skip_others, keep_root, result, error
+mode, verbose, error, verbose, safe, keep_root, result, error
=item TRADITIONAL INTERFACE
@@ -20342,10 +20582,27 @@ mode, verbose, error, verbose, skip_others, keep_root, result, error
=item DIAGNOSTICS
+mkdir [path]: [errmsg] (SEVERE), No root path(s) specified, No such file or
+directory, cannot fetch initial working directory: [errmsg], cannot stat
+initial working directory: [errmsg], cannot chdir to [dir]: [errmsg],
+directory [dir] changed before chdir, expected dev=[n] inode=[n], actual
+dev=[n] ino=[n], aborting. (FATAL), cannot make directory [dir]
+read+writeable: [errmsg], cannot read [dir]: [errmsg], cannot reset chmod
+[dir]: [errmsg], cannot chdir to [parent-dir] from [child-dir]: [errmsg],
+aborting. (FATAL), cannot stat prior working directory [dir]: [errmsg],
+aborting. (FATAL), previous directory [parent-dir] changed before entering
+[child-dir], expected dev=[n] inode=[n], actual dev=[n] ino=[n], aborting.
+(FATAL), cannot make directory [dir] writeable: [errmsg], cannot remove
+directory [dir]: [errmsg], cannot restore permissions of [dir] to [0nnn]:
+[errmsg], cannot make file [file] writeable: [errmsg], cannot unlink file
+[file]: [errmsg], cannot restore permissions of [file] to [0nnn]: [errmsg]
+
=item SEE ALSO
=item BUGS
+=item ACKNOWLEDGEMENTS
+
=item AUTHORS
=item COPYRIGHT
@@ -20632,6 +20889,10 @@ devnull
tmpdir
+case_tolerant
+
+file_name_is_absolute
+
catfile
canonpath
@@ -25457,6 +25718,8 @@ Input, Output
=item bsqrt()
+=item broot()
+
=item bfac()
=item round()
@@ -25568,11 +25831,6 @@ bsqrt(), div(), blog(), bexp()
=item EXPORTS
-=item BUGS
-
-broot() does not work, Out of Memory!, Fails to load Calc on Perl prior
-5.6.0
-
=item CAVEATS
bstr(), bsstr() and 'cmp', int(), length, bdiv, infinity handling,
@@ -25718,8 +25976,6 @@ the same terms as Perl itself.
=item bfac()
-=item blog()
-
=item bround()/round()/bfround()
=item bmod()
@@ -25766,6 +26022,10 @@ the same terms as Perl itself.
=item bpow()
+=item bexp()
+
+=item bnok()
+
=item config()
=back
@@ -26476,6 +26736,16 @@ _infer_xs_spec
rscan_dir
+dist_dir
+
+man3page_name
+
+expand_test_dir
+
+_detildefy
+
+find_perl_interpreter
+
=over 4
=item AUTHOR
@@ -26605,6 +26875,10 @@ Module::Build works even if YAML.pm is not installed
=item Caveats
+=item ACKNOWLEDGEMENTS
+
+=item BUG REPORTS
+
=item AUTHOR
=item COPYRIGHT
@@ -26664,6 +26938,8 @@ modules, verbose, nocache
=item See Also
+=item BUG REPORTS
+
=item AUTHOR
=item COPYRIGHT
@@ -27060,8 +27336,8 @@ Net::Ping->new([$proto [, $def_timeout [, $bytes [, $device [, $tos
]]]]]);, $p->ping($host [, $timeout]);, $p->source_verify( { 0 | 1 } );,
$p->service_check( { 0 | 1 } );, $p->tcp_service_check( { 0 | 1 } );,
$p->hires( { 0 | 1 } );, $p->bind($local_addr);, $p->open($host);, $p->ack(
-[ $host ] );, $p->nack( $failed_ack_host );, $p->close();, pingecho($host
-[, $timeout]);
+[ $host ] );, $p->nack( $failed_ack_host );, $p->close();,
+$p->port_number([$port_number]), pingecho($host [, $timeout]);
=back
@@ -27520,8 +27796,8 @@ opdump (PAT)
:base_core, :base_mem, :base_loop, :base_io, :base_orig, :base_math,
:base_thread, :default, :filesys_read, :sys_db, :browse, :filesys_open,
-:filesys_write, :subprocess, :ownprocess, :others, :still_to_be_decided,
-:dangerous
+:filesys_write, :subprocess, :ownprocess, :others, :load,
+:still_to_be_decided, :dangerous
=item SEE ALSO
@@ -30091,6 +30367,8 @@ B<setlogmask($mask_priority)>, B<setlogsock($sock_type)>,
B<setlogsock($sock_type, $stream_location)> (added in Perl 5.004_02),
B<Note>, B<closelog()>
+=item THE RULES OF SYS::SYSLOG
+
=item EXAMPLES
=item CONSTANTS
@@ -30105,18 +30383,31 @@ B<Note>, B<closelog()>
=item DIAGNOSTICS
-Invalid argument passed to setlogsock, no connection to syslog available,
-stream passed to setlogsock, but %s is not writable, stream passed to
-setlogsock, but could not find any device, tcp passed to setlogsock, but
-tcp service unavailable, syslog: expecting argument %s, syslog: invalid
-level/facility: %s, syslog: too many levels given: %s, syslog: too many
-facilities given: %s, syslog: level must be given, udp passed to
-setlogsock, but udp service unavailable, unix passed to setlogsock, but
-path not available
+C<Invalid argument passed to setlogsock>, C<eventlog passed to setlogsock,
+but operating system isn't Win32-compatible>, C<no connection to syslog
+available>, C<stream passed to setlogsock, but %s is not writable>,
+C<stream passed to setlogsock, but could not find any device>, C<tcp passed
+to setlogsock, but tcp service unavailable>, C<syslog: expecting argument
+%s>, C<syslog: invalid level/facility: %s>, C<syslog: too many levels
+given: %s>, C<syslog: too many facilities given: %s>, C<syslog: level must
+be given>, C<udp passed to setlogsock, but udp service unavailable>, C<unix
+passed to setlogsock, but path not available>
=item SEE ALSO
-=item AUTHORS
+=over 4
+
+=item Manual Pages
+
+=item RFCs
+
+=item Articles
+
+=item Event Log
+
+=back
+
+=item AUTHORS & ACKNOWLEDGEMENTS
=item BUGS
@@ -30150,6 +30441,8 @@ B<setlogmask($mask_priority)>, B<setlogsock($sock_type)>,
B<setlogsock($sock_type, $stream_location)> (added in Perl 5.004_02),
B<Note>, B<closelog()>
+=item THE RULES OF SYS::SYSLOG
+
=item EXAMPLES
=item CONSTANTS
@@ -30164,18 +30457,31 @@ B<Note>, B<closelog()>
=item DIAGNOSTICS
-Invalid argument passed to setlogsock, no connection to syslog available,
-stream passed to setlogsock, but %s is not writable, stream passed to
-setlogsock, but could not find any device, tcp passed to setlogsock, but
-tcp service unavailable, syslog: expecting argument %s, syslog: invalid
-level/facility: %s, syslog: too many levels given: %s, syslog: too many
-facilities given: %s, syslog: level must be given, udp passed to
-setlogsock, but udp service unavailable, unix passed to setlogsock, but
-path not available
+C<Invalid argument passed to setlogsock>, C<eventlog passed to setlogsock,
+but operating system isn't Win32-compatible>, C<no connection to syslog
+available>, C<stream passed to setlogsock, but %s is not writable>,
+C<stream passed to setlogsock, but could not find any device>, C<tcp passed
+to setlogsock, but tcp service unavailable>, C<syslog: expecting argument
+%s>, C<syslog: invalid level/facility: %s>, C<syslog: too many levels
+given: %s>, C<syslog: too many facilities given: %s>, C<syslog: level must
+be given>, C<udp passed to setlogsock, but udp service unavailable>, C<unix
+passed to setlogsock, but path not available>
=item SEE ALSO
-=item AUTHORS
+=over 4
+
+=item Manual Pages
+
+=item RFCs
+
+=item Articles
+
+=item Event Log
+
+=back
+
+=item AUTHORS & ACKNOWLEDGEMENTS
=item BUGS
@@ -30188,6 +30494,21 @@ tracker, Search CPAN, Kobes' CPAN Search, Perl Documentation
=back
+=head2 Syslog::win32::Win32, Sys::Syslog::Win32 - Win32 support for
+Sys::Syslog
+
+=over 4
+
+=item DESCRIPTION
+
+=item SEE ALSO
+
+=item AUTHORS
+
+=item LICENSE
+
+=back
+
=head2 Term::ANSIColor - Color screen output using ANSI escape sequences
=over 4
@@ -30377,13 +30698,15 @@ record", allow => $ref] );
=item See Also
+=item BUG REPORTS
+
=item AUTHOR
=item COPYRIGHT
=back
-=head2 Term::UI::History, Log::Message::Simple
+=head2 Term::UI::History
=over 4
@@ -31357,8 +31680,7 @@ arrays
=back
-=head2 Text::Soundex - Implementation of the Soundex Algorithm as Described
-by Knuth
+=head2 Text::Soundex - Implementation of the soundex algorithm.
=over 4
@@ -31554,8 +31876,7 @@ SHIFT this, UNSHIFT this, LIST, SPLICE this, offset, length, LIST
=back
-=head2 Tie::Handle, Tie::StdHandle - base class definitions for tied
-handles
+=head2 Tie::Handle - base class definitions for tied handles
=over 4