Create perl571delta and seed it off with the perldelta changes
[p5sagit/p5-mst-13.2.git] / pod / perl571delta.pod
CommitLineData
d468ca04 1=head1 NAME
2
3perl571delta - what's new for perl v5.7.1
4
5=head1 DESCRIPTION
6
7This document describes differences between the 5.7.0 release and the
85.7.1 release.
9
10(To view the differences between the 5.6.0 release and the 5.7.0
11release, see L<perl570delta>).
12
13=head1 Incompatible Changes
14
15=over 4
16
17=item *
18
19Although "you shouldn't do that", it was possible to write code that
20depends on Perl's hashed key order (Data::Dumper does this). The new
21algorithm "One-at-a-Time" produces a different hashed key order.
22More details are in L<perldelta/Performance Enhancements>.
23
24=back
25
26=head1 Core Enhancements
27
28=over 4
29
30=item *
31
32Formats now support zero-padded decimal fields.
33
34=item *
35
36The printf and sprintf now support parameter reordering using the
37C<%\d+\$> and C<*\d+\$> syntaxes.
38
39=back
40
41=head1 Performance Enhancements
42
43=over 4
44
45=item *
46
47Hashes now use Bob Jenkins "One-at-a-Time" hashing key algorithm
48(http://burtleburtle.net/bob/hash/doobs.html).
49This algorithm is reasonably fast while producing a much better spread
50of values. Hash values output from the algorithm on a hash of all
513-char printable ASCII keys comes much closer to passing the DIEHARD
52random number generation tests. According to perlbench, this change
53has not affected the overall speed of Perl.
54
55=back
56
57=head1 Installation and Configuration Improvements
58
59=over 4
60
61=item *
62
63Configure no longer includes the DBM libraries (dbm, gdbm, db, ndbm)
64when building the Perl binary. The only exception to this is SunOS 4.x,
65which needs them.
66
67=back
68
69=head1 Selected Bug Fixes
70
71=over 4
72
73=item *
74
75vec() now tries to work with characters <= 255 when possible, but it leaves
76higher character values in place. In that case, if vec() was used to modify
77the string, it is no longer considered to be utf8-encoded.
78
79=back
80
81=head1 Known Problems
82
83=head2 sprintf tests 129 and 130
84
85The op/sprintf tests 129 and 130 are known to fail in some platforms.
86Examples include any platform using sfio, and Tandem's NonStop-UX.
87The failing platforms do not comply with the ANSI C Standard, line
8819ff on page 134 of ANSI X3.159 1989 to be exact. (They produce
89something else than "1" and "-1" when formatting 0.6 and -0.6 using
90the printf format "%.0f", most often they produce "0" and "-0".)
91
92=head1 Reporting Bugs
93
94If you find what you think is a bug, you might check the articles
95recently posted to the comp.lang.perl.misc newsgroup and the perl
96bug database at http://bugs.perl.org. There may also be
97information at http://www.perl.com/perl/, the Perl Home Page.
98
99If you believe you have an unreported bug, please run the B<perlbug>
100program included with your release. Be sure to trim your bug down
101to a tiny but sufficient test case. Your bug report, along with the
102output of C<perl -V>, will be sent off to perlbug@perl.org to be
103analysed by the Perl porting team.
104
105=head1 SEE ALSO
106
107The F<Changes> file for exhaustive details on what changed.
108
109The F<INSTALL> file for how to build Perl.
110
111The F<README> file for general stuff.
112
113The F<Artistic> and F<Copying> files for copyright information.
114
115=head1 HISTORY
116
117Written by Jarkko Hietaniemi <F<jhi@iki.fi>>, with many contributions
118from The Perl Porters and Perl Users submitting feedback and patches.
119
120Send omissions or corrections to <F<perlbug@perl.org>>.
121
122=cut