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