This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
mktables: Convert to BELL meaning U+1F514
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
61174fb5
Z
5[ this is a template for a new perldelta file. Any text flagged as
6XXX needs to be processed before release. ]
7
8perldelta - what is new for perl v5.17.1
27f00e3d 9
f9001595 10=head1 DESCRIPTION
2630d42b 11
61174fb5
Z
12This document describes differences between the 5.17.0 release and
13the 5.17.1 release.
7620cb10 14
f9001595 15If you are upgrading from an earlier release such as 5.16.0, first read
61174fb5
Z
16L<perl5170delta>, which describes differences between 5.16.0 and
175.17.0.
d7c042c9 18
61174fb5 19=head1 Notice
2e2b2571 20
61174fb5 21XXX Any important notices here
417a992d 22
61174fb5 23=head1 Core Enhancements
417a992d 24
61174fb5
Z
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.
417a992d 28
61174fb5 29[ List each enhancement as a =head2 entry ]
075b9d7d 30
61174fb5 31=head1 Security
075b9d7d 32
61174fb5
Z
33XXX Any security-related notices go here. In particular, any security
34vulnerabilities closed should be noted here rather than in the
35L</Selected Bug Fixes> section.
cadced9f 36
61174fb5 37[ List each security issue as a =head2 entry ]
30608892 38
61174fb5 39=head1 Incompatible Changes
30608892 40
61174fb5 41XXX For a release on a stable branch, this section aspires to be:
05c8f9ed 42
61174fb5
Z
43 There are no changes intentionally incompatible with 5.XXX.XXX
44 If any exist, they are bugs, and we request that you submit a
45 report. See L</Reporting Bugs> below.
05c8f9ed 46
fe3193b5
KW
47=head2 C<\N{BELL}> now refers to U+1F514 instead of U+0007
48
49Unicode 6.0 reused the name "BELL" for a different code point than it
50traditionally had meant. Since Perl v5.14, use of this name still
51referred to U+0007, but would raise a deprecated warning. Now, "BELL"
52refers to U+1F514, and the name for U+0007 is "ALERT". All the
53functions in L<charnames> have been correspondingly updated.
05c8f9ed 54
61174fb5 55=head1 Deprecations
ef7131e9 56
61174fb5
Z
57XXX Any deprecated features, syntax, modules etc. should be listed here.
58In particular, deprecated modules should be listed here even if they are
59listed as an updated module in the L</Modules and Pragmata> section.
ef7131e9 60
61174fb5 61[ List each deprecation as a =head2 entry ]
ef7131e9 62
61174fb5 63=head1 Performance Enhancements
95ce428c 64
61174fb5
Z
65XXX Changes which enhance performance without changing behaviour go here. There
66may well be none in a stable release.
c11980ad 67
61174fb5 68[ List each enhancement as a =item entry ]
05c8f9ed 69
f9001595 70=over 4
75ff5956 71
2630d42b 72=item *
c11980ad 73
61174fb5 74XXX
53de3ff0 75
61174fb5 76=back
ef7131e9 77
61174fb5 78=head1 Modules and Pragmata
ef7131e9 79
61174fb5
Z
80XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
81go here. If Module::CoreList is updated, generate an initial draft of the
82following sections using F<Porting/corelist-perldelta.pl>, which prints stub
83entries to STDOUT. Results can be pasted in place of the '=head2' entries
84below. A paragraph summary for important changes should then be added by hand.
85In an ideal world, dual-life modules would have a F<Changes> file that could be
86cribbed.
ef7131e9 87
61174fb5 88[ Within each section, list entries as a =item entry ]
435b0bdb 89
61174fb5 90=head2 New Modules and Pragmata
435b0bdb 91
61174fb5 92=over 4
be8dfbf7 93
435b0bdb
FC
94=item *
95
61174fb5 96XXX
83fb037c 97
61174fb5 98=back
83fb037c 99
61174fb5 100=head2 Updated Modules and Pragmata
83fb037c 101
61174fb5 102=over 4
83fb037c
FC
103
104=item *
105
1c633914
TC
106L<IO> has been upgraded from version 1.25_06 to version 1.25_07.
107
108C<sync()> can now be called on read only file handles [perl #64772].
f558db2f 109
66aa79e2
KW
110=item *
111
112L<Unicode::UCD> has been upgraded from version 0.43 to version 0.44.
113This adds a function L<all_casefolds()|Unicode::UCD/all_casefolds()>
114that returns all the casefolds.
115
61174fb5 116=back
f558db2f 117
61174fb5 118=head2 Removed Modules and Pragmata
e3329bf0 119
61174fb5 120=over 4
e3329bf0
FC
121
122=item *
123
61174fb5 124XXX
80b8b050 125
61174fb5 126=back
80b8b050 127
61174fb5 128=head1 Documentation
80b8b050 129
61174fb5
Z
130XXX Changes to files in F<pod/> go here. Consider grouping entries by
131file and be sure to link to the appropriate page, e.g. L<perlfunc>.
18d0dfa8 132
61174fb5 133=head2 New Documentation
843331c7 134
61174fb5 135XXX Changes which create B<new> files in F<pod/> go here.
53de3ff0 136
61174fb5 137=head3 L<XXX>
30608892 138
61174fb5 139XXX Description of the purpose of the new file here
30608892 140
61174fb5 141=head2 Changes to Existing Documentation
30608892 142
61174fb5
Z
143XXX Changes which significantly change existing files in F<pod/> go here.
144However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
145section.
c11980ad 146
61174fb5 147=head3 L<XXX>
ecd144ea 148
f9001595 149=over 4
05c8f9ed
RS
150
151=item *
152
61174fb5 153XXX Description of the change here
9dea6244 154
204b72a4 155=back
9dea6244 156
61174fb5 157=head1 Diagnostics
ef7131e9 158
61174fb5
Z
159The following additions or changes have been made to diagnostic output,
160including warnings and fatal error messages. For the complete list of
161diagnostic messages, see L<perldiag>.
ef7131e9 162
61174fb5
Z
163XXX New or changed warnings emitted by the core's C<C> code go here. Also
164include any changes in L<perldiag> that reconcile it to the C<C> code.
ef7131e9 165
61174fb5
Z
166[ Within each section, list entries as a =item entry that links to perldiag,
167 e.g.
ef7131e9 168
61174fb5 169 =item *
ef7131e9 170
61174fb5
Z
171 L<Invalid version object|perldiag/"Invalid version object">
172]
80b8b050 173
61174fb5 174=head2 New Diagnostics
80b8b050 175
61174fb5 176XXX Newly added diagnostic messages go here
80b8b050 177
61174fb5 178=head3 New Errors
80b8b050
Z
179
180=over 4
181
182=item *
183
61174fb5 184XXX L<message|perldiag/"message">
80b8b050 185
52deee2e 186=back
5dd80d85 187
f9001595 188=head3 New Warnings
05c8f9ed 189
f9001595 190=over 4
05c8f9ed
RS
191
192=item *
d5dc7001 193
61174fb5 194XXX L<message|perldiag/"message">
30608892 195
f9001595 196=back
05c8f9ed 197
61174fb5
Z
198=head2 Changes to Existing Diagnostics
199
200XXX Changes (i.e. rewording) of diagnostic messages go here
05c8f9ed 201
f9001595 202=over 4
05c8f9ed
RS
203
204=item *
205
61174fb5 206XXX Describe change here
ef7131e9 207
f9001595 208=back
05c8f9ed 209
61174fb5 210=head1 Utility Changes
05c8f9ed 211
61174fb5
Z
212XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
213here. Most of these are built within the directories F<utils> and F<x2p>.
05c8f9ed 214
61174fb5
Z
215[ List utility changes as a =head3 entry for each utility and =item
216entries for each change
217Use L<XXX> with program names to get proper documentation linking. ]
05c8f9ed 218
61174fb5 219=head3 L<XXX>
30608892 220
61174fb5 221=over 4
30608892 222
61174fb5 223=item *
30608892 224
61174fb5 225XXX
30608892 226
61174fb5 227=back
30608892 228
61174fb5 229=head1 Configuration and Compilation
30608892 230
61174fb5
Z
231XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
232go here. Any other changes to the Perl build process should be listed here.
233However, any platform-specific changes should be listed in the
234L</Platform Support> section, instead.
05c8f9ed 235
61174fb5 236[ List changes as a =item entry ].
05c8f9ed 237
f9001595 238=over 4
05c8f9ed
RS
239
240=item *
241
61174fb5 242XXX
53de3ff0 243
61174fb5 244=back
a3367fba 245
61174fb5 246=head1 Testing
a3367fba 247
61174fb5
Z
248XXX Any significant changes to the testing of a freshly built perl should be
249listed here. Changes which create B<new> files in F<t/> go here as do any
250large changes to the testing harness (e.g. when parallel testing was added).
251Changes to existing files in F<t/> aren't worth summarising, although the bugs
252that they represent may be covered elsewhere.
a3367fba 253
61174fb5 254[ List each test improvement as a =item entry ]
a3367fba 255
61174fb5 256=over 4
05c8f9ed 257
30608892
Z
258=item *
259
61174fb5 260XXX
30608892 261
f9001595 262=back
05c8f9ed 263
61174fb5 264=head1 Platform Support
05c8f9ed 265
61174fb5 266XXX Any changes to platform support should be listed in the sections below.
05c8f9ed 267
61174fb5
Z
268[ Within the sections, list each platform as a =item entry with specific
269changes as paragraphs below it. ]
05c8f9ed 270
61174fb5 271=head2 New Platforms
e2e06450 272
61174fb5
Z
273XXX List any platforms that this version of perl compiles on, that previous
274versions did not. These will either be enabled by new files in the F<hints/>
275directories, or new subdirectories and F<README> files at the top level of the
276source tree.
b9b99128 277
61174fb5 278=over 4
b9b99128 279
61174fb5 280=item XXX-some-platform
47fb883d 281
61174fb5 282XXX
47fb883d 283
61174fb5 284=back
5f0f4bc0 285
61174fb5 286=head2 Discontinued Platforms
5f0f4bc0 287
61174fb5 288XXX List any platforms that this version of perl no longer compiles on.
ba0d99ee 289
61174fb5 290=over 4
ba0d99ee 291
61174fb5 292=item XXX-some-platform
72035cb1 293
61174fb5 294XXX
72035cb1 295
61174fb5 296=back
ceb0881c 297
61174fb5 298=head2 Platform-Specific Notes
ceb0881c 299
61174fb5
Z
300XXX List any changes for specific platforms. This could include configuration
301and compilation changes or changes in portability/compatibility. However,
302changes within modules for platforms should generally be listed in the
303L</Modules and Pragmata> section.
89cbc6b8 304
61174fb5 305=over 4
89cbc6b8 306
4aa4c0a5 307=item Win32
c6b15a5a 308
4aa4c0a5
TC
309C<link> on Win32 now attempts to set C<$!> to more appropriate values
310based on the Win32 API error code. [perl #112272]
c6b15a5a 311
61174fb5 312=back
8e125188 313
61174fb5 314=head1 Internal Changes
8e125188 315
61174fb5
Z
316XXX Changes which affect the interface available to C<XS> code go here.
317Other significant internal changes for future core maintainers should
318be noted as well.
8e125188 319
61174fb5 320[ List each change as a =item entry ]
c4643160 321
61174fb5 322=over 4
c4643160 323
422287bf
FC
324=item *
325
61174fb5 326XXX
53de3ff0 327
61174fb5 328=back
422287bf 329
61174fb5 330=head1 Selected Bug Fixes
2de6ba8d 331
61174fb5
Z
332XXX Important bug fixes in the core language are summarised here.
333Bug fixes in files in F<ext/> and F<lib/> are best summarised in
334L</Modules and Pragmata>.
2de6ba8d 335
61174fb5 336[ List each fix as a =item entry ]
52c4b146 337
61174fb5 338=over 4
52c4b146 339
9aa9a888
KW
340=item *
341
7ade940c
KW
342Perl now works as well as can be expected on all releases of Unicode so
343far. In v5.16, it worked on Unicodes 6.0 and 6.1, but there were
344various bugs for earlier releases; the older the release the more
345problems.
9aa9a888 346
61174fb5 347=back
53de3ff0 348
61174fb5 349=head1 Known Problems
53de3ff0 350
61174fb5
Z
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).
53de3ff0 354
61174fb5
Z
355This is a list of some significant unfixed bugs, which are regressions
356from either 5.XXX.XXX or 5.XXX.XXX.
53de3ff0 357
61174fb5 358[ List each fix as a =item entry ]
80b8b050 359
61174fb5 360=over 4
80b8b050 361
eb3d0a58
LT
362=item *
363
61174fb5 364XXX
eb3d0a58 365
2630d42b 366=back
e2e06450 367
61174fb5 368=head1 Obituary
c0154fe2 369
61174fb5
Z
370XXX If any significant core contributor has died, we've added a short obituary
371here.
d5dc7001 372
61174fb5 373=head1 Acknowledgements
d5dc7001 374
61174fb5 375XXX Generate this with:
f9001595 376
61174fb5 377 perl Porting/acknowledgements.pl v5.17.0..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 382recently posted to the comp.lang.perl.misc newsgroup and the perl
f9001595
RS
383bug database at http://rt.perl.org/perlbug/ . There may also be
384information at http://www.perl.org/ , the Perl Home Page.
44691e6f
AB
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
f9001595
RS
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