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