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