This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta for 273df2b1892a ... 273df2b1892
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
af8a293f
SL
5[ this is a template for a new perldelta file. Any text flagged as XXX needs
6to be processed before release. ]
7
8perldelta - what is new for perl v5.23.8
eabfc7bc 9
2cfe9b50 10=head1 DESCRIPTION
eabfc7bc 11
af8a293f 12This document describes differences between the 5.23.7 release and the 5.23.8
2cfe9b50 13release.
eabfc7bc 14
af8a293f
SL
15If you are upgrading from an earlier release such as 5.23.6, first read
16L<perl5237delta>, which describes differences between 5.23.6 and 5.23.7.
394609a5 17
af8a293f 18=head1 Notice
6b659339 19
af8a293f 20XXX Any important notices here
6b659339 21
af8a293f 22=head1 Core Enhancements
a8c28920 23
af8a293f
SL
24XXX New core language features go here. Summarize user-visible core language
25enhancements. Particularly prominent performance optimisations could go
26here, but most should go in the L</Performance Enhancements> section.
7feb15ec 27
af8a293f 28[ List each enhancement as a =head2 entry ]
7feb15ec 29
af8a293f 30=head1 Security
a8c28920 31
af8a293f
SL
32XXX Any security-related notices go here. In particular, any security
33vulnerabilities closed should be noted here rather than in the
34L</Selected Bug Fixes> section.
a8c28920 35
af8a293f 36[ List each security issue as a =head2 entry ]
a8c28920 37
c0883d63 38=head1 Incompatible Changes
a8c28920 39
af8a293f 40XXX For a release on a stable branch, this section aspires to be:
f1f6961f 41
af8a293f
SL
42 There are no changes intentionally incompatible with 5.XXX.XXX
43 If any exist, they are bugs, and we request that you submit a
44 report. See L</Reporting Bugs> below.
f1f6961f 45
af8a293f 46[ List each incompatible change as a =head2 entry ]
1257ab89 47
af8a293f 48=head1 Deprecations
d9d208b8 49
af8a293f 50XXX Any deprecated features, syntax, modules etc. should be listed here.
d9d208b8 51
af8a293f 52=head2 Module removals
a7e63acd 53
af8a293f 54XXX Remove this section if inapplicable.
a7e63acd 55
af8a293f
SL
56The following modules will be removed from the core distribution in a
57future release, and will at that time need to be installed from CPAN.
58Distributions on CPAN which require these modules will need to list them as
59prerequisites.
a7e63acd 60
af8a293f
SL
61The core versions of these modules will now issue C<"deprecated">-category
62warnings to alert you to this fact. To silence these deprecation warnings,
63install the modules in question from CPAN.
a7e63acd 64
af8a293f
SL
65Note that these are (with rare exceptions) fine modules that you are encouraged
66to continue to use. Their disinclusion from core primarily hinges on their
67necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
68not usually on concerns over their design.
a7e63acd 69
af8a293f 70=over
a7e63acd 71
af8a293f 72=item XXX
a7e63acd 73
af8a293f
SL
74XXX Note that deprecated modules should be listed here even if they are listed
75as an updated module in the L</Modules and Pragmata> section.
a7e63acd 76
af8a293f 77=back
a7e63acd 78
af8a293f 79[ List each other deprecation as a =head2 entry ]
a7e63acd 80
af8a293f 81=head1 Performance Enhancements
a7e63acd 82
af8a293f
SL
83XXX Changes which enhance performance without changing behaviour go here.
84There may well be none in a stable release.
a7e63acd 85
af8a293f 86[ List each enhancement as a =item entry ]
a7e63acd 87
af8a293f 88=over 4
a7e63acd
SL
89
90=item *
91
af8a293f 92XXX
a7e63acd 93
af8a293f 94=back
a7e63acd 95
af8a293f 96=head1 Modules and Pragmata
a7e63acd 97
af8a293f
SL
98XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
99go here. If Module::CoreList is updated, generate an initial draft of the
100following sections using F<Porting/corelist-perldelta.pl>. A paragraph summary
101for important changes should then be added by hand. In an ideal world,
102dual-life modules would have a F<Changes> file that could be cribbed.
a7e63acd 103
af8a293f 104[ Within each section, list entries as a =item entry ]
a7e63acd 105
af8a293f 106=head2 New Modules and Pragmata
a7e63acd 107
af8a293f 108=over 4
a7e63acd
SL
109
110=item *
111
af8a293f 112XXX
a7e63acd 113
af8a293f 114=back
fd12b912 115
af8a293f 116=head2 Updated Modules and Pragmata
f909f9f7 117
af8a293f 118=over 4
a7e63acd
SL
119
120=item *
121
af8a293f 122L<XXX> has been upgraded from version A.xx to B.yy.
a7e63acd 123
af8a293f 124=back
a7e63acd 125
af8a293f 126=head2 Removed Modules and Pragmata
a7e63acd 127
af8a293f 128=over 4
a7e63acd
SL
129
130=item *
131
af8a293f 132XXX
f909f9f7 133
054383b6 134=back
d9d208b8 135
c0883d63
SL
136=head1 Documentation
137
af8a293f
SL
138XXX Changes to files in F<pod/> go here. Consider grouping entries by
139file and be sure to link to the appropriate page, e.g. L<perlfunc>.
c0883d63 140
af8a293f 141=head2 New Documentation
d9d208b8 142
af8a293f 143XXX Changes which create B<new> files in F<pod/> go here.
d9d208b8 144
af8a293f 145=head3 L<XXX>
d9d208b8 146
af8a293f 147XXX Description of the purpose of the new file here
523c5db4 148
af8a293f 149=head2 Changes to Existing Documentation
d9d208b8 150
af8a293f
SL
151XXX Changes which significantly change existing files in F<pod/> go here.
152However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
153section.
154
155=head3 L<XXX>
d9d208b8 156
c0883d63 157=over 4
fd12b912 158
c0883d63 159=item *
fd12b912 160
af8a293f 161XXX Description of the change here
fd12b912 162
c0883d63 163=back
d9d208b8 164
af8a293f 165=head1 Diagnostics
d9d208b8 166
af8a293f
SL
167The following additions or changes have been made to diagnostic output,
168including warnings and fatal error messages. For the complete list of
169diagnostic messages, see L<perldiag>.
d9d208b8 170
af8a293f
SL
171XXX New or changed warnings emitted by the core's C<C> code go here. Also
172include any changes in L<perldiag> that reconcile it to the C<C> code.
fd12b912 173
af8a293f 174=head2 New Diagnostics
fd12b912 175
af8a293f
SL
176XXX Newly added diagnostic messages go under here, separated into New Errors
177and New Warnings
fd12b912 178
af8a293f 179=head3 New Errors
c0883d63 180
af8a293f 181=over 4
fd12b912 182
c0883d63 183=item *
d9d208b8 184
af8a293f 185XXX L<message|perldiag/"message">
d9d208b8 186
c0883d63 187=back
fd12b912 188
af8a293f 189=head3 New Warnings
fd12b912 190
054383b6 191=over 4
fd12b912
DG
192
193=item *
194
af8a293f 195XXX L<message|perldiag/"message">
a8c28920 196
6c83150b 197=back
a8c28920 198
af8a293f
SL
199=head2 Changes to Existing Diagnostics
200
201XXX Changes (i.e. rewording) of diagnostic messages go here
d9d208b8
DG
202
203=over 4
204
205=item *
206
af8a293f 207XXX Describe change here
d9d208b8
DG
208
209=back
210
af8a293f 211=head1 Utility Changes
c0883d63 212
af8a293f
SL
213XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
214Most of these are built within the directory F<utils>.
054383b6 215
af8a293f
SL
216[ List utility changes as a =head2 entry for each utility and =item
217entries for each change
218Use L<XXX> with program names to get proper documentation linking. ]
219
220=head2 L<XXX>
a8c28920 221
6c83150b 222=over 4
a8c28920
A
223
224=item *
225
af8a293f 226XXX
d9d208b8
DG
227
228=back
229
054383b6 230=head1 Configuration and Compilation
a8c28920 231
af8a293f
SL
232XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
233go here. Any other changes to the Perl build process should be listed here.
234However, any platform-specific changes should be listed in the
235L</Platform Support> section, instead.
236
237[ List changes as a =item entry ].
238
6c83150b 239=over 4
a8c28920 240
6c83150b 241=item *
a8c28920 242
af8a293f 243XXX
054383b6 244
af8a293f
SL
245=back
246
247=head1 Testing
248
249XXX Any significant changes to the testing of a freshly built perl should be
250listed here. Changes which create B<new> files in F<t/> go here as do any
251large changes to the testing harness (e.g. when parallel testing was added).
252Changes to existing files in F<t/> aren't worth summarizing, although the bugs
253that they represent may be covered elsewhere.
f83db990 254
af8a293f
SL
255[ List each test improvement as a =item entry ]
256
257=over 4
eabfc7bc 258
0dafb1ce 259=item *
eabfc7bc 260
af8a293f 261XXX
5ea25977 262
b3c290c2
TC
263=item *
264
265The GNU Make makefile for Win32 now supports parallel builds. [perl #126632]
266
267=item *
268
269You can now build perl with MSVC++ on Win32 using GNU Make. [perl #126632]
270
b26bd9b0 271=back
5ea25977 272
6c83150b
A
273=head1 Platform Support
274
af8a293f
SL
275XXX Any changes to platform support should be listed in the sections below.
276
277[ Within the sections, list each platform as a =item entry with specific
278changes as paragraphs below it. ]
279
280=head2 New Platforms
281
282XXX List any platforms that this version of perl compiles on, that previous
283versions did not. These will either be enabled by new files in the F<hints/>
284directories, or new subdirectories and F<README> files at the top level of the
285source tree.
0517ed38 286
6c83150b 287=over 4
0517ed38 288
af8a293f 289=item XXX-some-platform
b3d7d865 290
af8a293f 291XXX
b3d7d865 292
af8a293f 293=back
d9d208b8 294
af8a293f 295=head2 Discontinued Platforms
48fbd301 296
af8a293f 297XXX List any platforms that this version of perl no longer compiles on.
48fbd301 298
af8a293f 299=over 4
f4240379 300
af8a293f 301=item XXX-some-platform
f4240379 302
af8a293f 303XXX
6c83150b 304
1d6d94ad
DG
305=back
306
af8a293f
SL
307=head2 Platform-Specific Notes
308
309XXX List any changes for specific platforms. This could include configuration
310and compilation changes or changes in portability/compatibility. However,
311changes within modules for platforms should generally be listed in the
312L</Modules and Pragmata> section.
d89ea360 313
054383b6 314=over 4
0efe3111 315
af8a293f 316=item XXX-some-platform
0efe3111 317
af8a293f 318XXX
206e921d 319
af8a293f 320=back
206e921d 321
af8a293f 322=head1 Internal Changes
d9d208b8 323
af8a293f
SL
324XXX Changes which affect the interface available to C<XS> code go here. Other
325significant internal changes for future core maintainers should be noted as
326well.
327
328[ List each change as a =item entry ]
d9d208b8 329
af8a293f 330=over 4
d9d208b8
DG
331
332=item *
333
af8a293f 334XXX
d9d208b8 335
d89ea360
DD
336=back
337
b26bd9b0 338=head1 Selected Bug Fixes
eabfc7bc 339
af8a293f
SL
340XXX Important bug fixes in the core language are summarized here. Bug fixes in
341files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
acedda6e 342
af8a293f 343[ List each fix as a =item entry ]
bc5be890 344
af8a293f 345=over 4
acedda6e 346
c7052e96
TC
347=item *
348
2ff6ae51 349Line numbers larger than 2**31-1 but less than 2**32 are no longer
d15ad02e 350returned by caller() as negative numbers. [perl #126991]
c7052e96 351
2ff6ae51
TC
352=item *
353
354C<< unless ( I<assignment> ) >> now properly warns when syntax
355warnings are enabled. [perl #127122]
356
af8a293f 357=back
3c84cb84 358
af8a293f 359=head1 Known Problems
d005d3c3 360
af8a293f
SL
361XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
362tests that had to be C<TODO>ed for the release would be noted here. Unfixed
363platform specific bugs also go here.
d43e55a3 364
af8a293f 365[ List each fix as a =item entry ]
e685831a 366
af8a293f 367=over 4
e685831a 368
0701ff00
JH
369=item *
370
af8a293f 371XXX
0701ff00 372
054383b6 373=back
d9d208b8 374
af8a293f 375=head1 Errata From Previous Releases
0057cacf
SL
376
377=over 4
378
379=item *
380
af8a293f
SL
381XXX Add anything here that we forgot to add, or were mistaken about, in
382the perldelta of a previous release.
0057cacf
SL
383
384=back
385
af8a293f 386=head1 Obituary
5a74572e 387
af8a293f
SL
388XXX If any significant core contributor has died, we've added a short obituary
389here.
5a74572e 390
af8a293f 391=head1 Acknowledgements
e1ad135d 392
af8a293f 393XXX Generate this with:
e1ad135d 394
af8a293f 395 perl Porting/acknowledgements.pl v5.23.7..HEAD
f5b73711 396
44691e6f
AB
397=head1 Reporting Bugs
398
e08634c5
SH
399If you find what you think is a bug, you might check the articles recently
400posted to the comp.lang.perl.misc newsgroup and the perl bug database at
fc4c3cec
RS
401L<https://rt.perl.org/> . There may also be information at
402L<http://www.perl.org/> , the Perl Home Page.
44691e6f 403
e08634c5
SH
404If you believe you have an unreported bug, please run the L<perlbug> program
405included with your release. Be sure to trim your bug down to a tiny but
406sufficient test case. Your bug report, along with the output of C<perl -V>,
407will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
44691e6f
AB
408
409If the bug you are reporting has security implications, which make it
e08634c5
SH
410inappropriate to send to a publicly archived mailing list, then please send it
411to perl5-security-report@perl.org. This points to a closed subscription
412unarchived mailing list, which includes all the core committers, who will be
413able to help assess the impact of issues, figure out a resolution, and help
f9001595 414co-ordinate the release of patches to mitigate or fix the problem across all
e08634c5
SH
415platforms on which Perl is supported. Please only use this address for
416security issues in the Perl core, not for modules independently distributed on
417CPAN.
44691e6f
AB
418
419=head1 SEE ALSO
420
e08634c5
SH
421The F<Changes> file for an explanation of how to view exhaustive details on
422what changed.
44691e6f
AB
423
424The F<INSTALL> file for how to build Perl.
425
426The F<README> file for general stuff.
427
428The F<Artistic> and F<Copying> files for copyright information.
429
430=cut