New Tests Many new tests have been added.
New tests lib/attrs Compatibility tests for sub : attrs vs the older use attrs. ... lib/env Tests for new environment scalar capability (e.g., use Env qw($BAR);).
New tests lib/attrs Compatibility tests for sub : attrs vs the older use attrs. ... lib/env Tests for new environment scalar capability (e.g., use Env qw($BAR);).
New Tests Several new tests have been added, especially for the lib subsection.
New Tests Several new tests have been added, especially for the lib and ext subsections. ... Many of the new tests are of course introduced by the new modules, but still in general Perl is now more
New Tests There are significantly more tests for the B suite of modules.
New Documentation Locale::Maketext::TPJ13 is an article about software localization, originally published ... The new files are perlapollo, perlbeos, perldgux, perlhurd, perlmint, perlnetware, perlplan9, perlqnx
New Documentation perlclib Internal replacements for standard C library functions.
New Documentation The perlglossary manpage is a glossary of terms used in the Perl documentation, technical
New Documentation perl56delta details the changes between the 5.005 release and the 5.6.0 release. ... perlnewmod tells about writing and submitting a new module.
New Platforms Compile support added for: DragonFlyBSD MidnightBSD MirOS BSD RISC OS Cray XT4/Catamount
New Documentation The documentation has been revised in places to produce more standard manpages.
Modules and Pragmata New Modules File::Temp allows one to create temporary files and directories in
New Tests In Perl 5.8.0 there were about 69000 separate tests in about 700 test files, in Perl 5.8.1
New Platforms BeOS is now supported. See README.beos. DOS is now supported under the DJGPP tools.
New Documentation As usual, the documentation received its share of corrections, clarifications and
Modules and Pragmata New Modules Module::Pluggable is a simple framework to create modules that accept
New Tests Many modules updated from CPAN incorporate new tests. ... t/lib/proxy_constant_subs.t Tests for the new form of constant subroutines.
New or Changed Diagnostics The fatal error "DESTROY created new reference to dead object" is now documented
New Configure flags The following new flags may be enabled on the Configure command line by running ... usemultiplicity usethreads useithreads (new interpreter threads: no Perl API yet) usethreads
New Configure flags The following new flags may be enabled on the Configure command line by running ... usemultiplicity usethreads useithreads (new interpreter threads: no Perl API yet) usethreads
New Documentation perl573delta has been added to list the differences between the (now quite obsolete
New or Changed Diagnostics Attempt to set length of freed array This is a new warning, produced in
Modules and Pragmata New Modules B Perl compiler and tools. See B.
New Documentation perl56delta details the changes between the 5.005 release and the 5.6.0 release. ... perlnewmod tells about writing and submitting a new module. [561+] perlpacktut is a pack() tutorial.
New or Changed Diagnostics panic: sv_chop %s This new fatal error occurs when the C routine Perl_sv_chop
New and changed syntax $coderef->(PARAMS) A subroutine reference may now be suffixed with an arrow ... This new syntax follows the pattern of $hashref->{FOO} and $aryref->[$foo]: You may now write &$subref
New or Changed Diagnostics Two new debugging options have been added: if you have compiled your Perl
New or Changed Diagnostics There is a new taint error, "%ENV is aliased to %s".
New or Changed Diagnostics All the warnings related to pack() and unpack() were made more informative
New or Changed Diagnostics Carp and the internal diagnostic routines used by Devel::Peek have been made
New or Changed Diagnostics For -t and -T, Too late for "-T" option has been changed to the more informative
New INIT keyword INIT subs are like BEGIN and END, but they get run just before the perl runtime begins
New qr// operator The qr// operator, which is syntactically similar to the other quote-like operators
Installation and Configuration Improvements New Or Improved Platforms AIX should now work better with ... AtheOS ( http://www.atheos.cx/ ) is a new platform.
New lock keyword The lock keyword is the fundamental synchronization primitive in threaded perl.
New internal variables ${^CHILD_ERROR_NATIVE} This variable gives the native status returned by the
New or Changed Diagnostics All regular expression compilation error messages are now hopefully easier
Modules and Pragmata New Modules B::Concise, by Stephen McCamant, is a new compiler backend for walking
New Diagnostics Several new conditions will trigger warnings that were silent before. ... The following new warnings and errors outline these.
Hash::Util is the interface to the new restricted hashes feature. ... sort is a new pragma for controlling the behaviour of sort().
New or Changed Diagnostics In the regular expression diagnostics the << HERE marker introduced in 5.7.0
New or Changed Diagnostics Perl -V has several improvements correctly outputs local patch names that
About the new versioning system Perl is now developed on two tracks: a maintenance track that makes ... Perl 5.005 is the combined product of the new dual-track development scheme.
New or Changed Diagnostics Please see perldiag for more details. ... Warnings relating to the use of the new restricted hashes feature have been added.
New "Pseudo-hashes are deprecated" This warning should have been already in 5.8.0, since they are.
New Unicode Properties Unicode scripts are now supported.
Modules and Pragmata New Modules and Distributions Attribute::Handlers - Simpler definition of attribute
New Or Improved Platforms For the list of platforms known to support Perl, see "Supported Platforms" ... AtheOS ( http://www.atheos.cx/ ) is a new platform. BeOS has been reclaimed.
New Or Improved Platforms For the list of platforms known to support Perl, see "Supported Platforms"
New and changed builtin constants __PACKAGE__ The current package name at compile time, or the undefined
New Diagnostics Ambiguous call resolved as CORE::%s(), qualify as such or use & (W) A subroutine you
New and changed builtin variables $^E Extended error message on some platforms. ... Not actually new, but newly documented.
New builtin methods The UNIVERSAL package automatically contains the following methods that are inherited
It is the recommended method for new code. ... (Not actually new; just never documented before.)
New Opcode module and revised Safe module A new Opcode module supports the creation, manipulation and ... The revised Safe module has a new API and is implemented using the new Opcode module.
New "Illegal declaration of anonymous subroutine" You must specify the block of code for sub.
New "Use of freed value in iteration" Something modified the values being iterated over.
New "read() on %s filehandle %s" You cannot read() (or sysread()) from a closed or unopened filehandle
New "5.005 threads are deprecated" This warning should have been already in 5.8.0, since they are.
Relaxed new mandatory warnings introduced in 5.004 Many new warnings that were introduced in 5.004 have ... See "New Diagnostics".
New "Missing control char name in \c" Self-explanatory.
New or Changed Diagnostics "%s" variable %s masks earlier declaration in same %s (W misc) A "my" or ... written something like this: sub doit { use attrs qw(locked); } You should use the new
New or Changed Diagnostics "%s" variable %s masks earlier declaration in same %s (W misc) A "my" or ... written something like this: sub doit { use attrs qw(locked); } You should use the new
New "To%s: illegal mapping '%s'" An illegal user-defined Unicode casemapping was specified.
New syntax for declaring subroutine attributes Formerly, if you wanted to mark a subroutine as being
New syntax for declaring subroutine attributes Formerly, if you wanted to mark a subroutine as being
New "Newline in left-justified string for %s" The padding spaces would appear after the newline, which
New variable $^C reflects -c switch $^C has a boolean value that reflects whether perl is being run
New variable $^C reflects -c switch $^C has a boolean value that reflects whether perl is being run
New "Tied variable freed while still in use" Something pulled the plug on a live tied variable, Perl
New "Possible precedence problem on bitwise %c operator" If you think this $x & $y == 0 tests
New variable $^V contains Perl version as a string $^V contains the Perl version number as a string
New variable $^V contains Perl version as a string $^V contains the Perl version number as a string
New Unicode Semantics (no more use utf8, almost) Previously in Perl 5.6 to use Unicode one would say
Highlights In 5.8.0 Better Unicode support New IO Implementation New Thread Implementation Better ... Numeric Accuracy Safe Signals Many New Modules More Extensive Regression Testing
The recommended way to write barewords in the indirect object slot is new Foo:: @args. ... Note that the method new() is called with a first argument of Foo, not Foo:: when you do that.
New or Changed Diagnostics Attempt to set length of freed array This is a new warning, produced in
Some new keywords have been introduced. ... See "New INIT keyword", "New lock keyword", and "New qr// operator".
perldebug Although not new, this has been massively updated. ... perlsec Although not new, this has been massively updated.
New or Changed Diagnostics panic: sv_chop %s This new fatal error occurs when the C routine Perl_sv_chop
The new API macro newSVpvs() can be used in place of constructions such as newSVpvn("ISA", 3). ... The new API function Perl_newSV_type() can be used as a more efficient replacement of the common idiom
Regular Expressions Perl's regular expression engine has been seriously overhauled, and many new constructs ... >RE) \z New operator for precompiled regular expressions See "New qr// operator".
Where possible, buffered data discarded from duped input filehandle open(NEW, "<&OLD") now attempts ... On platforms where doing this is allowed, the next read operation on NEW will return the same data as
Each new perl version tends to remove some undesirable warnings, while adding new warnings that may catch
Where possible, buffered data discarded from duped input filehandle open(NEW, "<&OLD") now attempts ... On platforms where doing this is allowed, the next read operation on NEW will return the same data as
h2xs uses the new ExtUtils::Constant module which will affect newly created extensions that define constants ... Since the new code is more correct (if you have two constants where the first one is a prefix of the
The new qsort() is resistant to inconsistent comparison functions, so Perl's sort() will not provoke ... In our testing, the new qsort() required the minimal number of pair-wise compares on average, among all
Support for More Operating Systems Support for the following operating systems is new in Perl 5.004.
Utility Changes Perl has a new -dt command-line flag, which enables threads support in the debugger.
Utility Changes find2perl enhancements find2perl has new options -iname, -path and -ipath.
Utility Changes find2perl enhancements find2perl has new options -iname, -path and -ipath.
FETCHSIZE returned a negative value New error indicating that a tied array has claimed to have a negative
New Documentation perlclib Internal replacements for standard C library functions.
h2xs uses the new ExtUtils::Constant module which will affect newly created extensions that define constants ... Since the new code is more correct (if you have two constants where the first one is a prefix of the
pack() format 'Z' supported The new format type 'Z' is useful for packing and unpacking null-terminated
pack() format 'Z' supported The new format type 'Z' is useful for packing and unpacking null-terminated
[RT #40708] A new entry has been added to the MAGIC vtable - svt_local. ... This is used when copying magic to the new value during local, allowing certain problems with localising
Math::Trig This new module provides a simpler interface to parts of Math::Complex for those who need
There is also a new base class for TIEARRAY implementations. See Tie::Array.
perlivp enhancements perlivp implements new option -a and will not check for *.ph files by default any
Dsitelib or -Dsitearch to set special values for library directories, you might wish to consider using the new ... earlier version of perl, you should be sure to check that Configure makes sensible choices for the new
Dsitelib or -Dsitearch to set special values for library directories, you might wish to consider using the new ... earlier version of perl, you should be sure to check that Configure makes sensible choices for the new
supported The new format type modifier '!'
supported The new format type modifier '!'
The new behavior is to produce an empty list if (and only if) the original list was empty. ... The new behavior ensures it has three undefined elements.
The new behavior is to produce an empty list if (and only if) the original list was empty. ... The new behavior ensures it has three undefined elements.
The following pod documents are brand new: perlclib Internal replacements for standard C library ... perlebcdic Considerations for running Perl on EBCDIC platforms perlnewmod Perl modules: preparing a new
Support for interpolating named characters The new \N escape interpolates named characters within strings
Invalid escape in the specified encoding in regexp; marked by <-- HERE in m/%s/ New error, introduced
Support for interpolating named characters The new \N escape interpolates named characters within strings
@- and @+ provide starting/ending offsets of regex matches The new magic variables @- and @+ provide
Deprecation Warnings There is one new feature deprecation.
@- and @+ provide starting/ending offsets of regex submatches The new magic variables @- and @+ provide
The major reason for the discontinuity is the new IO architecture called PerlIO. ... PerlIO is the default configuration because without it many new features of Perl 5.8 cannot be used.
The major reason for the discontinuity is the new IO architecture called PerlIO. ... PerlIO is the default configuration because without it many new features of Perl 5.8 cannot be used.
The -M, -a, -k, and -o options are new.
panic: attempt to call %s in %s This new fatal error occurs when the ACL version file test operator
It now reports the current internal type, and the new type requested.
The -M, -a, -k, and -o options are new.
perl_eval_pv A new function handy for eval'ing strings of Perl code inside C code. ... New extensions must use the new hash access functions and macros if they wish to use SV* keys.
For new projects the core perl team strongly recommends that you use dedicated, single purpose security
Default installation structure has changed The new Configure defaults are designed to allow a smooth
No new syntax is involved: the Hash::Util module is the interface.
Maximal count of pending signals (%s) exceeded This new fatal error occurs when the perl process has
perlthanks Perl 5.8.9 adds a new utility perlthanks, which is a variant of perlbug, but for sending
Their use is discouraged in new code, particularly PL_na, which is a small performance hit.
Modules and Pragmata New Modules File::Temp allows one to create temporary files and directories in
C Source Compatibility There have been a large number of changes in the internals to support the new ... New extensions should not refer to perl globals by their unqualified names.
If you do not like this new behaviour, specify prefix, siteprefix, and vendorprefix explicitly. ... A new optional location for Perl libraries, otherlibdirs, is available.
If you do not like this new behaviour, specify prefix, siteprefix, and vendorprefix explicitly. ... A new optional location for Perl libraries, otherlibdirs, is available.
(The good news is that B::Bytecode and ByteLoader are better than they used to be.)
The information is attached to the new offsets member of the struct regexp.
A new command-line option, -t is available. ... It will be called in the context of the new thread, so all modifications are made in the new area.
Utility Changes h2xs enhancements h2xs implements new option --use-xsloader to force use of XSLoader
Utility Changes h2xs enhancements h2xs implements new option --use-xsloader to force use of XSLoader
Installation and Configuration Improvements New Or Improved Platforms AIX should now work better with ... AtheOS ( http://www.atheos.cx/ ) is a new platform.
Cwd upgraded to version 3.01 (as part of the new PathTools distribution) Devel::PPPort upgraded to version ... 3.03 File::Spec upgraded to version 3.01 (as part of the new PathTools distribution) Encode upgraded
These are not new failures--Perl 5.005_0x has the same bugs, but didn't have these tests.
These are not new failures--Perl 5.005_0x has the same bugs, but didn't have these tests.
A new utility, prove, makes it easy to run an individual regression test at the command line. prove is
These are not new failures--Perl 5.005_0x has the same bugs, but didn't have these tests.
A new optional location for Perl libraries, otherlibdirs, is available. ... In addition to config.over, a new override file, config.arch, is available.
A new optional location for Perl libraries, otherlibdirs, is available. ... In addition to config.over, a new override file, config.arch, is available.
Sends converted HTML to standard output The pod2html utility included with Perl 5.004 is entirely new
Sends converted HTML to standard output The pod2html utility included with Perl 5.004 is entirely new
This will be changed in a future release, but we don't know yet what the new semantics will exactly be
These are not new failures--Perl 5.005_0x has the same bugs, but didn't have these tests.
However, the new safer model has its problems too. ... In completely unrelated news, you can now use safe signals with POSIX::SigAction.
ithreads The new interpreter threads ("ithreads" for short) implementation of multithreading, by Arthur
Compilation option: Binary compatibility with 5.003 There is a new Configure question that asks if you
Non-string passed as bitmask This is a new warning, produced when number has been passed as a argument
Note that the new semantics doesn't work with the Attribute::Handlers module (as of version 0.76).
Licensing Perl has a new Social Contract for contributors. See Porting/Contract.
We suggest, but do not require, that you use the IO::* modules in new code.
The new algorithm "One-at-a-Time" produces a different hashed key order.
perlcc, a new experimental front end for the compiler is available.
Modules and Pragmata New Modules Module::Pluggable is a simple framework to create modules that accept
Perldoc POSIX Unicode::Collate Unicode::Normalize Test::Harness threads::shared cond_wait has a new
The new behaviour in the absence of a SCALAR method is to return TRUE if in the middle of an each iteration
The old size was 1008 bytes, the new default size is 4080 bytes.
Added a new exit method. ... added new is_shared method.
To cope with the new versioning system's use of at least three significant digits for each version component ... Thus, using the new notation, 5.005_03 is the "same" as v5.5.30, and the first maintenance version following
A new special regular expression variable has been introduced: $^N, which contains the most-recently ... This enables the new behaviour for perl embedders. This will default in 5.10. See perlembed.
To cope with the new versioning system's use of at least three significant digits for each version component ... Thus, using the new notation, 5.005_03 is the "same" as v5.5.30, and the first maintenance version following
The new names cause less pollution of the cpp namespace and reflect what the numbers have come to stand
For the new life of this switch, see "UTF-8 no longer default under UTF-8 locales", and "-C" in perlrun
The new names cause less pollution of the cpp namespace and reflect what the numbers have come to stand
New commands include < ?, > ?, and { ?
As of v5.6.0, interpreter-threads support is still lacking a way to create new threads from Perl (i.e
As of v5.6.0, interpreter-threads support is still lacking a way to create new threads from Perl (i.e
A new configuration variable d_pseudofork has been to Configure, and is available as $Config{d_pseudofork
As of v5.6.0, interpreter-threads support is still lacking a way to create new threads from Perl (i.e
As of v5.6.0, interpreter-threads support is still lacking a way to create new threads from Perl (i.e
New commands include < ?, > ?, and { ?
Changed Internals Some new APIs: ptr_table_clear(), ptr_table_free(), sv_setref_uv().
Hash::Util is the interface to the new restricted hashes feature. ... sort is a new pragma for controlling the behaviour of sort().
While this new feature was not planned, it fell naturally out of PerlIO changes, and is to be considered
In conjunction with the new $^V magic variable (which contains the perl version as a string), such literals ... Perl: # this will parse in older versions of Perl also if ($^V and $^V gt v5.6.0) { # new
In conjunction with the new $^V magic variable (which contains the perl version as a string), such literals ... Perl: # this will parse in older versions of Perl also if ($^V and $^V gt v5.6.0) { # new
A new function countit() is just like timeit() except that it takes a TIME instead of a COUNT. ... IO::Socket::INET->new now sets $!
A new function countit() is just like timeit() except that it takes a TIME instead of a COUNT. ... IO::Socket::INET->new now sets $!
A new function countit() is just like timeit() except that it takes a TIME instead of a COUNT. ... IO::Socket::INET->new now sets $!
A new function countit() is just like timeit() except that it takes a TIME instead of a COUNT. ... IO::Socket::INET->new now sets $!
CHECK is a new keyword All subroutine definitions named CHECK are now special. ... The new behavior is to not coerce bareword arguments to a typeglob.
CHECK is a new keyword All subroutine definitions named CHECK are now special. ... The new behavior is to not coerce bareword arguments to a typeglob.
CHECK is a new keyword All subroutine definitions named CHECK are now special. ... The new behavior is to not coerce bareword arguments to a typeglob.
CHECK is a new keyword All subroutine definitions named CHECK are now special. ... The new behavior is to not coerce bareword arguments to a typeglob.
For new projects the core perl team would strongly recommend that you use dedicated, single purpose security
A new feature called assertions will be available. ... A new operator // (defined-or) will be available.
Known Problems There are no known new bugs.
Fcntl New constants in the existing Fcntl modules are now supported, provided that your operating system
Enhancements The default since perl 5.000 has been for perl to create an empty scalar with every new ... We would recommend testing with this configuration on new deployments of perl, particularly for multi-threaded
Miscellaneous bugfixing and porting of new core code to VMS.
The fields pragma now provides ways to create pseudo-hashes, via fields::new() and fields::phash().
Modules and Pragmata New Modules B Perl compiler and tools. See B.
If you are on IRIX or Tru64 platforms, new profiling/debugging options have been added, see perlhack
The fields pragma now provides ways to create pseudo-hashes, via fields::new() and fields::phash().
Miscellaneous bugfixing and porting of new core code to VMS.
gcc versions 3.x introduced a new warning that caused a lot of noise during Perl compilation: gcc -Ialreadyknowndirectory
Fcntl, Socket, and Sys::Syslog have been rewritten to use the new-style constant dispatch section (see
alphabetic escapes encountered when parsing quote constructs now generate a warning, since they may take on new
alphabetic escapes encountered when parsing quote constructs now generate a warning, since they may take on new
Modules and Pragmata New Modules and Distributions Attribute::Handlers - Simpler definition of attribute
Data::Dumper A new option, Pair, allows choosing the separator between hash keys and values. ... Scalar::Util New utilities: refaddr, isvstring, looks_like_number, set_prototype.
Data::Dumper A new option, Pair, allows choosing the separator between hash keys and values. ... Scalar::Util New utilities: refaddr, isvstring, looks_like_number, set_prototype.
Platform-specific improvements The following new ports are now available. ... Trailing new %ENV entries weren't propagated to child processes. This is now fixed.
See "New Unicode Properties" earlier in this document for additional information on changes with Unicode
See "New Unicode Properties" earlier in this document for additional information on changes with Unicode
The new restrictions when tainting include: No glob() or <*> These operators may spawn the C shell
Creating a new thread when weak references exist was buggy, and would often cause warnings at interpreter
reference, relying on the flags being copied when the reference was copied, or set at the creation of a new
perldebguts.pod This new manpage contains excessively low-level material not related to the Perl debugger
The new Perl command line option -C and its counterpart environment variable PERL_UNICODE can now be
The new Perl command line option -C and its counterpart environment variable PERL_UNICODE can now be
Some new Configure symbols, useful for extension writers: d_cmsghdr For struct cmsghdr.
perldebguts.pod This new manpage contains excessively low-level material not related to the Perl debugger
These are not new failures--Perl 5.005_0x has the same bugs, but didn't have these tests.
mode POST_MAX doesn't cause the client to hang any more Automatic tab indexes are now disabled and new ... 3 new characters added to the ISO-8859-7 encoding New encoding MIME-Header-ISO_2022_JP added Problem
test failures but the situation is actually much better than it was in 5.6.0; it's just that so many new
Steve Peters provided new *_set macros and reworked the core to use these rather than assigning to macros
This may cause new warnings when modules are being installed. ... You can now install coderef handlers, 'DEFAULT', and 'IGNORE' handlers, installing new handlers was not
Pragmata Six new pragmatic modules exist: use autouse MODULE => qw(sub1 sub2 sub3) Defers require
many test failures but the situation is actually better than it was in 5.6.0, it's just that so many new
Suggestions for new shiny examples welcome but the main issue is that the examples need to be documented
Suggestions for new shiny examples welcome but the main issue is that the examples need to be documented ... Multithreaded code should be migrated to the new ithreads model (see threads, threads::shared and perlthrtut
These are not new failures--Perl 5.005_0x has the same bugs, but didn't have these tests. ..
The information is attached to the new offsets member of the struct regexp.
Carp Carp has a new function cluck(). cluck() warns, like carp(), but also adds a stack backtrace to
Fix bug RT #45053, Perl_newCONSTSUB() is now thread safe.
There is a new kill implementation based on sys$sigprc that allows older VMS systems (pre-7.0) to use ... 9x. [561] Current directory entries in %ENV are now correctly propagated to child processes. [561] New
option can be specified via MakeMaker: perl Makefile.PL POLLUTE=1 PERL_IMPLICIT_CONTEXT This new
Three new compilation flags are recognized by malloc.c.
You can now install coderef handlers, 'DEFAULT', and 'IGNORE' handlers, installing new handlers was not
option can be specified via MakeMaker: perl Makefile.PL POLLUTE=1 PERL_IMPLICIT_CONTEXT This new
Module information summary Brand new modules, arranged by topic rather than strictly alphabetically:
Changed Internals These news matter to you only if you either write XS code or like to know about or
New %ENV entries now propagate to subprocesses.
Modules and Pragmata New Modules B::Concise, by Stephen McCamant, is a new compiler backend for walking
Added a new POSIX-ish character class [[:blank:]] which stands for horizontal whitespace (currently,
add the if pragma 14832 implement IV/UV/NV/long double un/packing with j/J/F/D 14854 document the new
(This feature, like other new features that combine Unicode and I/O, work only if you are using PerlIO
The debugger has a new dumpDepth option to control the maximum depth to which nested structures are dumped ... Added a new POSIX-ish character class [[:blank:]] which stands for horizontal whitespace (currently,