This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Calling "PRINT" on a tied STDERR can use G_DISCARD, as the result is ignored.
[perl5.git] / pod / perldelta.pod
CommitLineData
3a5c9134
CBW
1=encoding utf8
2
3=head1 NAME
4
9f7a72d0
Z
5[ this is a template for a new perldelta file. Any text flagged as
6XXX needs to be processed before release. ]
3a5c9134 7
9f7a72d0 8perldelta - what is new for perl v5.13.9
15e6cdd9 9
9f7a72d0 10=head1 DESCRIPTION
f6166f76 11
9f7a72d0
Z
12This document describes differences between the 5.13.8 release and
13the 5.13.9 release.
0d157ee2 14
9f7a72d0
Z
15If you are upgrading from an earlier release such as 5.13.7, first read
16L<perl5138delta>, which describes differences between 5.13.7 and
175.13.8.
0d157ee2 18
9f7a72d0 19=head1 Notice
0d157ee2 20
9f7a72d0 21XXX Any important notices here
0d157ee2 22
9f7a72d0 23=head1 Core Enhancements
0d157ee2 24
9f7a72d0
Z
25XXX New core language features go here. Summarise user-visible core language
26enhancements. Particularly prominent performance optimisations could go
27here, but most should go in the L</Performance Enhancements> section.
0d157ee2 28
9f7a72d0 29[ List each enhancement as a =head2 entry ]
0d157ee2 30
9f7a72d0 31=head1 Security
0d157ee2 32
9f7a72d0
Z
33XXX Any security-related notices go here. In particular, any security
34vulnerabilities closed should be noted here rather than in the
35L</Selected Bug Fixes> section.
bd8e866d 36
9f7a72d0 37[ List each security issue as a =head2 entry ]
bd8e866d 38
3a5c9134
CBW
39=head1 Incompatible Changes
40
9f7a72d0 41XXX For a release on a stable branch, this section aspires to be:
3a5c9134 42
9f7a72d0
Z
43 There are no changes intentionally incompatible with 5.XXX.XXX. If any
44 exist, they are bugs and reports are welcome.
3a5c9134 45
9f7a72d0 46[ List each incompatible change as a =head2 entry ]
d66e82e8 47
3a5c9134
CBW
48=head1 Deprecations
49
9f7a72d0
Z
50XXX Any deprecated features, syntax, modules etc. should be listed here.
51In particular, deprecated modules should be listed here even if they are
52listed as an updated module in the L</Modules and Pragmata> section.
5609d5f9 53
9f7a72d0 54[ List each deprecation as a =head2 entry ]
5609d5f9 55
9f7a72d0 56=head1 Performance Enhancements
5609d5f9 57
9f7a72d0
Z
58XXX Changes which enhance performance without changing behaviour go here. There
59may well be none in a stable release.
5609d5f9 60
9f7a72d0 61[ List each enhancement as a =item entry ]
3a5c9134
CBW
62
63=over 4
64
65=item *
66
9f7a72d0 67XXX
e1165778 68
9f7a72d0 69=back
121e1895 70
9f7a72d0 71=head1 Modules and Pragmata
2638c0ff 72
9f7a72d0
Z
73XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
74go here. If Module::CoreList is updated, generate an initial draft of the
75following sections using F<Porting/corelist-perldelta.pl>, which prints stub
76entries to STDOUT. Results can be pasted in place of the '=head2' entries
77below. A paragraph summary for important changes should then be added by hand.
78In an ideal world, dual-life modules would have a F<Changes> file that could be
79cribbed.
2638c0ff 80
9f7a72d0 81[ Within each section, list entries as a =item entry ]
17096837 82
9f7a72d0 83=head2 New Modules and Pragmata
2638c0ff 84
9f7a72d0 85=over 4
17096837 86
e1165778
Z
87=item *
88
e8a07a12
DG
89L<CPAN::Meta::YAML> 0.002 has been added as a dual-life module. It supports a
90subset of YAML sufficient for reading and writing META.yml and MYMETA.yml files
91included with CPAN distributions or generated by the module installation
92toolchain. It should not be used for any other general YAML parsing or
93generation task.
17096837 94
9f7a72d0 95=back
e1165778 96
9f7a72d0 97=head2 Updated Modules and Pragmata
f295f417 98
9f7a72d0 99=over 4
17096837 100
f295f417
FC
101=item *
102
b85802c5 103C<Encode> has been upgraded from version 2.40 to 2.42
50afc8f8
CBW
104
105=item *
106
f5d41534
CBW
107C<threads> has been upgraded from version 1.81_03 to 1.82
108
109=item *
110
111C<threads::shared> has been upgraded from version 1.35 to 1.36
112
113=item *
114
23046b7e 115C<Time::Local> has been upgraded from version 1.1901_01 to 1.2000.
17096837 116
9f7a72d0 117=back
e1165778 118
9f7a72d0 119=head2 Removed Modules and Pragmata
b373eab8 120
9f7a72d0 121=over 4
b373eab8
FC
122
123=item *
124
9f7a72d0 125XXX
b6ae81ab 126
9f7a72d0 127=back
ca88a729 128
9f7a72d0 129=head1 Documentation
17096837 130
9f7a72d0
Z
131XXX Changes to files in F<pod/> go here. Consider grouping entries by
132file and be sure to link to the appropriate page, e.g. L<perlfunc>.
b6ae81ab 133
9f7a72d0 134=head2 New Documentation
e1165778 135
9f7a72d0 136XXX Changes which create B<new> files in F<pod/> go here.
17096837 137
9f7a72d0 138=head3 L<XXX>
e1165778 139
9f7a72d0 140XXX Description of the purpose of the new file here
e1165778 141
9f7a72d0 142=head2 Changes to Existing Documentation
17096837 143
9f7a72d0
Z
144XXX Changes which significantly change existing files in F<pod/> go here.
145However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
146section.
e1165778 147
9f7a72d0 148=head3 L<XXX>
d4238815 149
9f7a72d0 150=over 4
17096837 151
d4238815
FC
152=item *
153
9f7a72d0 154XXX Description of the change here
e1165778 155
9f7a72d0 156=back
17096837 157
9f7a72d0 158=head1 Diagnostics
17096837 159
9f7a72d0
Z
160The following additions or changes have been made to diagnostic output,
161including warnings and fatal error messages. For the complete list of
162diagnostic messages, see L<perldiag>.
e1165778 163
9f7a72d0
Z
164XXX New or changed warnings emitted by the core's C<C> code go here. Also
165include any changes in L<perldiag> that reconcile it to the C<C> code.
68adb2b0 166
9f7a72d0 167[ Within each section, list entries as a =item entry ]
17096837 168
9f7a72d0 169=head2 New Diagnostics
3a5c9134 170
9f7a72d0 171XXX Newly added diagnostic messages go here
17096837 172
9f7a72d0 173=over 4
17096837 174
c2e0289e
FC
175=item *
176
9f7a72d0 177XXX
17096837 178
9f7a72d0 179=back
e6f1cc4d 180
9f7a72d0 181=head2 Changes to Existing Diagnostics
e1165778 182
9f7a72d0 183XXX Changes (i.e. rewording) of diagnostic messages go here
17096837 184
9f7a72d0 185=over 4
17096837 186
e1165778
Z
187=item *
188
9f7a72d0 189XXX
17096837 190
3a5c9134
CBW
191=back
192
9f7a72d0 193=head1 Utility Changes
e1165778 194
9f7a72d0
Z
195XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
196here. Most of these are built within the directories F<utils> and F<x2p>.
e1165778 197
9f7a72d0
Z
198[ List utility changes as a =head3 entry for each utility and =item
199entries for each change
200Use L<XXX> with program names to get proper documentation linking. ]
e1165778 201
9f7a72d0 202=head3 L<XXX>
e1165778 203
9f7a72d0 204=over 4
e1165778
Z
205
206=item *
207
9f7a72d0 208XXX
e1165778 209
9f7a72d0 210=back
e1165778 211
9f7a72d0 212=head1 Configuration and Compilation
e1165778 213
9f7a72d0
Z
214XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
215go here. Any other changes to the Perl build process should be listed here.
216However, any platform-specific changes should be listed in the
217L</Platform Support> section, instead.
e1165778 218
9f7a72d0 219[ List changes as a =item entry ].
e1165778 220
9f7a72d0 221=over 4
3a5c9134
CBW
222
223=item *
224
9f7a72d0 225XXX
3a5c9134
CBW
226
227=back
228
9f7a72d0 229=head1 Testing
3a5c9134 230
9f7a72d0
Z
231XXX Any significant changes to the testing of a freshly built perl should be
232listed here. Changes which create B<new> files in F<t/> go here as do any
233large changes to the testing harness (e.g. when parallel testing was added).
234Changes to existing files in F<t/> aren't worth summarising, although the bugs
235that they represent may be covered elsewhere.
3a5c9134 236
9f7a72d0 237[ List each test improvement as a =item entry ]
3a5c9134 238
3a5c9134
CBW
239=over 4
240
241=item *
242
9f7a72d0 243XXX
3a5c9134
CBW
244
245=back
246
9f7a72d0 247=head1 Platform Support
3a5c9134 248
9f7a72d0 249XXX Any changes to platform support should be listed in the sections below.
3a5c9134 250
9f7a72d0
Z
251[ Within the sections, list each platform as a =item entry with specific
252changes as paragraphs below it. ]
3a5c9134 253
9f7a72d0 254=head2 New Platforms
3a5c9134 255
9f7a72d0
Z
256XXX List any platforms that this version of perl compiles on, that previous
257versions did not. These will either be enabled by new files in the F<hints/>
258directories, or new subdirectories and F<README> files at the top level of the
259source tree.
3a5c9134 260
3a5c9134
CBW
261=over 4
262
9f7a72d0 263=item XXX-some-platform
3a5c9134 264
9f7a72d0 265XXX
51bed910 266
3a5c9134
CBW
267=back
268
9f7a72d0
Z
269=head2 Discontinued Platforms
270
271XXX List any platforms that this version of perl no longer compiles on.
3a5c9134 272
3a5c9134
CBW
273=over 4
274
9f7a72d0 275=item XXX-some-platform
3a5c9134 276
9f7a72d0 277XXX
3a5c9134
CBW
278
279=back
280
3a5c9134
CBW
281=head2 Platform-Specific Notes
282
9f7a72d0
Z
283XXX List any changes for specific platforms. This could include configuration
284and compilation changes or changes in portability/compatibility. However,
285changes within modules for platforms should generally be listed in the
286L</Modules and Pragmata> section.
3a5c9134 287
9f7a72d0 288=over 4
3a5c9134 289
9f7a72d0 290=item XXX-some-platform
fb3a2d89 291
9f7a72d0 292XXX
fb3a2d89 293
3a5c9134
CBW
294=back
295
296=head1 Internal Changes
297
9f7a72d0
Z
298XXX Changes which affect the interface available to C<XS> code go here.
299Other significant internal changes for future core maintainers should
300be noted as well.
3a5c9134 301
9f7a72d0 302[ List each test improvement as a =item entry ]
3a5c9134 303
9f7a72d0 304=over 4
3a5c9134 305
c61b6d0f
FC
306=item *
307
0a0e3cc5
NC
308The opcode bodies for C<chop> and C<chomp> and for C<schop> and C<schomp> have
309been merged. The implementation functions C<Perl_do_chop()> and
310C<Perl_do_chomp()>, never part of the public API, have been merged and moved to
311a static function in F<pp.c>. This shrinks the perl binary slightly, and should
312not affect any code outside the core (unless it is relying on the order of side
313effects when C<chomp> is passed a I<list> of values).
c61b6d0f 314
3a5c9134
CBW
315=back
316
317=head1 Selected Bug Fixes
318
9f7a72d0
Z
319XXX Important bug fixes in the core language are summarised here.
320Bug fixes in files in F<ext/> and F<lib/> are best summarised in
321L</Modules and Pragmata>.
b373eab8 322
9f7a72d0 323[ List each fix as a =item entry ]
b373eab8 324
9f7a72d0 325=over 4
4c9d53d5 326
0c7420e7
FC
327=item *
328
9f7a72d0 329XXX
0c7420e7 330
9f7a72d0 331=back
460c4bfb 332
9f7a72d0 333=head1 Known Problems
460c4bfb 334
9f7a72d0
Z
335XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
336tests that had to be C<TODO>ed for the release would be noted here, unless
337they were specific to a particular platform (see below).
26de4ac8 338
9f7a72d0
Z
339This is a list of some significant unfixed bugs, which are regressions
340from either 5.XXX.XXX or 5.XXX.XXX.
26de4ac8 341
9f7a72d0 342[ List each fix as a =item entry ]
ab7fb400 343
9f7a72d0 344=over 4
ab7fb400 345
836d5805
Z
346=item *
347
9f7a72d0 348XXX
836d5805 349
3a5c9134
CBW
350=back
351
9f7a72d0 352=head1 Obituary
3a5c9134 353
9f7a72d0
Z
354XXX If any significant core contributor has died, we've added a short obituary
355here.
b0c3724f 356
9f7a72d0 357=head1 Acknowledgements
b0c3724f 358
9f7a72d0 359XXX The list of people to thank goes here.
3a5c9134
CBW
360
361=head1 Reporting Bugs
362
363If you find what you think is a bug, you might check the articles
364recently posted to the comp.lang.perl.misc newsgroup and the perl
365bug database at http://rt.perl.org/perlbug/ . There may also be
366information at http://www.perl.org/ , the Perl Home Page.
367
368If you believe you have an unreported bug, please run the L<perlbug>
369program included with your release. Be sure to trim your bug down
370to a tiny but sufficient test case. Your bug report, along with the
371output of C<perl -V>, will be sent off to perlbug@perl.org to be
372analysed by the Perl porting team.
373
374If the bug you are reporting has security implications, which make it
375inappropriate to send to a publicly archived mailing list, then please send
376it to perl5-security-report@perl.org. This points to a closed subscription
377unarchived mailing list, which includes all the core committers, who be able
378to help assess the impact of issues, figure out a resolution, and help
379co-ordinate the release of patches to mitigate or fix the problem across all
380platforms on which Perl is supported. Please only use this address for
381security issues in the Perl core, not for modules independently
382distributed on CPAN.
383
384=head1 SEE ALSO
385
386The F<Changes> file for an explanation of how to view exhaustive details
387on what changed.
388
389The F<INSTALL> file for how to build Perl.
390
391The F<README> file for general stuff.
392
393The F<Artistic> and F<Copying> files for copyright information.
394
395=cut