This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
A small refactor of checkcfgvar.pl
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
3432e5a1
SL
5[ this is a template for a new perldelta file. Any text flagged as
6XXX needs to be processed before release. ]
7
8perldelta - what is new for perl v5.15.4
760696b8 9
5438d4b8 10=head1 DESCRIPTION
5cd408a2 11
3432e5a1
SL
12This document describes differences between the 5.15.3 release and
13the 5.15.4 release.
5cd408a2 14
3432e5a1
SL
15If you are upgrading from an earlier release such as 5.15.3, first read
16L<perl5153delta>, which describes differences between 5.15.3 and
175.15.4.
062678b2 18
63ac71b9 19=head1 Notice
4185c919 20
3432e5a1 21XXX Any important notices here
0afed34d 22
63ac71b9 23=head1 Core Enhancements
0afed34d 24
3432e5a1
SL
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.
d2006265 28
3432e5a1 29[ List each enhancement as a =head2 entry ]
d6cf2367 30
63ac71b9 31=head1 Security
0afed34d 32
3432e5a1
SL
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.
46661105 36
3432e5a1 37[ List each security issue as a =head2 entry ]
46661105 38
5438d4b8 39=head1 Incompatible Changes
7818c927 40
3432e5a1 41XXX For a release on a stable branch, this section aspires to be:
e1dccc0d 42
3432e5a1
SL
43 There are no changes intentionally incompatible with 5.XXX.XXX
44 If any exist, they are bugs and reports are welcome.
7b2b001e 45
3432e5a1 46[ List each incompatible change as a =head2 entry ]
bdb9ba77 47
3432e5a1 48=head1 Deprecations
7ec04da5 49
3432e5a1
SL
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.
7ec04da5 53
3432e5a1 54[ List each deprecation as a =head2 entry ]
d6cf2367 55
3432e5a1 56=head1 Performance Enhancements
d6cf2367 57
3432e5a1
SL
58XXX Changes which enhance performance without changing behaviour go here. There
59may well be none in a stable release.
5d4ff231 60
3432e5a1 61[ List each enhancement as a =item entry ]
e46d9735 62
63ac71b9 63=over 4
e46d9735
CBW
64
65=item *
66
3432e5a1 67XXX
828d6195 68
3432e5a1 69=back
83307084 70
3432e5a1 71=head1 Modules and Pragmata
83307084 72
3432e5a1
SL
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.
83307084 80
3432e5a1 81[ Within each section, list entries as a =item entry ]
83307084 82
3432e5a1 83=head2 New Modules and Pragmata
d93f0209 84
3432e5a1 85=over 4
d93f0209 86
60527824
FR
87=item *
88
3432e5a1 89XXX
d6cf2367 90
3432e5a1 91=back
d39de893 92
3432e5a1 93=head2 Updated Modules and Pragmata
d39de893 94
3432e5a1 95=over 4
39afdc5a
CBW
96
97=item *
98
3432e5a1 99L<XXX> has been upgraded from version 0.69 to version 0.70.
666c7ca6 100
3432e5a1 101=back
666c7ca6 102
3432e5a1 103=head2 Removed Modules and Pragmata
d6cf2367 104
3432e5a1 105=over 4
d6cf2367
FC
106
107=item *
108
3432e5a1 109XXX
a9feb6cb 110
3432e5a1 111=back
a9feb6cb 112
3432e5a1 113=head1 Documentation
8fe353ef 114
3432e5a1
SL
115XXX Changes to files in F<pod/> go here. Consider grouping entries by
116file and be sure to link to the appropriate page, e.g. L<perlfunc>.
8fe353ef 117
3432e5a1 118=head2 New Documentation
8fe353ef 119
3432e5a1 120XXX Changes which create B<new> files in F<pod/> go here.
60527824 121
3432e5a1 122=head3 L<XXX>
7ac26854 123
3432e5a1 124XXX Description of the purpose of the new file here
7ac26854 125
3432e5a1 126=head2 Changes to Existing Documentation
7ac26854 127
3432e5a1
SL
128XXX Changes which significantly change existing files in F<pod/> go here.
129However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
130section.
518487b2 131
3432e5a1 132=head3 L<XXX>
daef35db 133
3432e5a1 134=over 4
83307084
SL
135
136=item *
137
3432e5a1 138XXX Description of the change here
b420b12a 139
3432e5a1 140=back
b420b12a 141
3432e5a1 142=head1 Diagnostics
83307084 143
3432e5a1
SL
144The following additions or changes have been made to diagnostic output,
145including warnings and fatal error messages. For the complete list of
146diagnostic messages, see L<perldiag>.
83307084 147
3432e5a1
SL
148XXX New or changed warnings emitted by the core's C<C> code go here. Also
149include any changes in L<perldiag> that reconcile it to the C<C> code.
83307084 150
3432e5a1
SL
151[ Within each section, list entries as a =item entry that links to perldiag,
152 e.g.
83307084 153
3432e5a1 154 =item *
d6cf2367 155
3432e5a1
SL
156 L<Invalid version object|perldiag/"Invalid version object">
157]
d6cf2367 158
3432e5a1 159=head2 New Diagnostics
d6cf2367 160
3432e5a1 161XXX Newly added diagnostic messages go here
daef35db 162
3432e5a1 163=head3 New Errors
259925f6 164
3432e5a1 165=over 4
9840cdee
CBW
166
167=item *
168
3432e5a1 169XXX L<message|perldiag/"message">
54e02335 170
63ac71b9 171=back
310913d4 172
3432e5a1 173=head3 New Warnings
dc80b0c6 174
63ac71b9 175=over 4
83b32788
CBW
176
177=item *
178
3432e5a1 179XXX L<message|perldiag/"message">
4eb81ef2 180
63ac71b9 181=back
4eb81ef2 182
3432e5a1
SL
183=head2 Changes to Existing Diagnostics
184
185XXX Changes (i.e. rewording) of diagnostic messages go here
d6cf2367
FC
186
187=over 4
188
189=item *
190
3432e5a1 191XXX Describe change here
d6cf2367
FC
192
193=back
194
3432e5a1 195=head1 Utility Changes
d6cf2367 196
3432e5a1
SL
197XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
198here. Most of these are built within the directories F<utils> and F<x2p>.
b89e9b0d 199
3432e5a1
SL
200[ List utility changes as a =head3 entry for each utility and =item
201entries for each change
202Use L<XXX> with program names to get proper documentation linking. ]
0cb4637e 203
3432e5a1 204=head3 L<XXX>
4abaf918 205
5438d4b8 206=over 4
4abaf918
Z
207
208=item *
209
3432e5a1 210XXX
8b00e523 211
e8e35311
FC
212=back
213
63ac71b9 214=head1 Configuration and Compilation
b908e258 215
3432e5a1
SL
216XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
217go here. Any other changes to the Perl build process should be listed here.
218However, any platform-specific changes should be listed in the
219L</Platform Support> section, instead.
b908e258 220
3432e5a1 221[ List changes as a =item entry ].
bbc28bfc 222
34dc2ec0 223=over 4
42a91c97 224
6693394d 225=item *
42a91c97 226
3432e5a1 227XXX
d2006265 228
3432e5a1 229=back
9cfd094e 230
3432e5a1 231=head1 Testing
9cfd094e 232
3432e5a1
SL
233XXX Any significant changes to the testing of a freshly built perl should be
234listed here. Changes which create B<new> files in F<t/> go here as do any
235large changes to the testing harness (e.g. when parallel testing was added).
236Changes to existing files in F<t/> aren't worth summarising, although the bugs
237that they represent may be covered elsewhere.
9cfd094e 238
3432e5a1 239[ List each test improvement as a =item entry ]
7c4c6e7c 240
3432e5a1 241=over 4
95f7e41f 242
83307084 243=item *
95f7e41f 244
3432e5a1 245XXX
df5b44bd 246
63ac71b9 247=back
310913d4 248
83307084 249=head1 Platform Support
df5b44bd 250
3432e5a1 251XXX Any changes to platform support should be listed in the sections below.
7818c927 252
3432e5a1
SL
253[ Within the sections, list each platform as a =item entry with specific
254changes as paragraphs below it. ]
83307084 255
3432e5a1 256=head2 New Platforms
7818c927 257
3432e5a1
SL
258XXX List any platforms that this version of perl compiles on, that previous
259versions did not. These will either be enabled by new files in the F<hints/>
260directories, or new subdirectories and F<README> files at the top level of the
261source tree.
3fdd840f 262
63ac71b9 263=over 4
7ffa7e75 264
3432e5a1 265=item XXX-some-platform
862b2c43 266
3432e5a1 267XXX
d6cf2367 268
63ac71b9 269=back
c973bd4f 270
3432e5a1 271=head2 Discontinued Platforms
fdd313f4 272
3432e5a1 273XXX List any platforms that this version of perl no longer compiles on.
c39e29ea 274
3432e5a1 275=over 4
c39e29ea 276
3432e5a1 277=item XXX-some-platform
c39e29ea 278
3432e5a1 279XXX
d6cf2367 280
3432e5a1 281=back
d6cf2367 282
3432e5a1 283=head2 Platform-Specific Notes
d6cf2367 284
3432e5a1
SL
285XXX List any changes for specific platforms. This could include configuration
286and compilation changes or changes in portability/compatibility. However,
287changes within modules for platforms should generally be listed in the
288L</Modules and Pragmata> section.
d6cf2367 289
3432e5a1 290=over 4
d6cf2367 291
3432e5a1 292=item XXX-some-platform
d6cf2367 293
3432e5a1 294XXX
d6cf2367 295
3432e5a1 296=back
d6cf2367 297
3432e5a1 298=head1 Internal Changes
d6cf2367 299
3432e5a1
SL
300XXX Changes which affect the interface available to C<XS> code go here.
301Other significant internal changes for future core maintainers should
302be noted as well.
d6cf2367 303
3432e5a1 304[ List each change as a =item entry ]
5d4ff231 305
3432e5a1 306=over 4
5d4ff231 307
a3342be3
FC
308=item *
309
3432e5a1 310XXX
60092ce4 311
3432e5a1 312=back
60092ce4 313
3432e5a1 314=head1 Selected Bug Fixes
309aab3a 315
3432e5a1
SL
316XXX Important bug fixes in the core language are summarised here.
317Bug fixes in files in F<ext/> and F<lib/> are best summarised in
318L</Modules and Pragmata>.
309aab3a 319
3432e5a1 320[ List each fix as a =item entry ]
1f26655e 321
3432e5a1 322=over 4
1f26655e 323
433644ee
FC
324=item *
325
3432e5a1 326XXX
433644ee 327
63ac71b9 328=back
bbc28bfc 329
7d3f03b7
SL
330=head1 Known Problems
331
3432e5a1
SL
332XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
333tests that had to be C<TODO>ed for the release would be noted here, unless
334they were specific to a particular platform (see below).
7d3f03b7 335
3432e5a1
SL
336This is a list of some significant unfixed bugs, which are regressions
337from either 5.XXX.XXX or 5.XXX.XXX.
338
339[ List each fix as a =item entry ]
7d3f03b7 340
3432e5a1 341=over 4
7d3f03b7
SL
342
343=item *
344
3432e5a1 345XXX
7d3f03b7 346
3432e5a1 347=back
7d3f03b7 348
3432e5a1 349=head1 Obituary
7d3f03b7 350
3432e5a1
SL
351XXX If any significant core contributor has died, we've added a short obituary
352here.
7d3f03b7 353
44691e6f
AB
354=head1 Acknowledgements
355
3432e5a1
SL
356XXX Generate this with:
357
358 perl Porting/acknowledgements.pl v5.15.3..HEAD
29cf780c 359
44691e6f
AB
360=head1 Reporting Bugs
361
362If you find what you think is a bug, you might check the articles
34dc2ec0 363recently posted to the comp.lang.perl.misc newsgroup and the perl
44691e6f
AB
364bug database at http://rt.perl.org/perlbug/ . There may also be
365information at http://www.perl.org/ , the Perl Home Page.
366
367If you believe you have an unreported bug, please run the L<perlbug>
368program included with your release. Be sure to trim your bug down
369to a tiny but sufficient test case. Your bug report, along with the
370output of C<perl -V>, will be sent off to perlbug@perl.org to be
371analysed by the Perl porting team.
372
373If the bug you are reporting has security implications, which make it
374inappropriate to send to a publicly archived mailing list, then please send
34dc2ec0 375it to perl5-security-report@perl.org. This points to a closed subscription
b4707b2a
FC
376unarchived mailing list, which includes
377all the core committers, who will be able
44691e6f
AB
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
34dc2ec0
DM
380platforms on which Perl is supported. Please only use this address for
381security issues in the Perl core, not for modules independently
44691e6f
AB
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