This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
First draft of the 5.12.1 perldelta
[perl5.git] / pod / perl5121delta.pod
CommitLineData
d8b64acd
JV
1=encoding utf8
2
3=head1 NAME
4
5perldelta - what is new for perl v5.12.1
6
7=head1 DESCRIPTION
8
9This document describes differences between the 5.12.0 release and
10the 5.12.1 release.
11
12If you are upgrading from an earlier release such as 5.10.1, first read
13L<perl5120delta>, which describes differences between 5.10.1 and
145.12.0.
15
16=head1 Notice
17
18XXX Any important notices here
19
20=head1 Incompatible Changes
21
22There are no changes intentionally incompatible with 5.12.0 If any
23exist, they are bugs and reports are welcome.
24
25
26=head1 Core Enhancements
27
28Other than the bug fixes listed below, there should be no user-visible
29changes to the core langauge in this release.
30
31=head1 Modules and Pragmata
32
33=head2 New Modules and Pragmata
34
35=head2 Pragmata Changes
36
37=head2 Updated Modules
38
39=head2 Removed Modules and Pragmata
40
41=head1 Changes to Existing Documentation
42
43XXX Changes which significantly change existing files in F<pod/> go here.
44Any changes to F<pod/perldiag.pod> should go in L</New or Changed Diagnostics>.
45
46
47=head1 Performance Enhancements
48
49XXX Changes which enhance performance without changing behaviour go here. There
50may well be none in a stable release.
51
52=over 4
53
54=item *
55
56XXX
57
58=back
59
60=head1 Installation and Configuration Improvements
61
62XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
63go here.
64
65=head2 Configuration improvements
66
67XXX
68
69=head2 Compilation improvements
70
71XXX
72
73=head2 Platform Specific Changes
74
75=over 4
76
77=item XXX-some-platform
78
79XXX
80
81=back
82
83=head1 Selected Bug Fixes
84
85XXX Important bug fixes in the core language are summarised here.
86Bug fixes in files in F<ext/> and F<lib/> are best summarised in
87L</Modules and Pragmata>.
88
89=over 4
90
91=item *
92
93XXX
94
95=back
96
97=head1 Changed Internals
98
99XXX Changes which affect the interface available to C<XS> code go here.
100
101=over 4
102
103=item *
104
105XXX
106
107=back
108
109=head1 Known Problems
110
111XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
112tests that had to be C<TODO>ed for the release would be noted here, unless
113they were specific to a particular platform (see below).
114
115This is a list of some significant unfixed bugs, which are regressions
116from either 5.XXX.XXX or 5.XXX.XXX.
117
118=over 4
119
120=item *
121
122XXX
123
124=back
125
126=head1 Platform Specific Notes
127
128XXX Any changes specific to a particular platform. VMS and Win32 are the usual
129stars here. It's probably best to group changes under the same section layout
130as the main perldelta
131
132=head1 Acknowledgements
133
134XXX The list of people to thank goes here.
135
136
137=head1 Reporting Bugs
138
139If you find what you think is a bug, you might check the articles
140recently posted to the comp.lang.perl.misc newsgroup and the perl
141bug database at http://rt.perl.org/perlbug/ . There may also be
142information at http://www.perl.org/ , the Perl Home Page.
143
144If you believe you have an unreported bug, please run the B<perlbug>
145program included with your release. Be sure to trim your bug down
146to a tiny but sufficient test case. Your bug report, along with the
147output of C<perl -V>, will be sent off to perlbug@perl.org to be
148analysed by the Perl porting team.
149
150If the bug you are reporting has security implications, which make it
151inappropriate to send to a publicly archived mailing list, then please send
152it to perl5-security-report@perl.org. This points to a closed subscription
153unarchived mailing list, which includes all the core committers, who be able
154to help assess the impact of issues, figure out a resolution, and help
155co-ordinate the release of patches to mitigate or fix the problem across all
156platforms on which Perl is supported. Please only use this address for
157security issues in the Perl core, not for modules independently
158distributed on CPAN.
159
160=head1 SEE ALSO
161
162The F<Changes> file for an explanation of how to view exhaustive details
163on what changed.
164
165The F<INSTALL> file for how to build Perl.
166
167The F<README> file for general stuff.
168
169The F<Artistic> and F<Copying> files for copyright information.
170
171=cut
172
173
174
175=HEAD2 BUILD AND INSTALL
176
177=item *
178
179Ignore the /UU directory that exists during ./Configure
180
181=HEAD2 DIAGNOSTICS
182
183=item *
184
185Added a missing explanation for a warning about C<:=> to L<perldiag.pod>
186
187=head2 TEST FIXES
188
189=item *
190
191Fixes for 5.12.0 test failures in lib/blib.t and lib/locale.t on Darwin/PPC
192
193
194=item *
195
196 Fix a test failure in perl5db.t when Term::ReadLine::Gnu is installed
197
198
199=item *
200 Add fudge to timing checks on Windows
201
202 sleep() time on Win32 may be rounded down to multiple of
203 the clock tick interval.
204
205 http://www.nntp.perl.org/group/perl.perl5.porters/2010/03/msg157878.html
206
207
208
209DOC
210
211=item *
212
213Add the new maint policy to perlpolicy.pod
214
215=item *
216
217We've clarified the multiple-angle-bracked construct in the spec for POD
218
219=item *
220
221 Nits in perlunifaq.pod
222
223=item *
224
225 Update title of "Supported Platforms" in perlport to avoid
226 breaking pod links at each perl release (spotted by Karl Williamson)
227
228=item *
229 [perl #74808] Carp.pm POD error
230
231 The documentation incorrectly states that the $Carp::Verbose
232 variable makes cluck generate stack backtraces. cluck
233 already generates stack backtraces. It should say that
234 the variable makes croak generate stack backtraces.
235
236
237
238=item *
239
240Fix F<a2p> example in L<perlutil.pod>
241
242
243=item *
244
245Fill blank with the release date of 5.12 in perlport.pod
246
247=item *
248
249Fix broken links in perldelta files
250=item *
251
252Typo fixes in Pod::Functions
253=item *
254
255 Add POD index entries for sitecustomize and sitecustomize.pl
256
257
258=item *
259 Replace mention of Switch.pm with given/when
260=item *
261
262 Improve documentation about sitecustomize.pl.
263
264=item *
265 Reintroduce a lot of missing modules into perlmodlib.pod
266
267 That was due to the great move of dual-life modules into cpan/ and
268 dist/. This fixes the bug: [perl #74332] lots of modules missing from
269 perlmodlib.
270
271=item *
272
273POD tweak to 'require' in perlfunc relating to putting Perl code in @INC
274
275=item *
276 Reinstate some documentation about quotemeta
277 (that was removed in 8bdbc703cb0af3faf2163ebce618944c51f180a0)
278
279=item *
280 [perl #74856] Fix POD syntax in perlapi
281
282=item *
283
284 Remove false statement about Unicode strings
285 It is simply not true that all text strings are Unicode strings in Perl.
286
287=item *
288 GitHub's mirror is now at mirrors/perl, not github/perl
289=item *
290 Fix a minor perl5114delta error.
291
292PLATFORM AIX 4.2
293
294=item *
295
296 [PATCH] [5.12] Allow build on aix 4.2 (sigaction and IPv6)
297
298 Based on a patch by AUGUSTE-ETIENNE José <jose.auguste-etienne@cgss-guyane.fr>
299
300 The attached patches are necessary to work around aix 4.2 lack of support for IPv6,
301 and limited support for POSIX sigaction()
302
303 The hints/aix_4.sh patch solves the following build failure:
304
305 "Socket.xs", line 468.16: 1506-007 (S) "struct in6_addr" is undefined.
306
307 The ext/POSIX/t/sigaction.t patch solves the failing test reported a looong time ago:
308
309 http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2006-01/msg01124.html
310
311 After testing a simple C program using POSIX sigaction() with SA_SIGINFO,
312 I found that it worked on aix 4.3 but failed on aix 4.2.
313
314 I think it's safe to skip the SA_SIGINFO test on the aix 4.2 platform.
315
316 perl 5.12.0 builds fine on the following platforms / C compiler :
317
318 aix 4.2.1 / vac 5.0.2.7 (with attached patches)
319 aix 4.3.2 / gcc 2.95.3
320 aix 4.3.3 / vac 4.4.0.3
321 aix 4.3.3 / vac 5.0.28
322 aix 5.2 / GNUpro gcc 2.9.aix51.020209
323
324 The atatched patches should be applied to blead and maint.
325
326
327
328Platform FreeBSD
329=item *
330 FreeBSD 7+ no longer contains /usr/bin/objformat, so the following
331 (harmless) following error message is printed when hints are run:
332
333 ./hints/freebsd.sh: /usr/bin/objformat: not found
334
335 The reason for this is outlined in this email from Feb 2007
336 http://lists.freebsd.org/pipermail/freebsd-ports/2007-February/038523.html
337
338 This patch just skips the objformat check for versions 7+ and
339 assumes ELF. (The end result is unchanged, but the error
340 message will not be printed anymore.)
341
342PLATFORMS VMS
343
344=item *
345 Allow extension building on older (pre 7.3-2) VMS systems.
346
347 DCL symbol length was limited to 1K up until about seven years or
348 so ago, but there was no particularly deep reason to prevent those
349 older systems from configuring and building Perl.
350
351
352=item *
353
354 Fix broken -Uuseperlio build on VMS.
355
356 We were checking a variable that doesn't exist in the non-default
357 case of disabling perlio. Now we only look at it when it exists.
358
359=item *(
360
361 Fix -Uuseperlio command-line option in configure.com.
362
363 Formerly it only worked if you went through all the questions
364 interactively and explicitly answered no.
365 (cherry picked from commit 839d17582bad556c85fba50bb136d1c1fa878a54)
366commit bd94fa25a8ae3c7107bd1aec68d4488d21c79b05
367Author: Nicholas Clark <nick@ccl4.org>
368Date: Mon Apr 19 15:35:59 2010 +0100
369
370 Possible undefined behaviour, spotted by gcc 4.5.0 and HP's updated compiler.
371
372PLATFORM SUSE?
373
374=item *
375
376 Note how to deal with broken dbm.h on OpenSUSE
377 (cherry picked from commit 1bb125e2afe6197deaf55852a3f8a9c52736bfdc)
378
379
380PLATFORM HPUX
381
382=item *
383 Allow -Duse64bitint without promoting to use64bitall on HP-UX
384
385 Fix for http://rt.perl.org/rt3/Public/Bug/Display.html?id=17736
386 (cherry picked from commit 064b70ffe2beced36b4693cdd2a8e2cbd2139b47)
387
388
389Module Updates
390
391
392
393=item *
394
395 fix version::is_strict/is_lax exporting
396
397 These were being exported with a wrapper that treated them as method
398 calls, which causes them to fail. They are just functions, are
399 documented as such, and should never be subclassed, so this patch
400 just exports them directly as functions without the wrapper.
401
402
403
404=item *
405
406 Upgrade to CGI.pm 3.49
407
408 TODO WHY
409
410=item *
411
412 import Pod-Simple 3.14 for C<< >> fix
413
414
415=HEAD2 Release Engineering
416
417=item *
418
419Teach bump-perl-version about "libperl511.a"
420
421
422
423commit 72c7417ae4c0cbb91b46622e0657f57469f025f8
424Author: Jan Dubois <jand@activestate.com>
425Date: Fri Mar 5 15:24:17 2010 -0800
426
427 Apply minimal patch for Perl bug 72704.
428
429 Arguments to fputc() and fputs() are reversed on Windows.
430
431 http://rt.perl.org/rt3/Public/Bug/Display.html?id=72704
432
433=HEAD2 Internals
434
435=item *
436
437utf8::is_utf8 now respects respect GMAGIC (e.g. $1)
438
439commit 349476ba0aabe6945fe0b234090937e992e7b95d
440
441 Fix [perl #74542] 5.12.0 crash on diverse platforms
442
443 Filetest ops don't always expect an op on the stack, so we should use
444 TOPs only if we're sure that we're not stat'ing the _ filehandle.
445 This is indicated by OPf_KIDS (as checked in ck_ftst).
446
447commit 5e8d0adeb52de899a2c0954a747fe56eda402bed
448Author: Zefram <zefram@fysh.org>
449Date: Fri Apr 30 00:02:06 2010 +0100
450
451 put package declaration before label in deparsing
452
453 When deparsing a nextstate op that has both a change of package (relative
454 to the previous nextstate) and a label, the package declaration must be
455 emitted first, because it is syntactically impermissible for a label to
456 prefix a package declaration.
457 (cherry picked from commit 98a1a1376eb18f3329f6d272d4dc3e9a7780689f)
458
459
460commit e560917618a7d70a9f3420f75c62e08872bf97b5
461Author: Jan Dubois <jand@activestate.com>
462Date: Wed Apr 21 16:49:09 2010 -0700
463
464 XSUB.h is supposed to redefine fgets under PERL_IMPLICIT_SYS, but doesn't.
465
466 See also http://rt.cpan.org/Public/Bug/Display.html?id=55049
467 with workaround in http://code.google.com/p/perl-devel-nytprof/source/detail?r=1168
468 (cherry picked from commit 20c8f8f9118fd23081c818637815bf1aab60b808)
469
470
471