This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Porting/bisect-runner.pl: Wrap pod lines to 79 cols
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
2cfe9b50 5perldelta - what is new for perl v5.23.0
eabfc7bc 6
2cfe9b50 7=head1 DESCRIPTION
eabfc7bc 8
2cfe9b50
RS
9This document describes differences between the 5.22.0 release and the 5.23.0
10release.
eabfc7bc 11
2cfe9b50 12=head1 Core Enhancements
eabfc7bc 13
ac71d2a0
UC
14=head2 Unicode 8.0 is now supported
15
16For details on what is in this release, see
17L<http://www.unicode.org/versions/Unicode8.0.0/>.
18
2cfe9b50 19=head1 Incompatible Changes
eabfc7bc 20
33c28ab2
DM
21=head2 The C</\C/> character class has been removed.
22
23This regular expression character class was deprecated in v5.20.0 and has
24produced a deprecation warning since v5.22.0. It is now a compile-time
25error. If you need to examine the individual bytes that make up a
26UTF8-encoded character, then use C<utf8::encode()> on the string (or a
27copy) first.
eabfc7bc 28
73d6481e 29=head2 C<chdir('')> no longer chdirs home
eabfc7bc 30
73d6481e
RS
31Using C<chdir('')> or C<chdir(undef)> to chdir home has been deprecated since
32perl v5.8, and will now fail. Use C<chdir()> instead.
eabfc7bc 33
73d6481e 34=head1 Modules and Pragmata
eabfc7bc 35
73d6481e 36=head2 Updated Modules and Pragmata
eabfc7bc 37
73d6481e 38=over 4
eabfc7bc 39
73d6481e 40=item *
eabfc7bc 41
73d6481e 42The libnet distribution has been upgraded from version 3.05 to 3.06.
eabfc7bc 43
73d6481e 44=item *
eabfc7bc 45
73d6481e 46The Scalar-List-Utils distribution has been upgraded from version 1.41 to 1.42.
eabfc7bc
RS
47
48=item *
49
73d6481e 50L<autodie> has been upgraded from version 2.26 to 2.27.
eabfc7bc 51
73d6481e 52=item *
eabfc7bc 53
73d6481e 54L<CPAN::Meta> has been upgraded from version 2.150001 to 2.150005.
eabfc7bc 55
73d6481e 56=item *
eabfc7bc 57
73d6481e 58L<CPAN::Meta::Requirements> has been upgraded from version 2.132 to 2.133.
eabfc7bc 59
73d6481e 60=item *
eabfc7bc 61
73d6481e 62L<CPAN::Meta::YAML> has been upgraded from version 0.012 to 0.016.
eabfc7bc
RS
63
64=item *
65
73d6481e 66L<Encode> has been upgraded from version 2.72 to 2.73.
eabfc7bc 67
73d6481e 68=item *
eabfc7bc 69
73d6481e 70L<encoding> has been upgraded from version 2.14 to 2.15.
374c951f
SH
71
72=item *
73
73d6481e 74L<ExtUtils::CBuilder> has been upgraded from version 0.280221 to 0.280223.
e586de20
SH
75
76=item *
77
73d6481e 78L<feature> has been upgraded from version 1.40 to 1.41.
fd0a842f
SH
79
80=item *
81
82L<Getopt::Long> has been upgraded from version 2.45 to 2.46.
99527ef1
SH
83
84=item *
85
86L<HTTP::Tiny> has been upgraded from version 0.054 to 0.056.
a4f8ff46
SH
87
88=item *
89
73d6481e
RS
90L<List::Util> has been upgraded from version 1.41 to 1.42_01.
91
92=item *
93
94L<Locale::Codes> has been upgraded from version 3.34 to 3.35.
eabfc7bc
RS
95
96=item *
97
b7b593d8
TC
98L<Math::BigInt> has been upgraded from version 1.9997 to 1.999701.
99
100Correct the behaviour of bdiv() and bmod() in list context. [perl #124300]
101
102Correct C<< Math::BigInt->new() >> for non-integer input. [perl #124325]
103
104Speed up Math::BigFloat -> blog(). [perl #124382]
105
106Fix bug in Math::BigFloat's bceil() and bint() methods. [perl #124412]
107
108=item *
109
110L<Math::BigRat> has been upgraded from version 0.2608 to 0.260801.
111
112Correct the behaviour of bdiv() and bmod() in list context. [perl #124303]
eabfc7bc 113
ef5cf9f5
TC
114=item *
115
73d6481e 116L<Module::CoreList> has been upgraded from version 5.20150520 to 5.20150620.
72b8c7a2
SH
117
118=item *
119
73d6481e 120L<Module::Metadata> has been upgraded from version 1.000026 to 1.000027.
bdb6acef
SH
121
122=item *
123
73d6481e 124L<parent> has been upgraded from version 0.232 to 0.234.
ef5cf9f5 125
3d58dd24
SH
126=item *
127
73d6481e 128L<Parse::CPAN::Meta> has been upgraded from version 1.4414 to 1.4417.
4b951711
TC
129
130=item *
131
73d6481e 132L<perl5db.pl> has been upgraded from version 1.49 to 1.49_01.
eabfc7bc 133
73d6481e
RS
134User actions are no longer evaluated after the script under the
135debugger finishes. [perl #71678]
eabfc7bc
RS
136
137=item *
138
73d6481e 139L<Pod::Simple> has been upgraded from version 3.29 to 3.30.
eabfc7bc
RS
140
141=item *
142
73d6481e 143L<Pod::Usage> has been upgraded from version 1.64 to 1.67.
eabfc7bc
RS
144
145=item *
146
73d6481e 147L<POSIX> has been upgraded from version 1.53 to 1.54.
eabfc7bc 148
73d6481e
RS
149The NaN payload API has been implemented (getpayload, setpayload,
150setpayloadsig, issignaling).
eabfc7bc
RS
151
152=item *
153
73d6481e 154L<Scalar::Util> has been upgraded from version 1.41 to 1.42_01.
eabfc7bc
RS
155
156=item *
157
73d6481e 158L<Socket> has been upgraded from version 2.018 to 2.019.
eabfc7bc
RS
159
160=item *
161
73d6481e 162L<threads> has been upgraded from version 2.01 to 2.02.
eabfc7bc
RS
163
164=item *
165
73d6481e 166L<Time::Piece> has been upgraded from version 1.29 to 1.30.
eabfc7bc
RS
167
168=item *
169
73d6481e 170L<UNIVERSAL> has been upgraded from version 1.12 to 1.13.
eabfc7bc 171
73d6481e
RS
172Don't import from L<UNIVERSAL> in its documentation, it no longer
173exports anything. [perl #125410]
eabfc7bc 174
2cfe9b50 175=back
33ca8d3c 176
73d6481e 177=head1 Platform Support
eabfc7bc 178
2cfe9b50 179=head2 Platform-Specific Notes
eabfc7bc 180
2cfe9b50 181=over 4
eabfc7bc 182
269713a1 183=item Win32
eabfc7bc 184
269713a1
DD
185=over
186
187=item *
188
189Visual C++ 2013 builds will now execute on XP and higher. Previously they would
190only execute on Vista and higher.
191
463e63a4
TC
192=item *
193
194You can now build perl with GNU Make and GCC. [perl #123440]
195
9c0328ac
TC
196=item *
197
198C<truncate($filename, $size)> now works for files over 4GB in size.
199[perl #125347]
200
269713a1 201=back
eabfc7bc 202
2cfe9b50 203=back
eabfc7bc 204
2cfe9b50 205=head1 Selected Bug Fixes
eabfc7bc 206
2cfe9b50 207=over 4
eabfc7bc
RS
208
209=item *
210
21b14bca
TC
211Duplicating a closed file handle for write no longer creates a
212filename of the form F<GLOB(0xXXXXXXXX)>. [perl #125115]
eabfc7bc 213
302ef3d4
TC
214=item *
215
216Warning fatality is now ignored when rewinding the stack. This
217prevents infinite recursion when the now fatal error also causes
218rewinding of the stack. [perl #123398]
219
73d6481e 220=item *
eabfc7bc 221
73d6481e
RS
222In perl v5.22.0, the logic changed when parsing a numeric parameter to the -C
223option, such that the successfully parsed number was not saved as the option
224value if it parsed to the end of the argument. [perl #125381]
eabfc7bc 225
73d6481e 226=item *
eabfc7bc 227
73d6481e 228The PadlistNAMES macro is an lvalue again.
eabfc7bc
RS
229
230=item *
231
73d6481e 232Zero -DPERL_TRACE_OPS memory for sub-threads.
eabfc7bc 233
73d6481e
RS
234perl_clone_using() was missing Zero init of PL_op_exec_cnt[]. This
235caused sub-threads in threaded -DPERL_TRACE_OPS builds to spew exceedingly
236large op-counts at destruct. These counts would print %x as "ABABABAB",
237clearly a mem-poison value.
eabfc7bc 238
73d6481e 239=back
eabfc7bc 240
73d6481e 241=head1 Acknowledgements
eabfc7bc 242
73d6481e
RS
243Perl 5.23.0 represents approximately 3 weeks of development since Perl 5.22.0
244and contains approximately 86,000 lines of changes across 480 files from 29
245authors.
eabfc7bc 246
73d6481e
RS
247Excluding auto-generated files, documentation and release tools, there were
248approximately 55,000 lines of changes to 270 .pm, .t, .c and .h files.
2a7a05b4 249
73d6481e
RS
250Perl continues to flourish into its third decade thanks to a vibrant community
251of users and developers. The following people are known to have contributed the
7c499b7f 252improvements that became Perl 5.23.0:
30aa8e3f 253
73d6481e
RS
254Chase Whitener, Chris 'BinGOs' Williams, Craig A. Berry, Dagfinn Ilmari
255Mannsåker, Daniel Dragan, David Golden, David Mitchell, Hugo van der Sanden,
256Jan Dubois, Jarkko Hietaniemi, Jerry D. Hedden, Jim Cromie, Karen Etheridge,
257Karl Williamson, kmx, Lukas Mai, Martijn Lievaart, Matthew Horsfall, Niko Tyni,
258Peter John Acklam, Rafael Garcia-Suarez, Reini Urban, Ricardo Signes, Shlomi
259Fish, Steve Hay, Thomas Sibley, Tony Cook, Unicode Consortium, Zefram.
30aa8e3f 260
73d6481e
RS
261The list above is almost certainly incomplete as it is automatically generated
262from version control history. In particular, it does not include the names of
263the (very much appreciated) contributors who reported issues to the Perl bug
264tracker.
2a7a05b4 265
73d6481e
RS
266Many of the changes included in this version originated in the CPAN modules
267included in Perl's core. We're grateful to the entire CPAN community for
268helping Perl to flourish.
2cfe9b50 269
73d6481e
RS
270For a more complete list of all of Perl's historical contributors, please see
271the F<AUTHORS> file in the Perl source distribution.
f5b73711 272
44691e6f
AB
273=head1 Reporting Bugs
274
e08634c5
SH
275If you find what you think is a bug, you might check the articles recently
276posted to the comp.lang.perl.misc newsgroup and the perl bug database at
2cfe9b50
RS
277https://rt.perl.org/ . There may also be information at
278http://www.perl.org/ , the Perl Home Page.
44691e6f 279
e08634c5
SH
280If you believe you have an unreported bug, please run the L<perlbug> program
281included with your release. Be sure to trim your bug down to a tiny but
282sufficient test case. Your bug report, along with the output of C<perl -V>,
283will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
44691e6f
AB
284
285If the bug you are reporting has security implications, which make it
e08634c5
SH
286inappropriate to send to a publicly archived mailing list, then please send it
287to perl5-security-report@perl.org. This points to a closed subscription
288unarchived mailing list, which includes all the core committers, who will be
289able to help assess the impact of issues, figure out a resolution, and help
f9001595 290co-ordinate the release of patches to mitigate or fix the problem across all
e08634c5
SH
291platforms on which Perl is supported. Please only use this address for
292security issues in the Perl core, not for modules independently distributed on
293CPAN.
44691e6f
AB
294
295=head1 SEE ALSO
296
e08634c5
SH
297The F<Changes> file for an explanation of how to view exhaustive details on
298what changed.
44691e6f
AB
299
300The F<INSTALL> file for how to build Perl.
301
302The F<README> file for general stuff.
303
304The F<Artistic> and F<Copying> files for copyright information.
305
306=cut