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