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