Add the NEXTSTEP strftime %j bug to Known Problems.
[p5sagit/p5-mst-13.2.git] / pod / perldelta.pod
index bb93b19..39bb033 100644 (file)
@@ -535,7 +535,7 @@ See L<perldata/"Scalar value constructors"> for additional information.
 
 =head2 Weak references
 
-    WARNING: This is an experimental feature.
+    WARNING: This is an experimental feature.  Details are subject to change.  
 
 In previous versions of Perl, you couldn't cache objects so as
 to allow them to be deleted if the last reference from outside 
@@ -1160,6 +1160,19 @@ Unrecognized alphabetic escapes encountered when parsing quote
 constructs now generate a warning, since they may take on new
 semantics in later versions of Perl.
 
+Many diagnostics now report the internal operation in which the warning
+was provoked, like so:
+
+    Use of uninitialized value in concatenation (.) at (eval 1) line 1.
+    Use of uninitialized value in print at (eval 1) line 1.
+
+Diagnostics  that occur within eval may also report the file and line
+number where the eval is located, in addition to the eval sequence
+number and the line number within the evaluated text itself.  For
+example:
+
+    Not enough arguments for scalar at (eval 4)[newlib/perl5db.pl:1411] line 2, at EOF
+
 =head1 Performance enhancements
 
 =head2 Simple sort() using { $a <=> $b } and the like are optimized
@@ -1858,6 +1871,26 @@ optimized C backend.
 
 Support for non-Unix platforms has been improved.
 
+=head2 perldoc
+
+C<perldoc> has been reworked to avoid possible security holes.
+It will not by default let itself be run as the superuser, but you
+may still use the B<-U> switch to try to make it drop privileges
+first.
+
+=head2 The Perl Debugger
+
+Many bug fixes and enhancements were added to F<perl5db.pl>, the
+Perl debugger.  The help documentation was rearranged.  New commands
+include C<< < ? >>, C<< > ? >>, and C<< { ? >> to list out current
+actions, C<man I<docpage>> to run your doc viewer on some perl
+docset, and support for quoted options.  The help information was
+rearranged, and should be viewable once again if you're using B<less>
+as your pager.  A serious security hole was plugged--you should
+immediately remove all older versions of the Perl debugger as
+installed in previous releases, all the way back to perl3, from
+your system to avoid being bitten by this.
+
 =head1 Documentation Changes
 
 =over 4
@@ -1870,6 +1903,21 @@ The official list of public Perl API functions.
 
 An introduction to using the Perl Compiler suite.
 
+=item perldebug.pod
+
+All material unrelated to running the Perl debugger, plus all
+low-level guts-like details that risked crushing the casual user
+of the debugger, have been relocated from the old manpage to the
+next entry below.
+
+=item perldebguts.pod
+
+This new manpage contains excessively low-level material not related
+to the Perl debugger, but slightly related to debugging Perl itself.
+It also contains some arcane internal details of how the debugging
+process works that may only be of interest to developers of Perl
+debuggers.
+
 =item perlfilter.pod
 
 An introduction to writing Perl source filters.
@@ -2395,6 +2443,25 @@ Remember that "my", "our", and "local" bind tighter than comma.
 (W) You are concatenating the number 19 with another number, which
 could be a potential Year 2000 problem.
 
+=item pragma "attrs" is deprecated, use "sub NAME : ATTRS" instead
+
+(W) You have written somehing like this:
+
+    sub doit
+    {
+        use attrs qw(locked);
+    }
+
+You should use the new declaration syntax instead.
+
+    sub doit : locked
+    {
+        ...
+
+The C<use attrs> pragma is now obsolete, and is only provided for
+backward-compatibility. See L<perlsub/"Subroutine Attributes">.
+
+
 =item Premature end of script headers
 
 See Server error.
@@ -2560,6 +2627,70 @@ warning.  And in Perl 5.005, this special treatment will cease.
 
 =back
 
+=head1 Known Problems
+
+=head2 Thread tests failing
+
+The subtests 19 and 20 of the lib/thread test are known to fail in
+many platforms.
+
+=head2 EBCDIC platforms not supported
+
+In earlier releases of Perl the EBCDIC environments like OS390 (also
+known as Open Edition MVS) and VM-ESA were supported.  Due to the
+changes required by the UTF-8 (Unicode) support in Perl 5.6 the EBCDIC
+platforms are not supported in Perl 5.6.0.
+
+=head2 NEXTSTEP 3.3 POSIX test failure
+
+In NEXTSTEP 3.3p2 the implementation of the strftime(3) in the
+operating system libraries is buggy: the %j format numbers the days of
+a month starting from zero, which, while being logical to programmers,
+will cause the subtests 19 to 27 of the lib/posix test may fail.
+
+=head2 UNICOS/mk CC failures during Configure run
+
+In UNICOS/mk the following errors may appear during the Configure run:
+
+       Guessing which symbols your C compiler and preprocessor define...
+       CC-20 cc: ERROR File = try.c, Line = 3
+       ...
+         bad switch yylook 79bad switch yylook 79bad switch yylook 79bad switch yylook 79#ifdef A29K
+       ...
+       4 errors detected in the compilation of "try.c".
+
+The culprit is the broken awk of UNICOS/mk.  The effect is fortunately
+rather mild: Perl itself is not adversely affected by the error, only
+the h2ph utility coming with Perl, and that is rather rarely needed
+these days.
+
+=head2 Many features still experimental
+
+As discussed above, many features are still experimental, to a greater
+or lesser degree.  Interfaces and implementation are subject to
+change, in extreme cases even subject to removal in some future
+release of Perl.  These features include the following:
+
+=over 4
+
+=item Threads
+
+=item Unicode
+
+=item Lvalue subroutines
+
+=item Weak references
+
+=item File globbing now implemented internally
+
+=item The Compiler suite
+
+=item the DB module
+
+=item the regular expression constructs C<(?{ code })> and C<(??{ code })>
+
+=back
+
 =head1 BUGS
 
 If you find what you think is a bug, you might check the