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