This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Reduce SelectSaver memory footprint
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
262514fd
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.25.6
eabfc7bc 9
2cfe9b50 10=head1 DESCRIPTION
eabfc7bc 11
262514fd 12This document describes differences between the 5.25.5 release and the 5.25.6
4b8803f0 13release.
f3ed8cbf 14
262514fd
SL
15If you are upgrading from an earlier release such as 5.25.4, first read
16L<perl5255delta>, which describes differences between 5.25.4 and 5.25.5.
17
18=head1 Notice
19
20XXX Any important notices here
21
22=head1 Core Enhancements
23
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.
27
28[ List each enhancement as a =head2 entry ]
70f2a509 29
be293293 30=head1 Security
28aa987e 31
262514fd
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.
5c0226f4 35
262514fd 36[ List each security issue as a =head2 entry ]
28aa987e 37
262514fd 38=head1 Incompatible Changes
ce6646d7 39
262514fd
SL
40XXX For a release on a stable branch, this section aspires to be:
41
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.
45
46[ List each incompatible change as a =head2 entry ]
47
48=head1 Deprecations
49
50XXX Any deprecated features, syntax, modules etc. should be listed here.
51
52=head2 Module removals
53
54XXX Remove this section if inapplicable.
55
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.
60
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.
64
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.
69
70=over
71
72=item XXX
73
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.
76
77=back
78
79[ List each other deprecation as a =head2 entry ]
80
81=head1 Performance Enhancements
82
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 a =item entry ]
ce6646d7 87
be293293 88=over 4
ce6646d7 89
96f085e1
CBW
90=item *
91
262514fd 92XXX
2f8fe46a 93
262514fd 94=back
ce6646d7 95
262514fd 96=head1 Modules and Pragmata
2c4879e2 97
262514fd
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.
2c4879e2 103
262514fd 104[ Within each section, list entries as a =item entry ]
1608ed20 105
262514fd
SL
106=head2 New Modules and Pragmata
107
108=over 4
1608ed20
SL
109
110=item *
111
262514fd 112XXX
1608ed20 113
262514fd 114=back
1608ed20 115
262514fd
SL
116=head2 Updated Modules and Pragmata
117
118=over 4
1608ed20
SL
119
120=item *
121
262514fd 122L<XXX> has been upgraded from version A.xx to B.yy.
1608ed20 123
26d58bfe
N
124=item *
125
126L<SelectSaver> has been upgraded from version 1.02 to 1.03.
127
262514fd 128=back
ce6646d7 129
262514fd 130=head2 Removed Modules and Pragmata
ce6646d7 131
262514fd 132=over 4
c0ea3294 133
96f085e1 134=item *
ce6646d7 135
262514fd 136XXX
ce6646d7 137
be293293 138=back
8c3f6b0b 139
be293293 140=head1 Documentation
8c3f6b0b 141
262514fd
SL
142XXX Changes to files in F<pod/> go here. Consider grouping entries by
143file and be sure to link to the appropriate page, e.g. L<perlfunc>.
144
145=head2 New Documentation
146
147XXX Changes which create B<new> files in F<pod/> go here.
148
149=head3 L<XXX>
150
151XXX Description of the purpose of the new file here
152
be293293 153=head2 Changes to Existing Documentation
e388eafa 154
262514fd
SL
155XXX Changes which significantly change existing files in F<pod/> go here.
156However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
157section.
158
159=head3 L<XXX>
fb0f05f2 160
be293293 161=over 4
e388eafa 162
96f085e1 163=item *
e388eafa 164
262514fd 165XXX Description of the change here
2c4879e2 166
be293293 167=back
96f085e1 168
262514fd
SL
169=head1 Diagnostics
170
171The following additions or changes have been made to diagnostic output,
172including warnings and fatal error messages. For the complete list of
173diagnostic messages, see L<perldiag>.
174
175XXX New or changed warnings emitted by the core's C<C> code go here. Also
176include any changes in L<perldiag> that reconcile it to the C<C> code.
177
178=head2 New Diagnostics
179
180XXX Newly added diagnostic messages go under here, separated into New Errors
181and New Warnings
182
183=head3 New Errors
96f085e1 184
efdbe372 185=over 4
bf1007bc 186
96f085e1 187=item *
bf1007bc 188
262514fd 189XXX L<message|perldiag/"message">
0302547a 190
228bfab9 191=back
18940b1f 192
262514fd 193=head3 New Warnings
6674eaad 194
be293293 195=over 4
6674eaad 196
262514fd 197=item *
c0ea3294 198
262514fd 199XXX L<message|perldiag/"message">
483efd0a 200
262514fd
SL
201=back
202
203=head2 Changes to Existing Diagnostics
483efd0a 204
262514fd
SL
205XXX Changes (i.e. rewording) of diagnostic messages go here
206
207=over 4
483efd0a 208
2c4879e2
SL
209=item *
210
262514fd 211XXX Describe change here
2c4879e2
SL
212
213=back
214
262514fd 215=head1 Utility Changes
2c4879e2 216
262514fd
SL
217XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
218Most of these are built within the directory F<utils>.
2c4879e2 219
262514fd
SL
220[ List utility changes as a =head2 entry for each utility and =item
221entries for each change
222Use L<XXX> with program names to get proper documentation linking. ]
223
224=head2 L<XXX>
2c4879e2
SL
225
226=over 4
227
228=item *
229
262514fd 230XXX
2c4879e2 231
483efd0a 232=back
866373cb 233
262514fd 234=head1 Configuration and Compilation
866373cb 235
262514fd
SL
236XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
237go here. Any other changes to the Perl build process should be listed here.
238However, any platform-specific changes should be listed in the
239L</Platform Support> section, instead.
240
241[ List changes as a =item entry ].
97fd6880 242
be293293 243=over 4
d5dece5d 244
7c26c031
FC
245=item *
246
262514fd 247XXX
07cfdfcc 248
262514fd 249=back
2c4879e2 250
262514fd 251=head1 Testing
2c4879e2 252
262514fd
SL
253XXX Any significant changes to the testing of a freshly built perl should be
254listed here. Changes which create B<new> files in F<t/> go here as do any
255large changes to the testing harness (e.g. when parallel testing was added).
256Changes to existing files in F<t/> aren't worth summarizing, although the bugs
257that they represent may be covered elsewhere.
07cfdfcc 258
262514fd 259[ List each test improvement as a =item entry ]
27368b5c 260
be293293 261=over 4
4b99cb86 262
c61c589c
FC
263=item *
264
262514fd 265XXX
7d897bd0 266
262514fd 267=back
046a081f 268
262514fd 269=head1 Platform Support
046a081f 270
262514fd 271XXX Any changes to platform support should be listed in the sections below.
80d3c92b 272
262514fd
SL
273[ Within the sections, list each platform as a =item entry with specific
274changes as paragraphs below it. ]
80d3c92b 275
262514fd 276=head2 New Platforms
190c14e6 277
01f745b3 278A sub containing a "forward" declaration with the same name (e.g.,
190c14e6
FC
279C<sub c { sub c; }>) could sometimes crash or loop infinitely. [perl
280#129090]
281
262514fd 282=over 4
abd589f7 283
262514fd 284=item XXX-some-platform
abd589f7 285
262514fd 286XXX
2c4879e2 287
262514fd 288=back
2c4879e2 289
262514fd 290=head2 Discontinued Platforms
2c4879e2 291
262514fd 292XXX List any platforms that this version of perl no longer compiles on.
2c4879e2 293
262514fd 294=over 4
2c4879e2 295
262514fd 296=item XXX-some-platform
2c4879e2 297
262514fd 298XXX
2c4879e2 299
262514fd 300=back
2c4879e2 301
262514fd 302=head2 Platform-Specific Notes
2c4879e2 303
262514fd
SL
304XXX List any changes for specific platforms. This could include configuration
305and compilation changes or changes in portability/compatibility. However,
306changes within modules for platforms should generally be listed in the
307L</Modules and Pragmata> section.
2c4879e2 308
262514fd 309=over 4
2ad45e6f 310
262514fd 311=item XXX-some-platform
2ad45e6f 312
262514fd 313XXX
1608ed20 314
262514fd 315=back
1608ed20 316
262514fd 317=head1 Internal Changes
1608ed20 318
262514fd
SL
319XXX Changes which affect the interface available to C<XS> code go here. Other
320significant internal changes for future core maintainers should be noted as
321well.
1608ed20 322
262514fd 323[ List each change as a =item entry ]
1608ed20 324
262514fd 325=over 4
1608ed20 326
1608ed20
SL
327=item *
328
8944d2e9
DM
329The C<PADOFFSET> type has changed from being unsigned to signed, and
330several pad-related variables such as C<PL_padix> have changed from being
331of type C<I32> to type C<PADOFFSET>.
262514fd
SL
332
333=back
334
335=head1 Selected Bug Fixes
336
337XXX Important bug fixes in the core language are summarized here. Bug fixes in
338files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
339
340[ List each fix as a =item entry ]
341
342=over 4
1608ed20
SL
343
344=item *
345
262514fd
SL
346XXX
347
348=back
349
350=head1 Known Problems
351
352XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
353tests that had to be C<TODO>ed for the release would be noted here. Unfixed
354platform specific bugs also go here.
355
356[ List each fix as a =item entry ]
357
358=over 4
1608ed20
SL
359
360=item *
361
262514fd 362XXX
1608ed20 363
be293293 364=back
7d897bd0 365
262514fd 366=head1 Errata From Previous Releases
24528e8e 367
262514fd 368=over 4
24528e8e 369
262514fd 370=item *
24528e8e 371
262514fd
SL
372XXX Add anything here that we forgot to add, or were mistaken about, in
373the perldelta of a previous release.
1a21f19e 374
262514fd 375=back
1a21f19e 376
262514fd 377=head1 Obituary
1a21f19e 378
262514fd
SL
379XXX If any significant core contributor has died, we've added a short obituary
380here.
1a21f19e 381
262514fd 382=head1 Acknowledgements
1a21f19e 383
262514fd 384XXX Generate this with:
24528e8e 385
262514fd 386 perl Porting/acknowledgements.pl v5.25.5..HEAD
f5b73711 387
44691e6f
AB
388=head1 Reporting Bugs
389
c0ea3294
SH
390If you find what you think is a bug, you might check the perl bug database
391at L<https://rt.perl.org/> . There may also be information at
4b8803f0 392L<http://www.perl.org/> , the Perl Home Page.
44691e6f 393
e08634c5
SH
394If you believe you have an unreported bug, please run the L<perlbug> program
395included with your release. Be sure to trim your bug down to a tiny but
396sufficient test case. Your bug report, along with the output of C<perl -V>,
397will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
44691e6f 398
87c118b9
DM
399If the bug you are reporting has security implications which make it
400inappropriate to send to a publicly archived mailing list, then see
c0ea3294
SH
401L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
402for details of how to report the issue.
44691e6f
AB
403
404=head1 SEE ALSO
405
e08634c5
SH
406The F<Changes> file for an explanation of how to view exhaustive details on
407what changed.
44691e6f
AB
408
409The F<INSTALL> file for how to build Perl.
410
411The F<README> file for general stuff.
412
413The F<Artistic> and F<Copying> files for copyright information.
414
415=cut