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