This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update Pod-Parser to CPAN version 1.51
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
c1e74734
CBW
5[ this is a template for a new perldelta file. Any text flagged as
6XXX needs to be processed before release. ]
ad32999b 7
c1e74734 8perldelta - what is new for perl v5.15.8
88c5c971 9
c1e74734 10=head1 DESCRIPTION
8f12b018 11
c1e74734
CBW
12This document describes differences between the 5.15.7 release and
13the 5.15.8 release.
8f12b018 14
c1e74734
CBW
15If you are upgrading from an earlier release such as 5.15.6, first read
16L<perl5157delta>, which describes differences between 5.15.6 and
175.15.7.
26afcec5 18
c1e74734 19=head1 Notice
8f12b018 20
c1e74734 21XXX Any important notices here
d7fbd56d 22
c1e74734 23=head1 Core Enhancements
d7fbd56d 24
c1e74734
CBW
25XXX New core language features go here. Summarise user-visible core language
26enhancements. Particularly prominent performance optimisations could go
27here, but most should go in the L</Performance Enhancements> section.
d7fbd56d 28
c1e74734 29[ List each enhancement as a =head2 entry ]
711a3903 30
66cbab2c
KW
31=head2 Improved ability to mix locales and Unicode, including UTF-8 locales
32
33An optional parameter has been added to C<use locale>
34
35 use locale ':not_characters';
36
37which tells Perl to use all but the C<LC_CTYPE> and C<LC_COLLATE>
38portions of the current locale. Instead, the character set is assumed
39to be Unicode. This allows locales and Unicode to be seamlessly mixed,
40including the increasingly frequent UTF-8 locales. When using this
41hybrid form of locales, the C<:locale> layer to the L<open> pragma can
42be used to interface with the file system, and there are CPAN modules
43available for ARGV and environment variable conversions.
44
45Full details are in L<perllocale>.
46
c1e74734 47=head1 Security
711a3903 48
c1e74734
CBW
49XXX Any security-related notices go here. In particular, any security
50vulnerabilities closed should be noted here rather than in the
51L</Selected Bug Fixes> section.
711a3903 52
c1e74734 53[ List each security issue as a =head2 entry ]
6ba817f3 54
c1e74734 55=head1 Incompatible Changes
6ba817f3 56
c1e74734 57XXX For a release on a stable branch, this section aspires to be:
6b339779 58
c1e74734
CBW
59 There are no changes intentionally incompatible with 5.XXX.XXX
60 If any exist, they are bugs, and we request that you submit a
61 report. See L</Reporting Bugs> below.
6b339779 62
c1e74734 63[ List each incompatible change as a =head2 entry ]
b240fc0f 64
c1e74734 65=head1 Deprecations
b240fc0f 66
c1e74734
CBW
67XXX Any deprecated features, syntax, modules etc. should be listed here.
68In particular, deprecated modules should be listed here even if they are
69listed as an updated module in the L</Modules and Pragmata> section.
4e6ab4ad 70
c1e74734 71[ List each deprecation as a =head2 entry ]
4e6ab4ad 72
c1e74734 73=head1 Performance Enhancements
79e10968 74
c1e74734
CBW
75XXX Changes which enhance performance without changing behaviour go here. There
76may well be none in a stable release.
79e10968 77
c1e74734 78[ List each enhancement as a =item entry ]
ea88c40c 79
c1e74734 80=over 4
9d055b1a
CBW
81
82=item *
83
c1e74734 84XXX
cadced9f 85
c1e74734 86=back
cadced9f 87
c1e74734 88=head1 Modules and Pragmata
cadced9f 89
c1e74734
CBW
90XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
91go here. If Module::CoreList is updated, generate an initial draft of the
92following sections using F<Porting/corelist-perldelta.pl>, which prints stub
93entries to STDOUT. Results can be pasted in place of the '=head2' entries
94below. A paragraph summary for important changes should then be added by hand.
95In an ideal world, dual-life modules would have a F<Changes> file that could be
96cribbed.
cadced9f 97
c1e74734 98[ Within each section, list entries as a =item entry ]
07feb684 99
c1e74734 100=head2 New Modules and Pragmata
cadced9f 101
c1e74734 102=over 4
632c5d30
NC
103
104=item *
105
c1e74734 106XXX
4e6e9b23 107
c1e74734 108=back
4e6e9b23 109
c1e74734 110=head2 Updated Modules and Pragmata
4e6e9b23 111
c1e74734 112=over 4
1887da8c
RS
113
114=item *
115
acb29889
CBW
116L<DB_File> has been upgraded from version 1.824 to version 1.825.
117
118=item *
119
1051d5b5 120L<Pod::Parser> has been upgraded from version 1.37 to version 1.51.
88c5c971 121
c1e74734 122=back
c0504019 123
c1e74734 124=head2 Removed Modules and Pragmata
937a45d0 125
c1e74734 126=over 4
937a45d0 127
ef337e16
CBW
128=item *
129
c1e74734 130XXX
ef337e16 131
7f28d7ed 132=back
679b54e7 133
52deee2e 134=head1 Documentation
3c7c5233 135
c1e74734
CBW
136XXX Changes to files in F<pod/> go here. Consider grouping entries by
137file and be sure to link to the appropriate page, e.g. L<perlfunc>.
a71d67b1 138
c1e74734 139=head2 New Documentation
cadced9f 140
c1e74734 141XXX Changes which create B<new> files in F<pod/> go here.
cadced9f 142
c1e74734 143=head3 L<XXX>
cadced9f 144
c1e74734 145XXX Description of the purpose of the new file here
cadced9f 146
c1e74734 147=head2 Changes to Existing Documentation
cadced9f 148
c1e74734
CBW
149XXX Changes which significantly change existing files in F<pod/> go here.
150However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
151section.
cadced9f 152
c1e74734 153=head3 L<XXX>
7e7629fa 154
52deee2e 155=over 4
7e7629fa
FC
156
157=item *
158
c1e74734 159XXX Description of the change here
c2654555 160
52deee2e 161=back
85ca3be7 162
52deee2e 163=head1 Diagnostics
85ca3be7 164
52deee2e
DR
165The following additions or changes have been made to diagnostic output,
166including warnings and fatal error messages. For the complete list of
167diagnostic messages, see L<perldiag>.
7788a270 168
c1e74734
CBW
169XXX New or changed warnings emitted by the core's C<C> code go here. Also
170include any changes in L<perldiag> that reconcile it to the C<C> code.
6138a722 171
c1e74734
CBW
172[ Within each section, list entries as a =item entry that links to perldiag,
173 e.g.
a47fb3fe 174
c1e74734 175 =item *
4888c563 176
c1e74734
CBW
177 L<Invalid version object|perldiag/"Invalid version object">
178]
a3f52e2e 179
c1e74734 180=head2 New Diagnostics
52272450 181
c1e74734 182XXX Newly added diagnostic messages go here
52272450 183
c1e74734 184=head3 New Errors
a47fb3fe 185
0aaeb177 186=over 4
7ef25837 187
6d110ad0
FC
188=item *
189
c1e74734 190XXX L<message|perldiag/"message">
604a99bd 191
c1e74734 192=back
ea88c40c 193
c1e74734 194=head3 New Warnings
ea88c40c 195
c1e74734 196=over 4
ea88c40c
FC
197
198=item *
199
c1e74734 200XXX L<message|perldiag/"message">
ea88c40c 201
6d110ad0
FC
202=back
203
c1e74734
CBW
204=head2 Changes to Existing Diagnostics
205
206XXX Changes (i.e. rewording) of diagnostic messages go here
cadced9f
FC
207
208=over 4
209
210=item *
211
c1e74734 212XXX Describe change here
cadced9f
FC
213
214=back
215
0aaeb177 216=head1 Utility Changes
9cfd094e 217
c1e74734
CBW
218XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
219here. Most of these are built within the directories F<utils> and F<x2p>.
d7fbd56d 220
c1e74734
CBW
221[ List utility changes as a =head3 entry for each utility and =item
222entries for each change
223Use L<XXX> with program names to get proper documentation linking. ]
d7fbd56d 224
c1e74734 225=head3 L<XXX>
d7fbd56d 226
c1e74734 227=over 4
ba91b4f3 228
b18aa002
FC
229=item *
230
c1e74734 231XXX
b18aa002 232
52deee2e 233=back
ba91b4f3 234
52deee2e 235=head1 Configuration and Compilation
f4912a50 236
c1e74734
CBW
237XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
238go here. Any other changes to the Perl build process should be listed here.
239However, any platform-specific changes should be listed in the
240L</Platform Support> section, instead.
a3f52e2e 241
c1e74734 242[ List changes as a =item entry ].
a3f52e2e 243
0aaeb177 244=over 4
ad32999b 245
f4912a50 246=item *
ad32999b 247
c1e74734 248XXX
c15f899f 249
7f28d7ed 250=back
ad32999b 251
c1e74734 252=head1 Testing
39de7394 253
c1e74734
CBW
254XXX Any significant changes to the testing of a freshly built perl should be
255listed here. Changes which create B<new> files in F<t/> go here as do any
256large changes to the testing harness (e.g. when parallel testing was added).
257Changes to existing files in F<t/> aren't worth summarising, although the bugs
258that they represent may be covered elsewhere.
39de7394 259
c1e74734 260[ List each test improvement as a =item entry ]
39de7394 261
c1e74734 262=over 4
5dd80d85 263
52272450
FC
264=item *
265
c1e74734 266XXX
52272450 267
52deee2e 268=back
5dd80d85 269
c1e74734 270=head1 Platform Support
52272450 271
c1e74734 272XXX Any changes to platform support should be listed in the sections below.
52272450 273
c1e74734
CBW
274[ Within the sections, list each platform as a =item entry with specific
275changes as paragraphs below it. ]
ad266194 276
c1e74734 277=head2 New Platforms
ad266194 278
c1e74734
CBW
279XXX List any platforms that this version of perl compiles on, that previous
280versions did not. These will either be enabled by new files in the F<hints/>
281directories, or new subdirectories and F<README> files at the top level of the
282source tree.
ad266194 283
c1e74734 284=over 4
838cf719 285
c1e74734 286=item XXX-some-platform
838cf719 287
c1e74734 288XXX
b00f6edb 289
c1e74734 290=back
b00f6edb 291
c1e74734 292=head2 Discontinued Platforms
7a3fd9ed 293
c1e74734 294XXX List any platforms that this version of perl no longer compiles on.
7a3fd9ed 295
c1e74734 296=over 4
1a50d74b 297
c1e74734 298=item XXX-some-platform
1a50d74b 299
c1e74734 300XXX
ea88c40c 301
c1e74734 302=back
ea88c40c 303
c1e74734 304=head2 Platform-Specific Notes
ea88c40c 305
c1e74734
CBW
306XXX List any changes for specific platforms. This could include configuration
307and compilation changes or changes in portability/compatibility. However,
308changes within modules for platforms should generally be listed in the
309L</Modules and Pragmata> section.
ea88c40c 310
c1e74734 311=over 4
ea88c40c 312
c1e74734 313=item XXX-some-platform
ea88c40c 314
c1e74734 315XXX
ea88c40c 316
c1e74734 317=back
ea88c40c 318
c1e74734 319=head1 Internal Changes
ea88c40c 320
c1e74734
CBW
321XXX Changes which affect the interface available to C<XS> code go here.
322Other significant internal changes for future core maintainers should
323be noted as well.
ea88c40c 324
c1e74734 325[ List each change as a =item entry ]
ea88c40c 326
c1e74734 327=over 4
ea88c40c
FC
328
329=item *
330
c1e74734 331XXX
ea88c40c 332
c1e74734 333=back
ea88c40c 334
c1e74734 335=head1 Selected Bug Fixes
ea88c40c 336
c1e74734
CBW
337XXX Important bug fixes in the core language are summarised here.
338Bug fixes in files in F<ext/> and F<lib/> are best summarised in
339L</Modules and Pragmata>.
ea88c40c 340
c1e74734 341[ List each fix as a =item entry ]
ea88c40c 342
c1e74734 343=over 4
ea88c40c
FC
344
345=item *
346
6025c6dd
RS
347C<~~> now correctly handles the precedence of Any~~Object, and is not tricked
348by an overloaded object on the left-hand side.
ea88c40c
FC
349
350=back
351
c1e74734 352=head1 Known Problems
ea88c40c 353
c1e74734
CBW
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, unless
356they were specific to a particular platform (see below).
ea88c40c 357
c1e74734
CBW
358This is a list of some significant unfixed bugs, which are regressions
359from either 5.XXX.XXX or 5.XXX.XXX.
ea88c40c 360
c1e74734 361[ List each fix as a =item entry ]
ea88c40c 362
c1e74734 363=over 4
18af289e 364
c1e74734 365=item *
18af289e 366
c1e74734 367XXX
1ac442bc 368
c1e74734 369=back
c0154fe2 370
c1e74734 371=head1 Obituary
1ac442bc 372
c1e74734
CBW
373XXX If any significant core contributor has died, we've added a short obituary
374here.
84b2a83e 375
52deee2e 376=head1 Acknowledgements
8fe05716 377
c1e74734
CBW
378XXX Generate this with:
379
380 perl Porting/acknowledgements.pl v5.15.7..HEAD
29cf780c 381
44691e6f
AB
382=head1 Reporting Bugs
383
384If you find what you think is a bug, you might check the articles
52deee2e
DR
385recently posted to the comp.lang.perl.misc newsgroup and the perl
386bug database at http://rt.perl.org/perlbug/ . There may also be
44691e6f
AB
387information at http://www.perl.org/ , the Perl Home Page.
388
389If you believe you have an unreported bug, please run the L<perlbug>
52deee2e
DR
390program included with your release. Be sure to trim your bug down
391to a tiny but sufficient test case. Your bug report, along with the
392output of C<perl -V>, will be sent off to perlbug@perl.org to be
393analysed by the Perl porting team.
44691e6f
AB
394
395If the bug you are reporting has security implications, which make it
52deee2e
DR
396inappropriate to send to a publicly archived mailing list, then please send
397it to perl5-security-report@perl.org. This points to a closed subscription
398unarchived mailing list, which includes
399all the core committers, who will be able
400to help assess the impact of issues, figure out a resolution, and help
401co-ordinate the release of patches to mitigate or fix the problem across all
402platforms on which Perl is supported. Please only use this address for
403security issues in the Perl core, not for modules independently
404distributed on CPAN.
44691e6f
AB
405
406=head1 SEE ALSO
407
52deee2e
DR
408The F<Changes> file for an explanation of how to view exhaustive details
409on what changed.
44691e6f
AB
410
411The F<INSTALL> file for how to build Perl.
412
413The F<README> file for general stuff.
414
415The F<Artistic> and F<Copying> files for copyright information.
416
417=cut