This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Replace perldelta.pod with the template
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
c71a852f
FR
5[ this is a template for a new perldelta file. Any text flagged as
6XXX needs to be processed before release. ]
7
1b78866d 8perldelta - what is new for perl v5.XXX.XXX
44691e6f
AB
9
10=head1 DESCRIPTION
11
1b78866d
FC
12This document describes differences between the 5.XXX.XXX release and
13the 5.XXX.XXX release.
44691e6f 14
1b78866d
FC
15If you are upgrading from an earlier release such as 5.YYY.YYY, first read
16L<perl5YYYdelta>, which describes differences between 5.ZZZ.ZZZ and
175.YYY.YYY.
44691e6f 18
c71a852f 19=head1 Notice
44691e6f 20
c71a852f 21XXX Any important notices here
b7188eb5 22
c71a852f 23=head1 Core Enhancements
b7188eb5 24
c71a852f
FR
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.
44691e6f 28
c71a852f 29[ List each enhancement as a =head2 entry ]
658a9f31 30
c71a852f 31=head1 Security
658a9f31 32
c71a852f
FR
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.
658a9f31 36
c71a852f 37[ List each security issue as a =head2 entry ]
b7188eb5 38
c71a852f 39=head1 Incompatible Changes
b7188eb5 40
c71a852f 41XXX For a release on a stable branch, this section aspires to be:
b7188eb5 42
c71a852f
FR
43 There are no changes intentionally incompatible with 5.XXX.XXX. If any
44 exist, they are bugs and reports are welcome.
3aa0ac5a 45
c71a852f 46[ List each incompatible change as a =head2 entry ]
3aa0ac5a 47
c71a852f 48=head1 Deprecations
3aa0ac5a 49
c71a852f
FR
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.
3aa0ac5a 53
c71a852f 54[ List each deprecation as a =head2 entry ]
270ca148 55
c71a852f 56=head1 Performance Enhancements
270ca148 57
c71a852f
FR
58XXX Changes which enhance performance without changing behaviour go here. There
59may well be none in a stable release.
270ca148 60
c71a852f 61[ List each enhancement as a =item entry ]
44691e6f 62
44691e6f
AB
63=over 4
64
65=item *
66
c71a852f 67XXX
44691e6f
AB
68
69=back
70
71=head1 Modules and Pragmata
72
c71a852f
FR
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.
65484cb9 80
c71a852f 81[ Within each section, list entries as a =item entry ]
b7188eb5 82
c71a852f 83=head2 New Modules and Pragmata
911a3729 84
c71a852f 85=over 4
452d0b70
DG
86
87=item *
88
c71a852f 89XXX
911a3729 90
c71a852f 91=back
c8c13991 92
c71a852f 93=head2 Updated Modules and Pragmata
c8c13991 94
c71a852f 95=over 4
44691e6f 96
f00d3350
BR
97=item *
98
c71a852f 99XXX
fe3de278 100
c71a852f 101=back
35cdccfc 102
c71a852f 103=head2 Removed Modules and Pragmata
35cdccfc 104
c71a852f 105=over 4
f5c40488
CBW
106
107=item *
108
c71a852f 109XXX
b7188eb5 110
c71a852f 111=back
b7188eb5 112
c71a852f 113=head1 Documentation
0bb35765 114
c71a852f
FR
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>.
911a3729 117
c71a852f 118=head2 New Documentation
911a3729 119
c71a852f 120XXX Changes which create B<new> files in F<pod/> go here.
58f55cb3 121
c71a852f 122=head3 L<XXX>
58f55cb3 123
c71a852f 124XXX Description of the purpose of the new file here
6b3df227 125
c71a852f 126=head2 Changes to Existing Documentation
6b3df227 127
c71a852f
FR
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.
c9989a74 131
c71a852f 132=head3 L<XXX>
c9989a74 133
c71a852f 134=over 4
b7188eb5
FC
135
136=item *
137
c71a852f 138XXX Description of the change here
911a3729 139
c71a852f 140=back
c8c13991 141
c71a852f 142=head1 Diagnostics
c8c13991 143
c71a852f
FR
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>.
f00d3350 147
c71a852f
FR
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.
c34a735e 150
c71a852f 151[ Within each section, list entries as a =item entry ]
b7188eb5 152
c71a852f 153=head2 New Diagnostics
b7188eb5 154
c71a852f 155XXX Newly added diagnostic messages go here
b7188eb5 156
c71a852f 157=over 4
c34a735e 158
05dbc6f8
KW
159=item *
160
c71a852f 161XXX
7b98b857 162
c71a852f 163=back
05dbc6f8 164
c71a852f 165=head2 Changes to Existing Diagnostics
05dbc6f8 166
c71a852f 167XXX Changes (i.e. rewording) of diagnostic messages go here
05dbc6f8
KW
168
169=over 4
170
171=item *
172
c71a852f 173XXX
05dbc6f8 174
c71a852f 175=back
05dbc6f8 176
c71a852f 177=head1 Utility Changes
05dbc6f8 178
c71a852f
FR
179XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
180here. Most of these are built within the directories F<utils> and F<x2p>.
05dbc6f8 181
c71a852f
FR
182[ List utility changes as a =head3 entry for each utility and =item
183entries for each change
184Use L<XXX> with program names to get proper documentation linking. ]
05dbc6f8 185
c71a852f 186=head3 L<XXX>
05dbc6f8 187
c71a852f 188=over 4
05dbc6f8
KW
189
190=item *
191
c71a852f 192XXX
05dbc6f8
KW
193
194=back
195
c71a852f 196=head1 Configuration and Compilation
8079ad82 197
c71a852f
FR
198XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
199go here. Any other changes to the Perl build process should be listed here.
200However, any platform-specific changes should be listed in the
201L</Platform Support> section, instead.
4d56cd4f 202
c71a852f 203[ List changes as a =item entry ].
4d56cd4f 204
c71a852f 205=over 4
05dbc6f8 206
911a3729
FC
207=item *
208
c71a852f 209XXX
911a3729 210
44691e6f
AB
211=back
212
c71a852f 213=head1 Testing
44691e6f 214
c71a852f
FR
215XXX Any significant changes to the testing of a freshly built perl should be
216listed here. Changes which create B<new> files in F<t/> go here as do any
217large changes to the testing harness (e.g. when parallel testing was added).
218Changes to existing files in F<t/> aren't worth summarising, although the bugs
219that they represent may be covered elsewhere.
44691e6f 220
c71a852f 221[ List each test improvement as a =item entry ]
9dc513c5
DG
222
223=over 4
224
225=item *
226
c71a852f 227XXX
9dc513c5
DG
228
229=back
230
c71a852f 231=head1 Platform Support
44691e6f 232
c71a852f 233XXX Any changes to platform support should be listed in the sections below.
6d96b0fe 234
c71a852f
FR
235[ Within the sections, list each platform as a =item entry with specific
236changes as paragraphs below it. ]
6d96b0fe 237
c71a852f 238=head2 New Platforms
6d96b0fe 239
c71a852f
FR
240XXX List any platforms that this version of perl compiles on, that previous
241versions did not. These will either be enabled by new files in the F<hints/>
242directories, or new subdirectories and F<README> files at the top level of the
243source tree.
6d96b0fe 244
c71a852f 245=over 4
b7188eb5 246
c71a852f 247=item XXX-some-platform
b7188eb5 248
c71a852f 249XXX
b7188eb5 250
44691e6f
AB
251=back
252
c71a852f 253=head2 Discontinued Platforms
44691e6f 254
c71a852f 255XXX List any platforms that this version of perl no longer compiles on.
44691e6f
AB
256
257=over 4
258
c71a852f 259=item XXX-some-platform
44691e6f 260
c71a852f 261XXX
b7188eb5 262
c71a852f 263=back
b7188eb5 264
c71a852f 265=head2 Platform-Specific Notes
b7188eb5 266
c71a852f
FR
267XXX List any changes for specific platforms. This could include configuration
268and compilation changes or changes in portability/compatibility. However,
269changes within modules for platforms should generally be listed in the
270L</Modules and Pragmata> section.
b7188eb5 271
c71a852f 272=over 4
44691e6f 273
c71a852f 274=item XXX-some-platform
6c9cd4a1 275
c71a852f 276XXX
6c9cd4a1 277
44691e6f
AB
278=back
279
c71a852f 280=head1 Internal Changes
44691e6f 281
c71a852f
FR
282XXX Changes which affect the interface available to C<XS> code go here.
283Other significant internal changes for future core maintainers should
284be noted as well.
44691e6f 285
c71a852f 286[ List each test improvement as a =item entry ]
44691e6f 287
c71a852f 288=over 4
b7188eb5
FC
289
290=item *
291
c71a852f 292XXX
b7188eb5 293
c71a852f 294=back
b7188eb5 295
c71a852f 296=head1 Selected Bug Fixes
b7188eb5 297
c71a852f
FR
298XXX Important bug fixes in the core language are summarised here.
299Bug fixes in files in F<ext/> and F<lib/> are best summarised in
300L</Modules and Pragmata>.
b7188eb5 301
c71a852f 302[ List each fix as a =item entry ]
b7188eb5 303
c71a852f 304=over 4
b7188eb5
FC
305
306=item *
307
c71a852f 308XXX
b7188eb5 309
c71a852f 310=back
b7188eb5 311
c71a852f 312=head1 Known Problems
44691e6f 313
c71a852f
FR
314XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
315tests that had to be C<TODO>ed for the release would be noted here, unless
316they were specific to a particular platform (see below).
994ae753 317
c71a852f
FR
318This is a list of some significant unfixed bugs, which are regressions
319from either 5.XXX.XXX or 5.XXX.XXX.
994ae753 320
c71a852f 321[ List each fix as a =item entry ]
c094a73d 322
c71a852f 323=over 4
c094a73d 324
ca767864
JD
325=item *
326
c71a852f 327XXX
ca767864 328
c71a852f 329=back
014fb485 330
c71a852f 331=head1 Obituary
014fb485 332
c71a852f
FR
333XXX If any significant core contributor has died, we've added a short obituary
334here.
44691e6f 335
44691e6f
AB
336=head1 Acknowledgements
337
c71a852f 338XXX The list of people to thank goes here.
44691e6f
AB
339
340=head1 Reporting Bugs
341
342If you find what you think is a bug, you might check the articles
343recently posted to the comp.lang.perl.misc newsgroup and the perl
344bug database at http://rt.perl.org/perlbug/ . There may also be
345information at http://www.perl.org/ , the Perl Home Page.
346
347If you believe you have an unreported bug, please run the L<perlbug>
348program included with your release. Be sure to trim your bug down
349to a tiny but sufficient test case. Your bug report, along with the
350output of C<perl -V>, will be sent off to perlbug@perl.org to be
351analysed by the Perl porting team.
352
353If the bug you are reporting has security implications, which make it
354inappropriate to send to a publicly archived mailing list, then please send
355it to perl5-security-report@perl.org. This points to a closed subscription
356unarchived mailing list, which includes all the core committers, who be able
357to help assess the impact of issues, figure out a resolution, and help
358co-ordinate the release of patches to mitigate or fix the problem across all
359platforms on which Perl is supported. Please only use this address for
360security issues in the Perl core, not for modules independently
361distributed on CPAN.
362
363=head1 SEE ALSO
364
365The F<Changes> file for an explanation of how to view exhaustive details
366on what changed.
367
368The F<INSTALL> file for how to build Perl.
369
370The F<README> file for general stuff.
371
372The F<Artistic> and F<Copying> files for copyright information.
373
374=cut