This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Suppress test warning added by 04698ff6
[perl5.git] / pod / perldelta.pod
CommitLineData
3a5c9134
CBW
1=encoding utf8
2
59773fc7
FC
3=for comment
4This has been completed up to a3179684.
5
3a5c9134
CBW
6=head1 NAME
7
8[ this is a template for a new perldelta file. Any text flagged as
9XXX needs to be processed before release. ]
10
11perldelta - what is new for perl v5.13.8
12
13=head1 DESCRIPTION
14
15This document describes differences between the 5.13.8 release and
16the 5.13.7 release.
17
dbbe2d83 18If you are upgrading from an earlier release such as 5.13.6, first read
3a5c9134
CBW
19L<perl5137delta>, which describes differences between 5.13.6 and
205.13.7.
21
22=head1 Notice
23
24XXX Any important notices here
25
26=head1 Core Enhancements
27
28XXX New core language features go here. Summarise user-visible core language
29enhancements. Particularly prominent performance optimisations could go
30here, but most should go in the L</Performance Enhancements> section.
31
32[ List each enhancement as a =head2 entry ]
33
b19934fb
NC
34=head2 C<-d:-foo> calls C<Devel::foo::unimport>
35
36The syntax C<-dI<B<:>foo>> was extended in 5.6.1 to make C<-dI<:fooB<=bar>>>
6a8c8694
FC
37equivalent to C<-MDevel::foo=bar>, which expands
38internally to C<use Devel::foo 'bar';>.
b19934fb
NC
39F<perl> now allows prefixing the module name with C<->, with the same
40semantics as C<-M>, I<i.e.>
41
42=over 4
43
44=item C<-d:-foo>
45
6a8c8694
FC
46Equivalent to C<-M-Devel::foo>, expands to
47C<no Devel::foo;>, calls C<< Devel::foo->unimport() >>
b19934fb
NC
48if the method exists.
49
50=item C<-d:-foo=bar>
51
6a8c8694
FC
52Equivalent to C<-M-Devel::foo=bar>, expands to C<no Devel::foo 'bar';>,
53calls C<< Devel::foo->unimport('bar') >> if the method exists.
b19934fb
NC
54
55=back
56
57This is particularly useful to suppresses the default actions of a
58C<Devel::*> module's C<import> method whilst still loading it for debugging.
59
3a5c9134
CBW
60=head1 Security
61
62XXX Any security-related notices go here. In particular, any security
63vulnerabilities closed should be noted here rather than in the
64L</Selected Bug Fixes> section.
65
66[ List each security issue as a =head2 entry ]
67
68=head1 Incompatible Changes
69
70XXX For a release on a stable branch, this section aspires to be:
71
72 There are no changes intentionally incompatible with 5.XXX.XXX. If any
73 exist, they are bugs and reports are welcome.
74
75[ List each incompatible change as a =head2 entry ]
76
77=head1 Deprecations
78
79XXX Any deprecated features, syntax, modules etc. should be listed here.
80In particular, deprecated modules should be listed here even if they are
81listed as an updated module in the L</Modules and Pragmata> section.
82
83[ List each deprecation as a =head2 entry ]
84
59773fc7
FC
85=head2 C<?PATTERN?> is deprecated
86
87C<?PATTERN?> (without the initial m) has been deprecated and now produces
88a warning.
89
d59a8b3e
NC
90=head2 C<sv_compile_2op> is now deprecated
91
92The C<sv_compile_2op> is now deprecated, and will be removed. Searches suggest
93that nothing on CPAN is using it, so this should have zero impact.
94
95It attempted to provide an API to compile code down to an optree, but failed
96to bind correctly to lexicals in the enclosing scope. It's not possible to
97fix this problem within the constraints of its parameters and return value.
98
3a5c9134
CBW
99=head1 Performance Enhancements
100
101XXX Changes which enhance performance without changing behaviour go here. There
102may well be none in a stable release.
103
104[ List each enhancement as a =item entry ]
105
106=over 4
107
108=item *
109
110XXX
111
112=back
113
114=head1 Modules and Pragmata
115
116XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
117go here. If Module::CoreList is updated, generate an initial draft of the
118following sections using F<Porting/corelist-perldelta.pl>, which prints stub
119entries to STDOUT. Results can be pasted in place of the '=head2' entries
120below. A paragraph summary for important changes should then be added by hand.
121In an ideal world, dual-life modules would have a F<Changes> file that could be
122cribbed.
123
124[ Within each section, list entries as a =item entry ]
125
126=head2 New Modules and Pragmata
127
128=over 4
129
130=item *
131
132XXX
133
134=back
135
136=head2 Updated Modules and Pragmata
137
138=over 4
139
140=item *
141
39b09a1b
CBW
142C<IPC::Cmd> has been upgraded from 0.64 to 0.66
143
144Resolves an issue with splitting Win32 command lines
145and documentation enhancements.
146
147=item *
148
37fa6334 149C<MIME::Base64> has been upgraded from 3.10 to 3.13
2456140e
CBW
150
151Now provides encode_base64url and decode_base64url functions to process
152the base64 scheme for "URL applications".
153
154=item *
155
68adb2b0
CBW
156C<Unicode::Collate> has been upgraded from 0.67 to 0.68
157
158=item *
159
59773fc7 160C<Unicode::UCD> has been upgraded from 0.29 to 0.30.
3a5c9134
CBW
161
162=back
163
164=head2 Removed Modules and Pragmata
165
166=over 4
167
168=item *
169
170XXX
171
172=back
173
174=head1 Documentation
175
176XXX Changes to files in F<pod/> go here. Consider grouping entries by
177file and be sure to link to the appropriate page, e.g. L<perlfunc>.
178
179=head2 New Documentation
180
181XXX Changes which create B<new> files in F<pod/> go here.
182
183=head3 L<XXX>
184
185XXX Description of the purpose of the new file here
186
187=head2 Changes to Existing Documentation
188
189XXX Changes which significantly change existing files in F<pod/> go here.
190However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
191section.
192
193=head3 L<XXX>
194
195=over 4
196
197=item *
198
199XXX Description of the change here
200
201=back
202
203=head1 Diagnostics
204
205The following additions or changes have been made to diagnostic output,
206including warnings and fatal error messages. For the complete list of
207diagnostic messages, see L<perldiag>.
208
209XXX New or changed warnings emitted by the core's C<C> code go here. Also
210include any changes in L<perldiag> that reconcile it to the C<C> code.
211
212[ Within each section, list entries as a =item entry ]
213
214=head2 New Diagnostics
215
216XXX Newly added diagnostic messages go here
217
218=over 4
219
220=item *
221
222XXX
223
224=back
225
226=head2 Changes to Existing Diagnostics
227
228XXX Changes (i.e. rewording) of diagnostic messages go here
229
230=over 4
231
232=item *
233
234XXX
235
236=back
237
238=head1 Utility Changes
239
240XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
241here. Most of these are built within the directories F<utils> and F<x2p>.
242
243[ List utility changes as a =head3 entry for each utility and =item
244entries for each change
245Use L<XXX> with program names to get proper documentation linking. ]
246
247=head3 L<XXX>
248
249=over 4
250
251=item *
252
253XXX
254
255=back
256
257=head1 Configuration and Compilation
258
259XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
260go here. Any other changes to the Perl build process should be listed here.
261However, any platform-specific changes should be listed in the
262L</Platform Support> section, instead.
263
264[ List changes as a =item entry ].
265
266=over 4
267
268=item *
269
270XXX
271
272=back
273
274=head1 Testing
275
276XXX Any significant changes to the testing of a freshly built perl should be
277listed here. Changes which create B<new> files in F<t/> go here as do any
278large changes to the testing harness (e.g. when parallel testing was added).
279Changes to existing files in F<t/> aren't worth summarising, although the bugs
280that they represent may be covered elsewhere.
281
282[ List each test improvement as a =item entry ]
283
284=over 4
285
286=item *
287
288XXX
289
290=back
291
292=head1 Platform Support
293
294XXX Any changes to platform support should be listed in the sections below.
295
296[ Within the sections, list each platform as a =item entry with specific
297changes as paragraphs below it. ]
298
299=head2 New Platforms
300
301XXX List any platforms that this version of perl compiles on, that previous
302versions did not. These will either be enabled by new files in the F<hints/>
303directories, or new subdirectories and F<README> files at the top level of the
304source tree.
305
306=over 4
307
308=item XXX-some-platform
309
310XXX
311
312=back
313
314=head2 Discontinued Platforms
315
316XXX List any platforms that this version of perl no longer compiles on.
317
318=over 4
319
320=item XXX-some-platform
321
322XXX
323
324=back
325
326=head2 Platform-Specific Notes
327
328XXX List any changes for specific platforms. This could include configuration
329and compilation changes or changes in portability/compatibility. However,
330changes within modules for platforms should generally be listed in the
331L</Modules and Pragmata> section.
332
333=over 4
334
335=item XXX-some-platform
336
337XXX
338
339=back
340
341=head1 Internal Changes
342
343XXX Changes which affect the interface available to C<XS> code go here.
344Other significant internal changes for future core maintainers should
345be noted as well.
346
347[ List each test improvement as a =item entry ]
348
349=over 4
350
351=item *
352
353XXX
354
355=back
356
357=head1 Selected Bug Fixes
358
359XXX Important bug fixes in the core language are summarised here.
360Bug fixes in files in F<ext/> and F<lib/> are best summarised in
361L</Modules and Pragmata>.
362
363[ List each fix as a =item entry ]
364
365=over 4
366
367=item *
368
88e9444c
NC
369C<BEGIN {require 5.12.0}> now behaves as documented, rather than behaving
370identically to C<use 5.12.0;>. Previously, C<require> in a C<BEGIN> block
371was erroneously executing the C<use feature ':5.12.0'> and
372C<use strict; use warnings;> behaviour, which only C<use> was documented to
373provide.
3a5c9134
CBW
374
375=back
376
377=head1 Known Problems
378
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, unless
381they were specific to a particular platform (see below).
382
383This is a list of some significant unfixed bugs, which are regressions
384from either 5.XXX.XXX or 5.XXX.XXX.
385
386[ List each fix as a =item entry ]
387
388=over 4
389
390=item *
391
2283d326
KW
392A number of bugs with regular expression bracketed character classes
393have been fixed, mostly having to do with matching characters in the
394non-ASCII Latin-1 range.
3a5c9134
CBW
395
396=back
397
398=head1 Obituary
399
400XXX If any significant core contributor has died, we've added a short obituary
401here.
402
403=head1 Acknowledgements
404
405XXX The list of people to thank goes here.
406
407=head1 Reporting Bugs
408
409If you find what you think is a bug, you might check the articles
410recently posted to the comp.lang.perl.misc newsgroup and the perl
411bug database at http://rt.perl.org/perlbug/ . There may also be
412information at http://www.perl.org/ , the Perl Home Page.
413
414If you believe you have an unreported bug, please run the L<perlbug>
415program included with your release. Be sure to trim your bug down
416to a tiny but sufficient test case. Your bug report, along with the
417output of C<perl -V>, will be sent off to perlbug@perl.org to be
418analysed by the Perl porting team.
419
420If the bug you are reporting has security implications, which make it
421inappropriate to send to a publicly archived mailing list, then please send
422it to perl5-security-report@perl.org. This points to a closed subscription
423unarchived mailing list, which includes all the core committers, who be able
424to help assess the impact of issues, figure out a resolution, and help
425co-ordinate the release of patches to mitigate or fix the problem across all
426platforms on which Perl is supported. Please only use this address for
427security issues in the Perl core, not for modules independently
428distributed on CPAN.
429
430=head1 SEE ALSO
431
432The F<Changes> file for an explanation of how to view exhaustive details
433on what changed.
434
435The F<INSTALL> file for how to build Perl.
436
437The F<README> file for general stuff.
438
439The F<Artistic> and F<Copying> files for copyright information.
440
441=cut