This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Start using the Unicode 3.2.0 data (NOTE: still
[perl5.git] / pod / perldelta.pod
index 9514492..1323772 100644 (file)
@@ -349,7 +349,7 @@ and L<perlunicode> for details.
 =item *
 
 The Unicode Character Database coming with Perl has been upgraded
-to Unicode 3.1.1.  For more information, see http://www.unicode.org/.
+to Unicode 3.2.0.  For more information, see http://www.unicode.org/ .
 
 =item *
 
@@ -587,6 +587,12 @@ output is highly customisable.  See L<B::Concise>.
 
 =item *
 
+The new bignum, bigint, and bigrat pragmas implement transparent
+bignum support (using the Math::BigInt, Math::BigFloat, and
+Math::BigRat backends), by Tels.
+
+=item *
+
 C<Class::ISA> for reporting the search path for a class's ISA tree,
 by Sean Burke, has been added.  See L<Class::ISA>.
 
@@ -742,6 +748,11 @@ Journal #13, republished here with kind permission.
 
 =item *
 
+Math::BigRat for big rational numbers, to accompany Math::BigInt and
+Math::BigFloat, from Tels.
+
+=item *
+
 C<Memoize> can make your functions faster by trading space for time,
 from Mark-Jason Dominus.  See L<Memoize>.
 
@@ -1433,7 +1444,7 @@ exist, but they wouldn't have arrived in time to save quicksort.
 =item *
 
 Hashes now use Bob Jenkins "One-at-a-Time" hashing key algorithm
-(http://burtleburtle.net/bob/hash/doobs.html).  This algorithm is
+( http://burtleburtle.net/bob/hash/doobs.html ).  This algorithm is
 reasonably fast while producing a much better spread of values than
 the old hashing algorithm (originally by Chris Torek, later tweaked by
 Ilya Zakharevich).  Hash values output from the algorithm on a hash of
@@ -1656,7 +1667,7 @@ After a long pause, AmigaOS has been verified to be happy with Perl.
 
 =item *
 
-AtheOS (http://www.atheos.cx/) is a new platform.
+AtheOS ( http://www.atheos.cx/ ) is a new platform.
 
 =item *
 
@@ -2545,7 +2556,7 @@ unfortunately, always possible.  The suidperl functionality is most
 probably going to be removed in Perl 5.10.  In any case, suidperl
 should only be used by security experts who know exactly what they are
 doing and why they are using suidperl instead of some other solution
-such as sudo (see http://www.courtesan.com/sudo/).
+such as sudo ( see http://www.courtesan.com/sudo/ ).
 
 =head1 New Tests
 
@@ -2642,40 +2653,21 @@ If you are building on a UFS partition, you will also probably see
 t/op/stat.t subtest #9 fail.  This is caused by Darwin's UFS not
 supporting inode change time.
 
-=head2 z/OS (OS/390)
-
-z/OS has rather many test failures but the situation is actually
-better than it was in 5.6.0, it's just that so many new modules and
-tests have been added.
+=head2 op/sprintf tests 91, 129, and 130
 
- Failed Test                 Stat Wstat Total Fail  Failed  List of Failed
- -------------------------------------------------------------------------
- ../ext/Data/Dumper/t/dumper.t              321    2   0.62%  311 314
- ../ext/IO/lib/IO/t/io_unix.t                 5    4  80.00%  2-5
- ../lib/utf8.t                               94   13  13.83%  27 30-31 43 46 73
-                                                              76 79 82 85 88 91
-                                                              94
- ../lib/Benchmark.t               1   256   159    1   0.63%  75
- ../lib/ExtUtils/t/Constant.t                27   19  70.37%  5-23
- ../lib/ExtUtils/t/Embed.t                    9    9 100.00%  1-9
- op/pat.t                                   864    9   1.04%  242-243 665 776
-                                                              785 832-834 845
- op/sprintf.t                               224    3   1.34%  98 100 136
- op/tr.t                                     97    5   5.15%  63 71-74
- uni/fold.t                                 767    8   1.04%  25-26 62 169 196
-                                                              648 697-698
- 60 tests and 384 subtests skipped.
+The op/sprintf tests 91, 129, and 130 are known to fail on some platforms.
+Examples include any platform using sfio, and Compaq/Tandem's NonStop-UX.
 
-=head2 op/sprintf tests 129 and 130
+The test 91 is known to fail at QNX6 (nto), because C<sprintf '%e',0>
+incorrectly produces C<0.000000e+0> instead of C<0.000000e+00>.
 
-The op/sprintf tests 129 and 130 are known to fail on some platforms.
-Examples include any platform using sfio, and Compaq/Tandem's NonStop-UX.
-The failing platforms do not comply with the ANSI C Standard, line
-19ff on page 134 of ANSI X3.159 1989 to be exact.  (They produce
-something other than "1" and "-1" when formatting 0.6 and -0.6 using
-the printf format "%.0f", most often they produce "0" and "-0".)
+For the tests 129 and 130 the failing platforms do not comply with
+the ANSI C Standard, line 19ff on page 134 of ANSI X3.159 1989 to
+be exact.  (They produce something other than "1" and "-1" when
+formatting 0.6 and -0.6 using the printf format "%.0f", most often
+they produce "0" and "-0".)
 
-=head2  Failure of Thread tests
+=head2 Failure of Thread (5.005-style) tests
 
 B<Note that support for 5.005-style threading remains experimental
 and practically unsupported.>
@@ -2707,10 +2699,49 @@ threads are considered fundamentally broken.
 
 =head2 UNICOS and UNICOS/mk
 
-The io/fs test #31 is failing because in UNICOS and UNICOS/mk
-truncate() cannot be used to grow the size of filehandles, only
-to reduce the size.  The workaround is to truncate files instead
-of filehandles.
+The io/fs test #31 is failing because in UNICOS and UNICOS/mk the Perl
+truncate() cannot be used to grow the size of filehandles, only to
+reduce the size.  The workaround is to truncate files instead of
+filehandles.
+
+=head2 UNICOS/mk
+
+=over 4
+
+=item *
+
+During Configure the test
+
+    Guessing which symbols your C compiler and preprocessor define...
+
+will probably fail with error messages like
+
+    CC-20 cc: ERROR File = try.c, Line = 3
+      The identifier "bad" is undefined.
+
+      bad switch yylook 79bad switch yylook 79bad switch yylook 79bad switch yylook 79#ifdef A29K
+      ^
+
+    CC-65 cc: ERROR File = try.c, Line = 3
+      A semicolon is expected at this point.
+
+This is caused by a bug in awk utility of UNICOS/mk.  You can ignore
+the error, but it does cause a slight problem: you cannot fully
+benefit from the h2ph utility (see L<h2ph>) that can be used to
+convert C headers to Perl libraries, mainly used to be able to access
+from Perl the constants defined using C preprocessor, cpp.  Because of
+the above error parts of the converted headers will be invisible.
+Luckily, these days the need for h2ph is rare.
+
+=item *
+
+If building Perl with the interpreter threads (ithreads), the
+getgrent(), getgrnam(), and getgrgid() functions cannot return the
+list of the group members due to a bug in the multithreaded support of
+UNICOS/mk.  What this means that in list context the functions will
+return only three values, not four.
+
+=back
 
 =head2 UTS
 
@@ -2744,6 +2775,30 @@ as of 5.7.3:
 Code like the above is known to leak memory every time the local()
 is executed.
 
+=head2 z/OS (OS/390)
+
+z/OS has rather many test failures but the situation is actually
+better than it was in 5.6.0, it's just that so many new modules and
+tests have been added.
+
+ Failed Test                 Stat Wstat Total Fail  Failed  List of Failed
+ -------------------------------------------------------------------------
+ ../ext/Data/Dumper/t/dumper.t              321    2   0.62%  311 314
+ ../ext/IO/lib/IO/t/io_unix.t                 5    4  80.00%  2-5
+ ../lib/utf8.t                               94   13  13.83%  27 30-31 43 46 73
+                                                              76 79 82 85 88 91
+                                                              94
+ ../lib/Benchmark.t               1   256   159    1   0.63%  75
+ ../lib/ExtUtils/t/Constant.t                27   19  70.37%  5-23
+ ../lib/ExtUtils/t/Embed.t                    9    9 100.00%  1-9
+ op/pat.t                                   864    9   1.04%  242-243 665 776
+                                                              785 832-834 845
+ op/sprintf.t                               224    3   1.34%  98 100 136
+ op/tr.t                                     97    5   5.15%  63 71-74
+ uni/fold.t                                 767    8   1.04%  25-26 62 169 196
+                                                              648 697-698
+ 60 tests and 384 subtests skipped.
+
 =head2 Localising Tied Arrays and Hashes Is Broken
 
     local %tied_array;
@@ -2809,8 +2864,8 @@ from the CPAN.
 
 If you find what you think is a bug, you might check the articles
 recently posted to the comp.lang.perl.misc newsgroup and the perl
-bug database at http://bugs.perl.org.  There may also be
-information at http://www.perl.com/, the Perl Home Page.
+bug database at http://bugs.perl.org/  There may also be
+information at http://www.perl.com/ , the Perl Home Page.
 
 If you believe you have an unreported bug, please run the B<perlbug>
 program included with your release.  Be sure to trim your bug down