Commit | Line | Data |
43d4bbc8 |
1 | =head1 NAME |
2 | |
3 | perl571delta - what's new for perl v5.7.2 |
4 | |
5 | =head1 DESCRIPTION |
6 | |
7 | This document describes differences between the 5.7.1 release and the |
8 | 5.7.2 release. |
9 | |
10 | (To view the differences between the 5.6.0 release and the 5.7.0 |
11 | release, see L<perl570delta>. To view the differences between the |
12 | 5.7.0 release and the 5.7.1 release, see L<perl571delta>.) |
13 | |
14 | =head1 Security Vulnerability Closed |
15 | |
16 | (This change was already made in 5.7.0 but bears repeating here.) |
17 | |
18 | A security vulnerability affecting all Perl versions prior to 5.6.1 |
19 | was found in August 2000. The vulnerability does not affect default |
20 | installations and as far as is known affects only the Linux platform. |
21 | |
22 | You should upgrade your Perl to 5.6.1 as soon as possible. Patches |
23 | for earlier releases exist but they require full recompilation from |
24 | the source code so 5.6.1 is your best choice. |
25 | See http://www.cpan.org/src/5.0/sperl-2000-08-05/sperl-2000-08-05.txt |
26 | for more information. |
27 | |
28 | =head1 Incompatible Changes |
29 | |
30 | =head1 Core Enhancements |
31 | |
32 | =head1 Modules and Pragmata |
33 | |
34 | =head2 New Modules |
35 | |
36 | =head2 Updated And Improved Modules and Pragmata |
37 | |
38 | =head1 Performance Enhancements |
39 | |
40 | =head1 Utility Changes |
41 | |
42 | =head1 New Documentation |
43 | |
44 | =head1 Installation and Configuration Improvements |
45 | |
46 | =head2 New Or Improved Platforms |
47 | |
48 | =head2 Generic Improvements |
49 | |
50 | =head1 Selected Bug Fixes |
51 | |
52 | =head2 Platform Specific Changes and Fixes |
53 | |
54 | =head1 New or Changed Diagnostics |
55 | |
56 | =head1 Changed Internals |
57 | |
58 | =head2 Regex pre-/post-compilation items matched up |
59 | |
60 | The regex compiler now maintains a structure that identifies nodes in |
61 | the compiled bytecode with the corresponding syntactic features of the |
62 | original regex expression. The information is attached to the new |
63 | C<offsets> member of the C<struct regexp>. See L<perldebguts> for more |
64 | complete information. |
65 | |
66 | =head1 New Tests |
67 | |
68 | =head1 Known Problems |
69 | |
70 | Note that unlike other sections in this document (which describe |
71 | changes since 5.7.0) this section is cumulative containing known |
72 | problems for all the 5.7 releases. |
73 | |
74 | =head2 AIX vac 5.0.0.0 May Produce Buggy Code For Perl |
75 | |
76 | The AIX C compiler vac version 5.0.0.0 may produce buggy code, |
77 | resulting in few random tests failing, but when the failing tests |
78 | are run by hand, they succeed. We suggest upgrading to at least |
79 | vac version 5.0.1.0, that has been known to compile Perl correctly. |
80 | "lslpp -L|grep vac.C" will tell you the vac version. |
81 | |
82 | =head2 lib/ftmp-security tests warn 'system possibly insecure' |
83 | |
84 | Don't panic. Read INSTALL 'make test' section instead. |
85 | |
86 | =head2 lib/io_multihomed Fails In LP64-Configured HP-UX |
87 | |
88 | The lib/io_multihomed test may hang in HP-UX if Perl has been |
89 | configured to be 64-bit. Because other 64-bit platforms do not hang in |
90 | this test, HP-UX is suspect. All other tests pass in 64-bit HP-UX. The |
91 | test attempts to create and connect to "multihomed" sockets (sockets |
92 | which have multiple IP addresses). |
93 | |
94 | =head2 Test lib/posix Subtest 9 Fails In LP64-Configured HP-UX |
95 | |
96 | If perl is configured with -Duse64bitall, the successful result of the |
97 | subtest 10 of lib/posix may arrive before the successful result of the |
98 | subtest 9, which confuses the test harness so much that it thinks the |
99 | subtest 9 failed. |
100 | |
101 | =head2 lib/b test 19 |
102 | |
103 | The test fails on various platforms (PA64 and IA64 are known), but the |
104 | exact cause is still being investigated. |
105 | |
106 | =head2 Linux With Sfio Fails op/misc Test 48 |
107 | |
108 | No known fix. |
109 | |
110 | =head2 sigaction test 13 in VMS |
111 | |
112 | The test is known to fail; whether it's because of VMS of because |
113 | of faulty test is not known. |
114 | |
115 | =head2 sprintf tests 129 and 130 |
116 | |
117 | The op/sprintf tests 129 and 130 are known to fail on some platforms. |
118 | Examples include any platform using sfio, and Compaq/Tandem's NonStop-UX. |
119 | The failing platforms do not comply with the ANSI C Standard, line |
120 | 19ff on page 134 of ANSI X3.159 1989 to be exact. (They produce |
121 | something else than "1" and "-1" when formatting 0.6 and -0.6 using |
122 | the printf format "%.0f", most often they produce "0" and "-0".) |
123 | |
124 | =head2 Failure of Thread tests |
125 | |
126 | The subtests 19 and 20 of lib/thr5005.t test are known to fail due to |
127 | fundamental problems in the 5.005 threading implementation. These are |
128 | not new failures--Perl 5.005_0x has the same bugs, but didn't have |
129 | these tests. (Note that support for 5.005-style threading remains |
130 | experimental.) |
131 | |
132 | =head2 Localising a Tied Variable Leaks Memory |
133 | |
134 | use Tie::Hash; |
135 | tie my %tie_hash => 'Tie::StdHash'; |
136 | |
137 | ... |
138 | |
139 | local($tie_hash{Foo}) = 1; # leaks |
140 | |
141 | Code like the above is known to leak memory every time the local() |
142 | is executed. |
143 | |
144 | =head2 Self-tying of Arrays and Hashes Is Forbidden |
145 | |
146 | Self-tying of arrays and hashes is broken in rather deep and |
147 | hard-to-fix ways. As a stop-gap measure to avoid people from getting |
148 | frustrated at the mysterious results (core dumps, most often) it is |
149 | for now forbidden (you will get a fatal error even from an attempt). |
150 | |
151 | =head2 Building Extensions Can Fail Because Of Largefiles |
152 | |
153 | Some extensions like mod_perl are known to have issues with |
154 | `largefiles', a change brought by Perl 5.6.0 in which file offsets |
155 | default to 64 bits wide, where supported. Modules may fail to compile |
156 | at all or compile and work incorrectly. Currently there is no good |
157 | solution for the problem, but Configure now provides appropriate |
158 | non-largefile ccflags, ldflags, libswanted, and libs in the %Config |
159 | hash (e.g., $Config{ccflags_nolargefiles}) so the extensions that are |
160 | having problems can try configuring themselves without the |
161 | largefileness. This is admittedly not a clean solution, and the |
162 | solution may not even work at all. One potential failure is whether |
163 | one can (or, if one can, whether it's a good idea) link together at |
164 | all binaries with different ideas about file offsets, all this is |
165 | platform-dependent. |
166 | |
167 | =head2 The Compiler Suite Is Still Experimental |
168 | |
169 | The compiler suite is slowly getting better but is nowhere near |
170 | working order yet. |
171 | |
172 | =head1 Reporting Bugs |
173 | |
174 | If you find what you think is a bug, you might check the articles |
175 | recently posted to the comp.lang.perl.misc newsgroup and the perl |
176 | bug database at http://bugs.perl.org. There may also be |
177 | information at http://www.perl.com/perl/, the Perl Home Page. |
178 | |
179 | If you believe you have an unreported bug, please run the B<perlbug> |
180 | program included with your release. Be sure to trim your bug down |
181 | to a tiny but sufficient test case. Your bug report, along with the |
182 | output of C<perl -V>, will be sent off to perlbug@perl.org to be |
183 | analysed by the Perl porting team. |
184 | |
185 | =head1 SEE ALSO |
186 | |
187 | The F<Changes> file for exhaustive details on what changed. |
188 | |
189 | The F<INSTALL> file for how to build Perl. |
190 | |
191 | The F<README> file for general stuff. |
192 | |
193 | The F<Artistic> and F<Copying> files for copyright information. |
194 | |
195 | =head1 HISTORY |
196 | |
197 | Written by Jarkko Hietaniemi <F<jhi@iki.fi>>, with many contributions |
198 | from The Perl Porters and Perl Users submitting feedback and patches. |
199 | |
200 | Send omissions or corrections to <F<perlbug@perl.org>>. |
201 | |
202 | =cut |