This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta up to e38acfd7
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
541cb22c
FC
3=for comment
4This has been completed up to e38acfd7.
5
44691e6f
AB
6=head1 NAME
7
0aaeb177
SH
8[ this is a template for a new perldelta file. Any text flagged as
9XXX needs to be processed before release. ]
760696b8 10
0aaeb177 11perldelta - what is new for perl v5.15.6
062678b2 12
0aaeb177 13=head1 DESCRIPTION
ad32999b 14
0aaeb177
SH
15This document describes differences between the 5.15.5 release and
16the 5.15.6 release.
ad32999b 17
0aaeb177
SH
18If you are upgrading from an earlier release such as 5.15.4, first read
19L<perl5155delta>, which describes differences between 5.15.4 and
205.15.5.
ad32999b 21
0aaeb177 22=head1 Notice
ad32999b 23
0aaeb177 24XXX Any important notices here
ad32999b 25
0aaeb177 26=head1 Core Enhancements
a3f52e2e 27
0aaeb177
SH
28XXX New core language features go here. Summarise user-visible core language
29enhancements. Particularly prominent performance optimisations could go
30here, but most should go in the L</Performance Enhancements> section.
a3f52e2e 31
0aaeb177 32[ List each enhancement as a =head2 entry ]
6d110ad0 33
e3c71926 34=head1 Security
6d110ad0 35
0aaeb177
SH
36XXX Any security-related notices go here. In particular, any security
37vulnerabilities closed should be noted here rather than in the
38L</Selected Bug Fixes> section.
6d110ad0 39
0aaeb177 40[ List each security issue as a =head2 entry ]
6d110ad0 41
e3c71926 42=head1 Incompatible Changes
6d110ad0 43
0aaeb177 44XXX For a release on a stable branch, this section aspires to be:
ad32999b 45
0aaeb177
SH
46 There are no changes intentionally incompatible with 5.XXX.XXX
47 If any exist, they are bugs and reports are welcome.
ad32999b 48
0aaeb177 49[ List each incompatible change as a =head2 entry ]
ad32999b 50
541cb22c
FC
51=head2 XS API tweak
52
53The C<newCONSTSUB_flags> C-level function, added in 5.15.4, now has a
54C<len> parameter.
55
e3c71926 56=head1 Deprecations
6d110ad0 57
0aaeb177
SH
58XXX Any deprecated features, syntax, modules etc. should be listed here.
59In particular, deprecated modules should be listed here even if they are
60listed as an updated module in the L</Modules and Pragmata> section.
ae92a9ae 61
0aaeb177 62[ List each deprecation as a =head2 entry ]
ae92a9ae 63
e3c71926 64=head1 Performance Enhancements
6d110ad0 65
0aaeb177
SH
66XXX Changes which enhance performance without changing behaviour go here. There
67may well be none in a stable release.
68
69[ List each enhancement as a =item entry ]
70
e3c71926 71=over 4
6d110ad0
FC
72
73=item *
74
0aaeb177 75XXX
6d110ad0 76
e3c71926 77=back
6d110ad0 78
e3c71926 79=head1 Modules and Pragmata
6d110ad0 80
0aaeb177
SH
81XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
82go here. If Module::CoreList is updated, generate an initial draft of the
83following sections using F<Porting/corelist-perldelta.pl>, which prints stub
84entries to STDOUT. Results can be pasted in place of the '=head2' entries
85below. A paragraph summary for important changes should then be added by hand.
86In an ideal world, dual-life modules would have a F<Changes> file that could be
87cribbed.
88
89[ Within each section, list entries as a =item entry ]
90
e3c71926 91=head2 New Modules and Pragmata
6d110ad0 92
e3c71926 93=over 4
6d110ad0
FC
94
95=item *
96
0aaeb177 97XXX
6d110ad0
FC
98
99=back
100
e3c71926 101=head2 Updated Modules and Pragmata
6d110ad0 102
e3c71926 103=over 4
6d110ad0
FC
104
105=item *
106
f8c9502f
CBW
107L<Archive::Tar> has been upgraded from version 1.80 to version 1.82.
108
109Adjustments to handle files >8gb (>0777777777777 octal) and a feature to
110return the MD5SUM of files in the archive.
a3f52e2e 111
87b9431e
CBW
112=item *
113
74c26f06
CBW
114L<AutoLoader> has been upgraded from version 5.71 to version 5.72.
115
116=item *
117
8cea0f87
CBW
118L<B::Debug> has been upgraded from version 1.16 to version 1.17.
119
120=item *
121
9505dd85 122L<Compress::Raw::Zlib> has been upgraded from version 2.042 to version 2.045.
87b9431e 123
7e700369
CBW
124=item *
125
6475ddc2 126L<Compress::Raw::Bzip2> has been upgraded from version 2.042 to version 2.045.
7e700369 127
dc7edc5c
CBW
128=item *
129
ac616993
CBW
130L<ExtUtils::ParseXS> has been upgraded from version 3.05 to version 3.07.
131
132=item *
133
090349ce 134L<IO::Compress::Base> has been upgraded from version 2.042 to version 2.045.
08ad9465
CBW
135
136Added zipdetails utility.
dc7edc5c 137
7788a270
CBW
138=item *
139
4345d05b
CBW
140L<Locale::Codes> has been upgraded from version 3.18 to version 3.20.
141
142The code2XXX, XXX2code, all_XXX_codes, and all_XXX_names functions now support retired codes.
143All codesets may be specified by a constant or by their name now. Previously,
144they were specified only by a constant.
145The alias_code function exists for backward compatibility. It has been replaced by rename_country_code.
146The alias_code function will be removed sometime after September, 2013.
147All work is now done in the central module (Locale::Codes). Previously, some was still done in the
148wrapper modules (Locale::Codes::*) but that is gone now.
149Added Language Family codes (langfam) as defined in ISO 639-5.
150
151=item *
152
b42ff875
CBW
153L<Module::Loaded> has been uprgaded from version 0.06 to version 0.08.
154
155=item *
156
a71d67b1
CBW
157L<Pod::LaTeX> has been upgraded from version 0.59 to version 0.60.
158
159Added another LaTeX escape: --- => -{}-{}-
160
161Pod::LaTeX doesn't handle -- in PODs specially, passing it directly to
162LaTeX, which then proceeds to replace it with a single -. This patch
163replaces ----- with -{}-{}-{}-{}-
164
165=item *
166
65ae8d99 167L<Unicode::Collate> has been upgraded from version 0.85 to version 0.87.
7788a270
CBW
168
169Tailored compatibility ideographs as well as unified ideographs for
170the locales: ja, ko, zh__big5han, zh__gb2312han, zh__pinyin, zh__stroke.
171
65ae8d99
CBW
172Now Locale/*.pl files are searched in @INC.
173
0aaeb177 174=back
6138a722 175
0aaeb177 176=head2 Removed Modules and Pragmata
6138a722 177
0aaeb177 178=over 4
be539103 179
a47fb3fe
CBW
180=item *
181
0aaeb177 182XXX
a3f52e2e 183
0aaeb177 184=back
a3f52e2e 185
0aaeb177 186=head1 Documentation
a3f52e2e 187
0aaeb177
SH
188XXX Changes to files in F<pod/> go here. Consider grouping entries by
189file and be sure to link to the appropriate page, e.g. L<perlfunc>.
a3f52e2e 190
0aaeb177 191=head2 New Documentation
ad32999b 192
0aaeb177 193XXX Changes which create B<new> files in F<pod/> go here.
ad32999b 194
0aaeb177 195=head3 L<XXX>
ad32999b 196
0aaeb177 197XXX Description of the purpose of the new file here
6138a722 198
0aaeb177 199=head2 Changes to Existing Documentation
6138a722 200
0aaeb177
SH
201XXX Changes which significantly change existing files in F<pod/> go here.
202However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
203section.
a47fb3fe 204
0aaeb177 205=head3 L<XXX>
a47fb3fe 206
0aaeb177 207=over 4
7ef25837 208
6d110ad0
FC
209=item *
210
0aaeb177 211XXX Description of the change here
6d110ad0
FC
212
213=back
214
e3c71926
FR
215=head1 Diagnostics
216
217The following additions or changes have been made to diagnostic output,
218including warnings and fatal error messages. For the complete list of
219diagnostic messages, see L<perldiag>.
6d110ad0 220
0aaeb177
SH
221XXX New or changed warnings emitted by the core's C<C> code go here. Also
222include any changes in L<perldiag> that reconcile it to the C<C> code.
6138a722 223
0aaeb177
SH
224[ Within each section, list entries as a =item entry that links to perldiag,
225 e.g.
6138a722 226
0aaeb177 227 =item *
6138a722 228
0aaeb177
SH
229 L<Invalid version object|perldiag/"Invalid version object">
230]
6138a722 231
0aaeb177 232=head2 New Diagnostics
828d6195 233
0aaeb177 234XXX Newly added diagnostic messages go here
83307084 235
0aaeb177 236=head3 New Errors
d39de893 237
3432e5a1 238=over 4
39afdc5a
CBW
239
240=item *
241
0aaeb177 242XXX L<message|perldiag/"message">
6138a722 243
e3c71926 244=back
7b8e5ef0 245
0aaeb177 246=head3 New Warnings
91710846 247
e3c71926 248=over 4
91710846
DG
249
250=item *
251
0aaeb177 252XXX L<message|perldiag/"message">
f81e39ef 253
e3c71926 254=back
a2fa999d 255
0aaeb177
SH
256=head2 Changes to Existing Diagnostics
257
258XXX Changes (i.e. rewording) of diagnostic messages go here
bd65daab 259
e3c71926 260=over 4
bd65daab 261
3f2cb5bf
SM
262=item *
263
0aaeb177 264XXX Describe change here
b420b12a 265
3432e5a1 266=back
b420b12a 267
0aaeb177 268=head1 Utility Changes
9cfd094e 269
0aaeb177
SH
270XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
271here. Most of these are built within the directories F<utils> and F<x2p>.
95f7e41f 272
0aaeb177
SH
273[ List utility changes as a =head3 entry for each utility and =item
274entries for each change
275Use L<XXX> with program names to get proper documentation linking. ]
95f7e41f 276
08ad9465 277=head3 L<zipdetails>
d6cf2367 278
e3c71926 279=over 4
b53e16ae
FC
280
281=item *
282
08ad9465
CBW
283L<zipdetails> displays information about the internal record structure of the zip file.
284It is not concerned with displaying any details of the compressed data stored in the zip file.
b53e16ae 285
3432e5a1 286=back
60092ce4 287
0aaeb177
SH
288=head1 Configuration and Compilation
289
290XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
291go here. Any other changes to the Perl build process should be listed here.
292However, any platform-specific changes should be listed in the
293L</Platform Support> section, instead.
294
295[ List changes as a =item entry ].
309aab3a 296
e3c71926 297=over 4
b53e16ae
FC
298
299=item *
300
60f0ee9d
NC
301F<pod/roffitall> is now build by F<pod/buildtoc>, instead of being shipped
302with the distribution. Its list of manpages is now generated (and therefore
303current). See also RT #103202 for an unresolved related issue.
a3f52e2e 304
0aaeb177 305=back
a3f52e2e 306
0aaeb177 307=head1 Testing
a3f52e2e 308
0aaeb177
SH
309XXX Any significant changes to the testing of a freshly built perl should be
310listed here. Changes which create B<new> files in F<t/> go here as do any
311large changes to the testing harness (e.g. when parallel testing was added).
312Changes to existing files in F<t/> aren't worth summarising, although the bugs
313that they represent may be covered elsewhere.
a3f52e2e 314
0aaeb177 315[ List each test improvement as a =item entry ]
a3f52e2e 316
0aaeb177 317=over 4
a3f52e2e
FC
318
319=item *
320
0aaeb177 321XXX
a3f52e2e 322
0aaeb177 323=back
a3f52e2e 324
0aaeb177 325=head1 Platform Support
a3f52e2e 326
0aaeb177 327XXX Any changes to platform support should be listed in the sections below.
a3f52e2e 328
0aaeb177
SH
329[ Within the sections, list each platform as a =item entry with specific
330changes as paragraphs below it. ]
a3f52e2e 331
0aaeb177 332=head2 New Platforms
a3f52e2e 333
0aaeb177
SH
334XXX List any platforms that this version of perl compiles on, that previous
335versions did not. These will either be enabled by new files in the F<hints/>
336directories, or new subdirectories and F<README> files at the top level of the
337source tree.
a3f52e2e 338
0aaeb177 339=over 4
a3f52e2e 340
0aaeb177 341=item XXX-some-platform
a3f52e2e 342
0aaeb177 343XXX
a3f52e2e 344
0aaeb177 345=back
a3f52e2e 346
0aaeb177 347=head2 Discontinued Platforms
ca955add 348
0aaeb177 349XXX List any platforms that this version of perl no longer compiles on.
bbdd8bad 350
0aaeb177 351=over 4
bbdd8bad 352
0aaeb177 353=item XXX-some-platform
ad32999b 354
0aaeb177 355XXX
ad32999b 356
0aaeb177 357=back
ad32999b 358
0aaeb177 359=head2 Platform-Specific Notes
ad32999b 360
0aaeb177
SH
361XXX List any changes for specific platforms. This could include configuration
362and compilation changes or changes in portability/compatibility. However,
363changes within modules for platforms should generally be listed in the
364L</Modules and Pragmata> section.
ad32999b 365
0aaeb177 366=over 4
ad32999b 367
0aaeb177 368=item XXX-some-platform
ad32999b 369
0aaeb177 370XXX
ad32999b 371
0aaeb177 372=back
ad32999b 373
0aaeb177 374=head1 Internal Changes
ad32999b 375
0aaeb177
SH
376XXX Changes which affect the interface available to C<XS> code go here.
377Other significant internal changes for future core maintainers should
378be noted as well.
ad32999b 379
0aaeb177 380[ List each change as a =item entry ]
ad32999b 381
0aaeb177 382=over 4
ad32999b 383
3973654e
FC
384=item *
385
0aaeb177 386XXX
3973654e 387
0aaeb177 388=back
cca38fda 389
0aaeb177 390=head1 Selected Bug Fixes
9c7c1651 391
0aaeb177
SH
392XXX Important bug fixes in the core language are summarised here.
393Bug fixes in files in F<ext/> and F<lib/> are best summarised in
394L</Modules and Pragmata>.
9c7c1651 395
0aaeb177 396[ List each fix as a =item entry ]
fce59cd4 397
0aaeb177 398=over 4
fce59cd4 399
b9e83cd1
FC
400=item *
401
541cb22c
FC
402A constant subroutine assigned to a glob whose name contains a null will no
403longer cause extra globs to pop into existence when the constant is
404referenced under its new name.
b9e83cd1 405
0aaeb177 406=back
bf19b80e 407
0aaeb177 408=head1 Known Problems
bf19b80e 409
0aaeb177
SH
410XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
411tests that had to be C<TODO>ed for the release would be noted here, unless
412they were specific to a particular platform (see below).
65b66aa9 413
0aaeb177
SH
414This is a list of some significant unfixed bugs, which are regressions
415from either 5.XXX.XXX or 5.XXX.XXX.
65b66aa9 416
0aaeb177 417[ List each fix as a =item entry ]
b53e16ae 418
0aaeb177 419=over 4
b53e16ae 420
7c864bb3
VP
421=item *
422
0aaeb177 423XXX
7c864bb3 424
63ac71b9 425=back
bbc28bfc 426
0aaeb177 427=head1 Obituary
8fe05716 428
0aaeb177
SH
429XXX If any significant core contributor has died, we've added a short obituary
430here.
8fe05716 431
0aaeb177 432=head1 Acknowledgements
8fe05716 433
0aaeb177 434XXX Generate this with:
8fe05716 435
0aaeb177 436 perl Porting/acknowledgements.pl v5.15.5..HEAD
29cf780c 437
44691e6f
AB
438=head1 Reporting Bugs
439
440If you find what you think is a bug, you might check the articles
34dc2ec0 441recently posted to the comp.lang.perl.misc newsgroup and the perl
44691e6f
AB
442bug database at http://rt.perl.org/perlbug/ . There may also be
443information at http://www.perl.org/ , the Perl Home Page.
444
445If you believe you have an unreported bug, please run the L<perlbug>
446program included with your release. Be sure to trim your bug down
447to a tiny but sufficient test case. Your bug report, along with the
448output of C<perl -V>, will be sent off to perlbug@perl.org to be
449analysed by the Perl porting team.
450
451If the bug you are reporting has security implications, which make it
452inappropriate to send to a publicly archived mailing list, then please send
34dc2ec0 453it to perl5-security-report@perl.org. This points to a closed subscription
b4707b2a
FC
454unarchived mailing list, which includes
455all the core committers, who will be able
44691e6f
AB
456to help assess the impact of issues, figure out a resolution, and help
457co-ordinate the release of patches to mitigate or fix the problem across all
34dc2ec0
DM
458platforms on which Perl is supported. Please only use this address for
459security issues in the Perl core, not for modules independently
44691e6f
AB
460distributed on CPAN.
461
462=head1 SEE ALSO
463
464The F<Changes> file for an explanation of how to view exhaustive details
465on what changed.
466
467The F<INSTALL> file for how to build Perl.
468
469The F<README> file for general stuff.
470
471The F<Artistic> and F<Copying> files for copyright information.
472
473=cut