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