This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta for commit 6f669bf58b
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
25219f3f
KE
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.27.7
89853d76 9
b5cbfe35 10=head1 DESCRIPTION
89853d76 11
25219f3f 12This document describes differences between the 5.27.6 release and the 5.27.7
b5cbfe35 13release.
89853d76 14
25219f3f
KE
15If you are upgrading from an earlier release such as 5.27.5, first read
16L<perl5276delta>, which describes differences between 5.27.5 and 5.27.6.
e6a2e5ca 17
25219f3f 18=head1 Notice
e6a2e5ca 19
25219f3f 20XXX Any important notices here
f99042c8 21
25219f3f 22=head1 Core Enhancements
f99042c8 23
25219f3f
KE
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.
2e8ea15a 27
25219f3f 28[ List each enhancement as a =head2 entry ]
2e8ea15a 29
25219f3f 30=head1 Security
e6a2e5ca 31
25219f3f
KE
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.
29d69c3c 35
25219f3f 36[ List each security issue as a =head2 entry ]
29d69c3c 37
25219f3f 38=head1 Incompatible Changes
29d69c3c 39
25219f3f 40XXX For a release on a stable branch, this section aspires to be:
29d69c3c 41
25219f3f
KE
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.
7d65f652 45
25219f3f 46[ List each incompatible change as a =head2 entry ]
7d65f652 47
25219f3f 48=head1 Deprecations
7d65f652 49
25219f3f 50XXX Any deprecated features, syntax, modules etc. should be listed here.
7d65f652 51
25219f3f 52=head2 Module removals
4c46c124 53
25219f3f 54XXX Remove this section if not applicable.
7d65f652 55
25219f3f
KE
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.
e2091bb6 60
25219f3f
KE
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.
a8ba758d 64
25219f3f
KE
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.
cf663f87 69
25219f3f 70=over
1b510166 71
183fb71f 72=item L<Locale::Codes> and its associated Country, Currency and Language modules
1b510166 73
25219f3f
KE
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.
8ed1839e 76
25219f3f 77=back
8ed1839e 78
25219f3f 79[ List each other deprecation as a =head2 entry ]
8ed1839e 80
25219f3f 81=head1 Performance Enhancements
8ed1839e 82
25219f3f
KE
83XXX Changes which enhance performance without changing behaviour go here.
84There may well be none in a stable release.
8ed1839e 85
25219f3f 86[ List each enhancement as an =item entry ]
8ed1839e 87
25219f3f 88=over 4
d912eab8 89
7d65f652
FC
90=item *
91
25219f3f 92XXX
7d65f652 93
c83a3d01 94=back
d912eab8 95
c83a3d01 96=head1 Modules and Pragmata
af94b3ac 97
25219f3f
KE
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.
9b78f210 103
25219f3f
KE
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.)
9b78f210 109
25219f3f 110[ Within each section, list entries as an =item entry ]
1218f5ba 111
25219f3f 112=head2 New Modules and Pragmata
e6a2e5ca
SH
113
114=over 4
64b9a139
SH
115
116=item *
117
25219f3f 118XXX Remove this section if not applicable.
b2a6778b 119
25219f3f 120=back
b2a6778b 121
25219f3f 122=head2 Updated Modules and Pragmata
b2a6778b 123
25219f3f 124=over 4
b2a6778b
KE
125
126=item *
127
183fb71f 128L<Locale::Codes> has been upgraded from version 3.54 to 3.55
b2a6778b 129
183fb71f
SB
130B<NOTE>: L<Locale::Codes> is deprecated in core and will be removed
131from Perl 5.30.
b2a6778b 132
25219f3f 133=back
b2a6778b 134
25219f3f 135=head2 Removed Modules and Pragmata
b2a6778b 136
25219f3f 137=over 4
b2a6778b
KE
138
139=item *
140
25219f3f 141XXX
ad3f654c 142
25219f3f 143=back
7358a033 144
25219f3f 145=head1 Documentation
64b9a139 146
25219f3f
KE
147XXX Changes to files in F<pod/> go here. Consider grouping entries by
148file and be sure to link to the appropriate page, e.g. L<perlfunc>.
e6a2e5ca 149
25219f3f 150=head2 New Documentation
b2a6778b 151
25219f3f 152XXX Changes which create B<new> files in F<pod/> go here.
b2a6778b 153
25219f3f 154=head3 L<XXX>
b2a6778b 155
25219f3f 156XXX Description of the purpose of the new file here
b2a6778b 157
25219f3f 158=head2 Changes to Existing Documentation
b2a6778b 159
25219f3f
KE
160We have attempted to update the documentation to reflect the changes
161listed in this document. If you find any we have missed, send email
162to L<perlbug@perl.org|mailto:perlbug@perl.org>.
b2a6778b 163
25219f3f
KE
164XXX Changes which significantly change existing files in F<pod/> go here.
165However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
166section.
b2a6778b 167
25219f3f 168Additionally, the following selected changes have been made:
b2a6778b 169
25219f3f 170=head3 L<XXX>
b2a6778b 171
25219f3f 172=over 4
b2a6778b
KE
173
174=item *
175
25219f3f 176XXX Description of the change here
b2a6778b 177
25219f3f 178=back
b2a6778b 179
25219f3f 180=head1 Diagnostics
b2a6778b 181
25219f3f
KE
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>.
b2a6778b 185
25219f3f
KE
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.
b2a6778b 188
25219f3f 189=head2 New Diagnostics
b2a6778b 190
25219f3f
KE
191XXX Newly added diagnostic messages go under here, separated into New Errors
192and New Warnings
b2a6778b 193
25219f3f 194=head3 New Errors
b2a6778b 195
25219f3f 196=over 4
b2a6778b
KE
197
198=item *
199
25219f3f 200XXX L<message|perldiag/"message">
b2a6778b 201
25219f3f 202=back
b2a6778b 203
25219f3f 204=head3 New Warnings
b2a6778b 205
25219f3f 206=over 4
64b9a139
SH
207
208=item *
209
0b4678bf
FC
210L<Old package separator used in string|perldiag/"Old package separator used in string">
211
212(W syntax) You used the old package separator, "'", in a variable
213named inside a double-quoted string; e.g., C<"In $name's house">. This
214is equivalent to C<"In $name::s house">. If you meant the former, put
215a backslash before the apostrophe (C<"In $name\'s house">).
64b9a139 216
e6a2e5ca 217=back
64b9a139 218
25219f3f 219=head2 Changes to Existing Diagnostics
64b9a139 220
25219f3f 221XXX Changes (i.e. rewording) of diagnostic messages go here
e6a2e5ca 222
04f89ea7
Z
223=over 4
224
64b9a139
SH
225=item *
226
25219f3f 227XXX Describe change here
2b8b74b0 228
25219f3f 229=back
e509fc38 230
25219f3f 231=head1 Utility Changes
e509fc38 232
25219f3f
KE
233XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
234Most of these are built within the directory F<utils>.
64b9a139 235
25219f3f
KE
236[ List utility changes as a =head2 entry for each utility and =item
237entries for each change
238Use L<XXX> with program names to get proper documentation linking. ]
64b9a139 239
25219f3f 240=head2 L<XXX>
64b9a139 241
25219f3f 242=over 4
64b9a139
SH
243
244=item *
245
25219f3f 246XXX
64b9a139 247
e6a2e5ca
SH
248=back
249
25219f3f 250=head1 Configuration and Compilation
64b9a139 251
25219f3f
KE
252XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
253go here. Any other changes to the Perl build process should be listed here.
254However, any platform-specific changes should be listed in the
255L</Platform Support> section, instead.
e6a2e5ca 256
25219f3f 257[ List changes as an =item entry ].
64b9a139 258
e6a2e5ca 259=over 4
64b9a139
SH
260
261=item *
262
25219f3f 263XXX
f99042c8 264
e6a2e5ca
SH
265=back
266
25219f3f 267=head1 Testing
e6a2e5ca 268
25219f3f
KE
269XXX Any significant changes to the testing of a freshly built perl should be
270listed here. Changes which create B<new> files in F<t/> go here as do any
271large changes to the testing harness (e.g. when parallel testing was added).
272Changes to existing files in F<t/> aren't worth summarizing, although the bugs
273that they represent may be covered elsewhere.
e6a2e5ca 274
25219f3f 275XXX If there were no significant test changes, say this:
64b9a139 276
25219f3f
KE
277Tests were added and changed to reflect the other additions and changes
278in this release.
64b9a139 279
25219f3f 280XXX If instead there were significant changes, say this:
e6a2e5ca 281
25219f3f
KE
282Tests were added and changed to reflect the other additions and
283changes in this release. Furthermore, these significant changes were
284made:
e6a2e5ca 285
25219f3f 286[ List each test improvement as an =item entry ]
e6a2e5ca 287
e6a2e5ca 288=over 4
64b9a139 289
25219f3f 290=item *
dea26044 291
25219f3f 292XXX
dea26044 293
25219f3f 294=back
dea26044 295
25219f3f 296=head1 Platform Support
dea26044 297
25219f3f 298XXX Any changes to platform support should be listed in the sections below.
dea26044 299
25219f3f
KE
300[ Within the sections, list each platform as an =item entry with specific
301changes as paragraphs below it. ]
dea26044 302
25219f3f 303=head2 New Platforms
dea26044 304
25219f3f
KE
305XXX List any platforms that this version of perl compiles on, that previous
306versions did not. These will either be enabled by new files in the F<hints/>
307directories, or new subdirectories and F<README> files at the top level of the
308source tree.
dea26044 309
25219f3f 310=over 4
dea26044 311
25219f3f 312=item XXX-some-platform
dea26044 313
25219f3f 314XXX
dea26044
MB
315
316=back
e6a2e5ca 317
e6a2e5ca
SH
318=head2 Discontinued Platforms
319
25219f3f
KE
320XXX List any platforms that this version of perl no longer compiles on.
321
e6a2e5ca
SH
322=over 4
323
25219f3f 324=item XXX-some-platform
e6a2e5ca 325
25219f3f 326XXX
e6a2e5ca
SH
327
328=back
329
a8ba758d
JSA
330=head2 Platform-Specific Notes
331
25219f3f
KE
332XXX List any changes for specific platforms. This could include configuration
333and compilation changes or changes in portability/compatibility. However,
334changes within modules for platforms should generally be listed in the
335L</Modules and Pragmata> section.
336
a8ba758d 337=over 4
9ef07b78 338
04139aa0 339=item Windows
a8ba758d 340
04139aa0
SH
341We now set C<$Config{libpth}> correctly for 64-bit builds using Visual C++
342versions earlier than 14.1.
a8ba758d
JSA
343
344=back
345
e6a2e5ca
SH
346=head1 Internal Changes
347
25219f3f
KE
348XXX Changes which affect the interface available to C<XS> code go here. Other
349significant internal changes for future core maintainers should be noted as
350well.
8ed1839e 351
25219f3f 352[ List each change as an =item entry ]
8ed1839e 353
25219f3f 354=over 4
a8ba758d 355
ee5287f6
LM
356=item *
357
25219f3f 358XXX
ee5287f6 359
e6a2e5ca
SH
360=back
361
362=head1 Selected Bug Fixes
363
25219f3f
KE
364XXX Important bug fixes in the core language are summarized here. Bug fixes in
365files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
a155eb05 366
25219f3f 367[ List each fix as an =item entry ]
c2bb91f9 368
25219f3f 369=over 4
e6a2e5ca 370
4faa3060
TC
371=item *
372
25219f3f 373XXX
4faa3060 374
25219f3f 375=back
4faa3060 376
25219f3f 377=head1 Known Problems
4faa3060 378
25219f3f
KE
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.
d1ac83c4 382
25219f3f 383[ List each fix as an =item entry ]
d1ac83c4 384
25219f3f 385=over 4
c4f4b223
Z
386
387=item *
388
25219f3f 389XXX
02d43d4f 390
e6a2e5ca
SH
391=back
392
e6a2e5ca
SH
393=head1 Errata From Previous Releases
394
395=over 4
8abafd33 396
e6a2e5ca
SH
397=item *
398
25219f3f
KE
399XXX Add anything here that we forgot to add, or were mistaken about, in
400the perldelta of a previous release.
8abafd33 401
e6a2e5ca 402=back
b2e49ab9 403
25219f3f 404=head1 Obituary
060724e5 405
25219f3f
KE
406XXX If any significant core contributor or member of the CPAN community has
407died, add a short obituary here.
060724e5 408
25219f3f 409=head1 Acknowledgements
060724e5 410
25219f3f 411XXX Generate this with:
060724e5 412
25219f3f 413 perl Porting/acknowledgements.pl v5.27.6..HEAD
f5b73711 414
44691e6f
AB
415=head1 Reporting Bugs
416
b5cbfe35
S
417If you find what you think is a bug, you might check the perl bug database
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
c0ea3294
SH
428L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
429for details of how to report the issue.
44691e6f 430
390ae6f9
S
431=head1 Give Thanks
432
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:
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