This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta.pod: Document "Lost precision" warning changes
[perl5.git] / pod / perldelta.pod
CommitLineData
0382c61d 1=encoding utf8
7b0fb693 2
0382c61d 3=head1 NAME
7b0fb693 4
6aeb63c3
MM
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.33.6
7b0fb693 9
0382c61d 10=head1 DESCRIPTION
7b0fb693 11
6aeb63c3 12This document describes differences between the 5.33.5 release and the 5.33.6
0382c61d 13release.
7b0fb693 14
6aeb63c3
MM
15If you are upgrading from an earlier release such as 5.33.4, first read
16L<perl5335delta>, which describes differences between 5.33.4 and 5.33.5.
5238875c 17
6aeb63c3 18=head1 Notice
ff9545d6 19
6aeb63c3 20XXX Any important notices here
54e31e24 21
6aeb63c3 22=head1 Core Enhancements
54e31e24 23
6aeb63c3
MM
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.
54e31e24 27
6aeb63c3 28[ List each enhancement as a =head2 entry ]
8d374562 29
6aeb63c3 30=head1 Security
5b68d8ff 31
6aeb63c3
MM
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.
8d374562 35
6aeb63c3 36[ List each security issue as a =head2 entry ]
8d374562 37
6aeb63c3 38=head1 Incompatible Changes
8d374562 39
6aeb63c3 40XXX For a release on a stable branch, this section aspires to be:
8d374562 41
6aeb63c3
MM
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.
8d374562 45
6aeb63c3 46[ List each incompatible change as a =head2 entry ]
8d374562 47
6aeb63c3 48=head1 Deprecations
8d374562 49
6aeb63c3 50XXX Any deprecated features, syntax, modules etc. should be listed here.
8d374562 51
6aeb63c3 52=head2 Module removals
8d374562 53
6aeb63c3 54XXX Remove this section if not applicable.
8d374562 55
6aeb63c3
MM
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.
8d374562 60
6aeb63c3
MM
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.
5b68d8ff 64
6aeb63c3
MM
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.
8d374562 69
6aeb63c3 70=over
8d374562 71
6aeb63c3 72=item XXX
d228bb8b 73
6aeb63c3
MM
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.
d228bb8b 76
6aeb63c3 77=back
d228bb8b 78
6aeb63c3 79[ List each other deprecation as a =head2 entry ]
d228bb8b 80
6aeb63c3 81=head1 Performance Enhancements
8d374562 82
6aeb63c3
MM
83XXX Changes which enhance performance without changing behaviour go here.
84There may well be none in a stable release.
85
86[ List each enhancement as an =item entry ]
d228bb8b 87
6aeb63c3 88=over 4
5b68d8ff 89
650a1ca5 90=item *
8d374562 91
6aeb63c3 92XXX
d228bb8b 93
6aeb63c3 94=back
d228bb8b 95
6aeb63c3 96=head1 Modules and Pragmata
d228bb8b 97
6aeb63c3
MM
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.
d228bb8b 103
6aeb63c3
MM
104The list of new and updated modules is modified automatically as part of
105preparing a Perl release, so the only reason to manually add entries here is if
106you're summarising the important changes in the module update. (Also, if the
107manually-added details don't match the automatically-generated ones, the
108release manager will have to investigate the situation carefully.)
d228bb8b 109
6aeb63c3 110[ Within each section, list entries as an =item entry ]
d228bb8b 111
6aeb63c3
MM
112=head2 New Modules and Pragmata
113
114=over 4
8d374562
SH
115
116=item *
117
6aeb63c3 118XXX Remove this section if not applicable.
d228bb8b 119
6aeb63c3 120=back
d228bb8b 121
6aeb63c3
MM
122=head2 Updated Modules and Pragmata
123
124=over 4
8d374562 125
650a1ca5 126=item *
8d374562 127
6aeb63c3 128L<XXX> has been upgraded from version A.xx to B.yy.
d228bb8b 129
6aeb63c3 130If there was something important to note about this change, include that here.
d228bb8b 131
6aeb63c3 132=back
d228bb8b 133
6aeb63c3 134=head2 Removed Modules and Pragmata
d228bb8b 135
6aeb63c3 136=over 4
8d374562
SH
137
138=item *
139
6aeb63c3 140XXX
8d374562 141
5b68d8ff 142=back
8d374562 143
5b68d8ff 144=head1 Documentation
8d374562 145
6aeb63c3
MM
146XXX Changes to files in F<pod/> go here. Consider grouping entries by
147file and be sure to link to the appropriate page, e.g. L<perlfunc>.
148
d228bb8b
TH
149=head2 New Documentation
150
6aeb63c3 151XXX Changes which create B<new> files in F<pod/> go here.
d228bb8b 152
6aeb63c3
MM
153=head3 L<XXX>
154
155XXX Description of the purpose of the new file here
d228bb8b 156
5b68d8ff 157=head2 Changes to Existing Documentation
4309bda4 158
5b68d8ff
SH
159We have attempted to update the documentation to reflect the changes
160listed in this document. If you find any we have missed, open an issue
161at L<https://github.com/Perl/perl5/issues>.
4309bda4 162
6aeb63c3
MM
163XXX Changes which significantly change existing files in F<pod/> go here.
164However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
165section.
166
d228bb8b
TH
167Additionally, the following selected changes have been made:
168
6aeb63c3 169=head3 L<XXX>
650a1ca5
TH
170
171=over 4
172
173=item *
174
6aeb63c3 175XXX Description of the change here
4309bda4 176
650a1ca5 177=back
5b68d8ff 178
6aeb63c3 179=head1 Diagnostics
d228bb8b 180
6aeb63c3
MM
181The following additions or changes have been made to diagnostic output,
182including warnings and fatal error messages. For the complete list of
183diagnostic messages, see L<perldiag>.
184
185XXX New or changed warnings emitted by the core's C<C> code go here. Also
186include any changes in L<perldiag> that reconcile it to the C<C> code.
187
188=head2 New Diagnostics
189
190XXX Newly added diagnostic messages go under here, separated into New Errors
191and New Warnings
192
193=head3 New Errors
d228bb8b 194
d228bb8b
TH
195=over 4
196
197=item *
198
6aeb63c3
MM
199XXX L<message|perldiag/"message">
200
201=back
202
203=head3 New Warnings
204
205=over 4
730797bb 206
6aeb63c3 207=item *
730797bb 208
6aeb63c3 209XXX L<message|perldiag/"message">
e6b76f1d 210
5b68d8ff 211=back
e6b76f1d 212
6aeb63c3
MM
213=head2 Changes to Existing Diagnostics
214
215XXX Changes (i.e. rewording) of diagnostic messages go here
f460daa0 216
5b68d8ff 217=over 4
f460daa0 218
6aeb63c3
MM
219=item *
220
221XXX Describe change here
7de4500e 222
b30a5dee
TK
223=item *
224
225L<Lost precision when %s %f by 1|perldiag/"Lost precision when %s %f by 1">
226
227This warning was only issued for positive too-large values when incrementing,
228and only for negative ones when decrementing.
229It is now issued for both of positive or negative too-large values.
230[L<GH #18333|https://github.com/Perl/perl5/issues/18333>]
231
6aeb63c3 232=back
7de4500e 233
6aeb63c3 234=head1 Utility Changes
7de4500e 235
6aeb63c3
MM
236XXX Changes to installed programs such as F<perldoc> and F<xsubpp> go here.
237Most of these are built within the directory F<utils>.
7de4500e 238
6aeb63c3
MM
239[ List utility changes as a =head2 entry for each utility and =item
240entries for each change
241Use L<XXX> with program names to get proper documentation linking. ]
7de4500e 242
6aeb63c3 243=head2 L<XXX>
7de4500e 244
6aeb63c3 245=over 4
7de4500e 246
6aeb63c3 247=item *
7de4500e 248
6aeb63c3 249XXX
d228bb8b
TH
250
251=back
252
6aeb63c3
MM
253=head1 Configuration and Compilation
254
255XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
256go here. Any other changes to the Perl build process should be listed here.
257However, any platform-specific changes should be listed in the
258L</Platform Support> section, instead.
259
260[ List changes as an =item entry ].
d228bb8b 261
d228bb8b
TH
262=over 4
263
264=item *
265
6aeb63c3
MM
266XXX
267
268=back
269
270=head1 Testing
271
272XXX Any significant changes to the testing of a freshly built perl should be
273listed here. Changes which create B<new> files in F<t/> go here as do any
274large changes to the testing harness (e.g. when parallel testing was added).
275Changes to existing files in F<t/> aren't worth summarizing, although the bugs
276that they represent may be covered elsewhere.
277
278XXX If there were no significant test changes, say this:
279
280Tests were added and changed to reflect the other additions and changes
281in this release.
282
283XXX If instead there were significant changes, say this:
284
285Tests were added and changed to reflect the other additions and
286changes in this release. Furthermore, these significant changes were
287made:
288
289[ List each test improvement as an =item entry ]
290
291=over 4
e6b76f1d 292
5c9a521b 293=item *
e6b76f1d 294
6aeb63c3 295XXX
f460daa0 296
5c9a521b 297=back
d228bb8b 298
6aeb63c3
MM
299=head1 Platform Support
300
301XXX Any changes to platform support should be listed in the sections below.
302
303[ Within the sections, list each platform as an =item entry with specific
304changes as paragraphs below it. ]
305
306=head2 New Platforms
307
308XXX List any platforms that this version of perl compiles on, that previous
309versions did not. These will either be enabled by new files in the F<hints/>
310directories, or new subdirectories and F<README> files at the top level of the
311source tree.
d228bb8b 312
2c101fc0
S
313=over 4
314
6aeb63c3 315=item XXX-some-platform
f460daa0 316
6aeb63c3 317XXX
8dc9a321 318
6aeb63c3 319=back
8dc9a321 320
6aeb63c3 321=head2 Discontinued Platforms
8dc9a321 322
6aeb63c3
MM
323XXX List any platforms that this version of perl no longer compiles on.
324
325=over 4
8dc9a321 326
6aeb63c3
MM
327=item XXX-some-platform
328
329XXX
330
331=back
332
333=head2 Platform-Specific Notes
334
335XXX List any changes for specific platforms. This could include configuration
336and compilation changes or changes in portability/compatibility. However,
337changes within modules for platforms should generally be listed in the
338L</Modules and Pragmata> section.
339
340=over 4
341
342=item XXX-some-platform
343
344XXX
345
346=back
347
348=head1 Internal Changes
349
350XXX Changes which affect the interface available to C<XS> code go here. Other
351significant internal changes for future core maintainers should be noted as
352well.
353
354[ List each change as an =item entry ]
355
356=over 4
8dc9a321
TC
357
358=item *
359
6aeb63c3
MM
360XXX
361
362=back
363
364=head1 Selected Bug Fixes
365
366XXX Important bug fixes in the core language are summarized here. Bug fixes in
367files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
368
369[ List each fix as an =item entry ]
370
371=over 4
8dc9a321
TC
372
373=item *
374
6aeb63c3 375XXX
d228bb8b
TH
376
377=back
378
379=head1 Known Problems
380
6aeb63c3
MM
381XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
382tests that had to be C<TODO>ed for the release would be noted here. Unfixed
383platform specific bugs also go here.
384
385[ List each fix as an =item entry ]
386
387=over 4
388
389=item *
390
391XXX
392
393=back
e6b76f1d 394
d228bb8b 395=head1 Errata From Previous Releases
ff9545d6 396
6aeb63c3 397=over 4
ff9545d6 398
6aeb63c3 399=item *
ff9545d6 400
6aeb63c3
MM
401XXX Add anything here that we forgot to add, or were mistaken about, in
402the perldelta of a previous release.
5b68d8ff 403
6aeb63c3 404=back
d228bb8b 405
6aeb63c3 406=head1 Obituary
5b68d8ff 407
6aeb63c3
MM
408XXX If any significant core contributor or member of the CPAN community has
409died, add a short obituary here.
d228bb8b 410
6aeb63c3 411=head1 Acknowledgements
ff9545d6 412
6aeb63c3 413XXX Generate this with:
0382c61d 414
6aeb63c3 415 perl Porting/acknowledgements.pl v5.33.5..HEAD
8424e368 416
44691e6f
AB
417=head1 Reporting Bugs
418
5b68d8ff
SH
419If you find what you think is a bug, you might check the perl bug database
420at L<https://github.com/Perl/perl5/issues>. There may also be information at
46a21c0a 421L<http://www.perl.org/>, the Perl Home Page.
44691e6f 422
8166b4e0 423If you believe you have an unreported bug, please open an issue at
0382c61d 424L<https://github.com/Perl/perl5/issues>. Be sure to trim your bug down to a
8166b4e0 425tiny but sufficient test case.
44691e6f 426
87c118b9 427If the bug you are reporting has security implications which make it
8166b4e0 428inappropriate to send to a public issue tracker, then see
5b68d8ff
SH
429L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
430for details of how to report the issue.
44691e6f 431
390ae6f9
S
432=head1 Give Thanks
433
5b68d8ff
SH
434If you wish to thank the Perl 5 Porters for the work we had done in Perl 5,
435you can do so by running the C<perlthanks> program:
390ae6f9
S
436
437 perlthanks
438
439This will send an email to the Perl 5 Porters list with your show of thanks.
440
44691e6f
AB
441=head1 SEE ALSO
442
e08634c5
SH
443The F<Changes> file for an explanation of how to view exhaustive details on
444what changed.
44691e6f
AB
445
446The F<INSTALL> file for how to build Perl.
447
448The F<README> file for general stuff.
449
450The F<Artistic> and F<Copying> files for copyright information.
451
452=cut