[ Index ]

PHP Cross Reference of Unnamed Project

title

Body

[close]

/se3-unattended/var/se3/unattended/install/linuxaux/opt/perl/lib/5.10.0/pod/ -> perl587delta.pod (source)

   1  =head1 NAME
   2  
   3  perl587delta - what is new for perl v5.8.7
   4  
   5  =head1 DESCRIPTION
   6  
   7  This document describes differences between the 5.8.6 release and
   8  the 5.8.7 release.
   9  
  10  =head1 Incompatible Changes
  11  
  12  There are no changes incompatible with 5.8.6.
  13  
  14  =head1 Core Enhancements
  15  
  16  =head2 Unicode Character Database 4.1.0
  17  
  18  The copy of the Unicode Character Database included in Perl 5.8 has
  19  been updated to 4.1.0 from 4.0.1. See
  20  L<http://www.unicode.org/versions/Unicode4.1.0/#NotableChanges> for the
  21  notable changes.
  22  
  23  =head2 suidperl less insecure
  24  
  25  A pair of exploits in C<suidperl> involving debugging code have been closed.
  26  
  27  For new projects the core perl team strongly recommends that you use
  28  dedicated, single purpose security tools such as C<sudo> in preference to
  29  C<suidperl>.
  30  
  31  =head2 Optional site customization script
  32  
  33  The perl interpreter can be built to allow the use of a site customization
  34  script. By default this is not enabled, to be consistent with previous perl
  35  releases. To use this, add C<-Dusesitecustomize> to the command line flags
  36  when running the C<Configure> script. See also L<perlrun/-f>.
  37  
  38  =head2 C<Config.pm> is now much smaller.
  39  
  40  C<Config.pm> is now about 3K rather than 32K, with the infrequently used
  41  code and C<%Config> values loaded on demand. This is transparent to the
  42  programmer, but means that most code will save parsing and loading 29K of
  43  script (for example, code that uses C<File::Find>).
  44  
  45  =head1 Modules and Pragmata
  46  
  47  =over 4
  48  
  49  =item *
  50  
  51  B upgraded to version 1.09
  52  
  53  =item *
  54  
  55  base upgraded to version 2.07
  56  
  57  =item *
  58  
  59  bignum upgraded to version 0.17
  60  
  61  =item *
  62  
  63  bytes upgraded to version 1.02
  64  
  65  =item *
  66  
  67  Carp upgraded to version 1.04
  68  
  69  =item *
  70  
  71  CGI upgraded to version 3.10
  72  
  73  =item *
  74  
  75  Class::ISA upgraded to version 0.33
  76  
  77  =item *
  78  
  79  Data::Dumper upgraded to version 2.121_02
  80  
  81  =item *
  82  
  83  DB_File upgraded to version 1.811
  84  
  85  =item *
  86  
  87  Devel::PPPort upgraded to version 3.06
  88  
  89  =item *
  90  
  91  Digest upgraded to version 1.10
  92  
  93  =item *
  94  
  95  Encode upgraded to version 2.10
  96  
  97  =item *
  98  
  99  FileCache upgraded to version 1.05
 100  
 101  =item *
 102  
 103  File::Path upgraded to version 1.07
 104  
 105  =item *
 106  
 107  File::Temp upgraded to version 0.16
 108  
 109  =item *
 110  
 111  IO::File upgraded to version 1.11
 112  
 113  =item *
 114  
 115  IO::Socket upgraded to version 1.28
 116  
 117  =item *
 118  
 119  Math::BigInt upgraded to version 1.77
 120  
 121  =item *
 122  
 123  Math::BigRat upgraded to version 0.15
 124  
 125  =item *
 126  
 127  overload upgraded to version 1.03
 128  
 129  =item *
 130  
 131  PathTools upgraded to version 3.05
 132  
 133  =item *
 134  
 135  Pod::HTML upgraded to version 1.0503
 136  
 137  =item *
 138  
 139  Pod::Perldoc upgraded to version 3.14
 140  
 141  =item *
 142  
 143  Pod::LaTeX upgraded to version 0.58
 144  
 145  =item *
 146  
 147  Pod::Parser upgraded to version 1.30
 148  
 149  =item *
 150  
 151  Symbol upgraded to version 1.06
 152  
 153  =item *
 154  
 155  Term::ANSIColor upgraded to version 1.09
 156  
 157  =item *
 158  
 159  Test::Harness upgraded to version 2.48
 160  
 161  =item *
 162  
 163  Test::Simple upgraded to version 0.54
 164  
 165  =item *
 166  
 167  Text::Wrap upgraded to version 2001.09293, to fix a bug when wrap() was
 168  called with a non-space separator.
 169  
 170  =item *
 171  
 172  threads::shared upgraded to version 0.93
 173  
 174  =item *
 175  
 176  Time::HiRes upgraded to version 1.66
 177  
 178  =item *
 179  
 180  Time::Local upgraded to version 1.11
 181  
 182  =item *
 183  
 184  Unicode::Normalize upgraded to version 0.32
 185  
 186  =item *
 187  
 188  utf8 upgraded to version 1.05
 189  
 190  =item *
 191  
 192  Win32 upgraded to version 0.24, which provides Win32::GetFileVersion
 193  
 194  =back
 195  
 196  =head1 Utility Changes
 197  
 198  =head2 find2perl enhancements
 199  
 200  C<find2perl> has new options C<-iname>, C<-path> and C<-ipath>.
 201  
 202  =head1 Performance Enhancements
 203  
 204  The internal pointer mapping hash used during ithreads cloning now uses an
 205  arena for memory allocation. In tests this reduced ithreads cloning time by
 206  about 10%.
 207  
 208  =head1 Installation and Configuration Improvements
 209  
 210  =over 4
 211  
 212  =item *
 213  
 214  The Win32 "dmake" makefile.mk has been updated to make it compatible
 215  with the latest versions of dmake.
 216  
 217  =item *
 218  
 219  C<PERL_MALLOC>, C<DEBUG_MSTATS>, C<PERL_HASH_SEED_EXPLICIT> and C<NO_HASH_SEED>
 220  should now work in Win32 makefiles.
 221  
 222  =back
 223  
 224  =head1 Selected Bug Fixes
 225  
 226  =over 4
 227  
 228  =item *
 229  
 230  The socket() function on Win32 has been fixed so that it is able to use
 231  transport providers which specify a protocol of 0 (meaning any protocol
 232  is allowed) once more.  (This was broken in 5.8.6, and typically caused
 233  the use of ICMP sockets to fail.)
 234  
 235  =item *
 236  
 237  Another obscure bug involving C<substr> and UTF-8 caused by bad internal
 238  offset caching has been identified and fixed.
 239  
 240  =item *
 241  
 242  A bug involving the loading of UTF-8 tables by the regexp engine has been
 243  fixed - code such as C<"\x{100}" =~ /[[:print:]]/> will no longer give
 244  corrupt results.
 245  
 246  =item *
 247  
 248  Case conversion operations such as C<uc> on a long Unicode string could
 249  exhaust memory. This has been fixed.
 250  
 251  =item *
 252  
 253  C<index>/C<rindex> were buggy for some combinations of Unicode and
 254  non-Unicode data. This has been fixed.
 255  
 256  =item *
 257  
 258  C<read> (and presumably C<sysread>) would expose the UTF-8 internals when
 259  reading from a byte oriented file handle into a UTF-8 scalar. This has
 260  been fixed.
 261  
 262  =item *
 263  
 264  Several C<pack>/C<unpack> bug fixes:
 265  
 266  =over 4
 267  
 268  =item *
 269  
 270  Checksums with C<b> or C<B> formats were broken.
 271  
 272  =item *
 273  
 274  C<unpack> checksums could overflow with the C<C> format.
 275  
 276  =item *
 277  
 278  C<U0> and C<C0> are now scoped to C<()> C<pack> sub-templates.
 279  
 280  =item *
 281  
 282  Counted length prefixes now don't change C<C0>/C<U0> mode.
 283  
 284  =item *
 285  
 286  C<pack> C<Z0> used to destroy the preceding character.
 287  
 288  =item *
 289  
 290  C<P>/C<p> C<pack> formats used to only recognise literal C<undef> 
 291  
 292  =back
 293  
 294  =item *
 295  
 296  Using closures with ithreads could cause perl to crash. This was due to
 297  failure to correctly lock internal OP structures, and has been fixed.
 298  
 299  =item *
 300  
 301  The return value of C<close> now correctly reflects any file errors that
 302  occur while flushing the handle's data, instead of just giving failure if
 303  the actual underlying file close operation failed.
 304  
 305  =item *
 306  
 307  C<not() || 1> used to segfault. C<not()> now behaves like C<not(0)>, which was
 308  the pre 5.6.0 behaviour.
 309  
 310  =item *
 311  
 312  C<h2ph> has various enhancements to cope with constructs in header files that
 313  used to result in incorrect or invalid output.
 314  
 315  =back
 316  
 317  =head1 New or Changed Diagnostics
 318  
 319  There is a new taint error, "%ENV is aliased to %s". This error is thrown
 320  when taint checks are enabled and when C<*ENV> has been aliased, so that
 321  C<%ENV> has no env-magic anymore and hence the environment cannot be verified
 322  as taint-free.
 323  
 324  The internals of C<pack> and C<unpack> have been updated. All legitimate
 325  templates should work as before, but there may be some changes in the error
 326  reported for complex failure cases. Any behaviour changes for non-error cases
 327  are bugs, and should be reported.
 328  
 329  =head1 Changed Internals
 330  
 331  There has been a fair amount of refactoring of the C<C> source code, partly to
 332  make it tidier and more maintainable. The resulting object code and the
 333  C<perl> binary may well be smaller than 5.8.6, and hopefully faster in some
 334  cases, but apart from this there should be no user-detectable changes.
 335  
 336  C<${^UTF8LOCALE}> has been added to give perl space access to C<PL_utf8locale>.
 337  
 338  The size of the arenas used to allocate SV heads and most SV bodies can now
 339  be changed at compile time. The old size was 1008 bytes, the new default size
 340  is 4080 bytes.
 341  
 342  =head1 Known Problems
 343  
 344  Unicode strings returned from overloaded operators can be buggy. This is a
 345  long standing bug reported since 5.8.6 was released, but we do not yet have
 346  a suitable fix for it.
 347  
 348  =head1 Platform Specific Problems
 349  
 350  On UNICOS, lib/Math/BigInt/t/bigintc.t hangs burning CPU.
 351  ext/B/t/bytecode.t and ext/Socket/t/socketpair.t both fail tests.
 352  These are unlikely to be resolved, as our valiant UNICOS porter's last
 353  Cray is being decommissioned.
 354  
 355  =head1 Reporting Bugs
 356  
 357  If you find what you think is a bug, you might check the articles
 358  recently posted to the comp.lang.perl.misc newsgroup and the perl
 359  bug database at http://bugs.perl.org.  There may also be
 360  information at http://www.perl.org, the Perl Home Page.
 361  
 362  If you believe you have an unreported bug, please run the B<perlbug>
 363  program included with your release.  Be sure to trim your bug down
 364  to a tiny but sufficient test case.  Your bug report, along with the
 365  output of C<perl -V>, will be sent off to perlbug@perl.org to be
 366  analysed by the Perl porting team.  You can browse and search
 367  the Perl 5 bugs at http://bugs.perl.org/
 368  
 369  =head1 SEE ALSO
 370  
 371  The F<Changes> file for exhaustive details on what changed.
 372  
 373  The F<INSTALL> file for how to build Perl.
 374  
 375  The F<README> file for general stuff.
 376  
 377  The F<Artistic> and F<Copying> files for copyright information.
 378  
 379  =cut


Generated: Tue Mar 17 22:47:18 2015 Cross-referenced by PHPXref 0.7.1