Commit | Line | Data |
---|---|---|
44691e6f AB |
1 | =encoding utf8 |
2 | ||
3 | =head1 NAME | |
4 | ||
af8a293f SL |
5 | [ this is a template for a new perldelta file. Any text flagged as XXX needs |
6 | to be processed before release. ] | |
7 | ||
8 | perldelta - what is new for perl v5.23.8 | |
eabfc7bc | 9 | |
2cfe9b50 | 10 | =head1 DESCRIPTION |
eabfc7bc | 11 | |
af8a293f | 12 | This document describes differences between the 5.23.7 release and the 5.23.8 |
2cfe9b50 | 13 | release. |
eabfc7bc | 14 | |
af8a293f SL |
15 | If you are upgrading from an earlier release such as 5.23.6, first read |
16 | L<perl5237delta>, which describes differences between 5.23.6 and 5.23.7. | |
394609a5 | 17 | |
af8a293f | 18 | =head1 Notice |
6b659339 | 19 | |
af8a293f | 20 | XXX Any important notices here |
6b659339 | 21 | |
af8a293f | 22 | =head1 Core Enhancements |
a8c28920 | 23 | |
af8a293f SL |
24 | XXX New core language features go here. Summarize user-visible core language |
25 | enhancements. Particularly prominent performance optimisations could go | |
26 | here, but most should go in the L</Performance Enhancements> section. | |
7feb15ec | 27 | |
af8a293f | 28 | [ List each enhancement as a =head2 entry ] |
7feb15ec | 29 | |
cdfe2e65 DIM |
30 | =head2 More fields provided to C<sigaction> callback with C<SA_SIGINFO> |
31 | ||
32 | When passing the C<SA_SIGINFO> flag to L<sigaction|POSIX/sigaction>, the | |
33 | C<errno>, C<status>, C<uid>, C<pid>, C<addr> and C<band> fields are now | |
34 | included in the hash passed to the handler, if supported by the | |
35 | platform. | |
36 | ||
af8a293f | 37 | =head1 Security |
a8c28920 | 38 | |
af8a293f SL |
39 | XXX Any security-related notices go here. In particular, any security |
40 | vulnerabilities closed should be noted here rather than in the | |
41 | L</Selected Bug Fixes> section. | |
a8c28920 | 42 | |
af8a293f | 43 | [ List each security issue as a =head2 entry ] |
a8c28920 | 44 | |
c0883d63 | 45 | =head1 Incompatible Changes |
a8c28920 | 46 | |
af8a293f | 47 | XXX For a release on a stable branch, this section aspires to be: |
f1f6961f | 48 | |
af8a293f SL |
49 | There are no changes intentionally incompatible with 5.XXX.XXX |
50 | If any exist, they are bugs, and we request that you submit a | |
51 | report. See L</Reporting Bugs> below. | |
f1f6961f | 52 | |
af8a293f | 53 | [ List each incompatible change as a =head2 entry ] |
1257ab89 | 54 | |
af8a293f | 55 | =head1 Deprecations |
d9d208b8 | 56 | |
af8a293f | 57 | XXX Any deprecated features, syntax, modules etc. should be listed here. |
d9d208b8 | 58 | |
af8a293f | 59 | =head2 Module removals |
a7e63acd | 60 | |
af8a293f | 61 | XXX Remove this section if inapplicable. |
a7e63acd | 62 | |
af8a293f SL |
63 | The following modules will be removed from the core distribution in a |
64 | future release, and will at that time need to be installed from CPAN. | |
65 | Distributions on CPAN which require these modules will need to list them as | |
66 | prerequisites. | |
a7e63acd | 67 | |
af8a293f SL |
68 | The core versions of these modules will now issue C<"deprecated">-category |
69 | warnings to alert you to this fact. To silence these deprecation warnings, | |
70 | install the modules in question from CPAN. | |
a7e63acd | 71 | |
af8a293f SL |
72 | Note that these are (with rare exceptions) fine modules that you are encouraged |
73 | to continue to use. Their disinclusion from core primarily hinges on their | |
74 | necessity to bootstrapping a fully functional, CPAN-capable Perl installation, | |
75 | not usually on concerns over their design. | |
a7e63acd | 76 | |
af8a293f | 77 | =over |
a7e63acd | 78 | |
af8a293f | 79 | =item XXX |
a7e63acd | 80 | |
af8a293f SL |
81 | XXX Note that deprecated modules should be listed here even if they are listed |
82 | as an updated module in the L</Modules and Pragmata> section. | |
a7e63acd | 83 | |
af8a293f | 84 | =back |
a7e63acd | 85 | |
af8a293f | 86 | [ List each other deprecation as a =head2 entry ] |
a7e63acd | 87 | |
af8a293f | 88 | =head1 Performance Enhancements |
a7e63acd | 89 | |
af8a293f SL |
90 | XXX Changes which enhance performance without changing behaviour go here. |
91 | There may well be none in a stable release. | |
a7e63acd | 92 | |
af8a293f | 93 | [ List each enhancement as a =item entry ] |
a7e63acd | 94 | |
af8a293f | 95 | =over 4 |
a7e63acd SL |
96 | |
97 | =item * | |
98 | ||
af8a293f | 99 | XXX |
a7e63acd | 100 | |
af8a293f | 101 | =back |
a7e63acd | 102 | |
af8a293f | 103 | =head1 Modules and Pragmata |
a7e63acd | 104 | |
af8a293f SL |
105 | XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/> |
106 | go here. If Module::CoreList is updated, generate an initial draft of the | |
107 | following sections using F<Porting/corelist-perldelta.pl>. A paragraph summary | |
108 | for important changes should then be added by hand. In an ideal world, | |
109 | dual-life modules would have a F<Changes> file that could be cribbed. | |
a7e63acd | 110 | |
af8a293f | 111 | [ Within each section, list entries as a =item entry ] |
a7e63acd | 112 | |
af8a293f | 113 | =head2 New Modules and Pragmata |
a7e63acd | 114 | |
af8a293f | 115 | =over 4 |
a7e63acd SL |
116 | |
117 | =item * | |
118 | ||
af8a293f | 119 | XXX |
a7e63acd | 120 | |
af8a293f | 121 | =back |
fd12b912 | 122 | |
af8a293f | 123 | =head2 Updated Modules and Pragmata |
f909f9f7 | 124 | |
af8a293f | 125 | =over 4 |
a7e63acd SL |
126 | |
127 | =item * | |
128 | ||
af8a293f | 129 | L<XXX> has been upgraded from version A.xx to B.yy. |
a7e63acd | 130 | |
34e79b75 DIM |
131 | =item * |
132 | ||
133 | L<POSIX> has been upgraded from version 1.59 to 1.60. | |
134 | ||
135 | It can now export constants for the C<code> value in the hash passed to the | |
136 | L<sigaction|POSIX/sigaction> handler when using the C<SA_SIGINFO> flag. | |
137 | ||
af8a293f | 138 | =back |
a7e63acd | 139 | |
af8a293f | 140 | =head2 Removed Modules and Pragmata |
a7e63acd | 141 | |
af8a293f | 142 | =over 4 |
a7e63acd SL |
143 | |
144 | =item * | |
145 | ||
af8a293f | 146 | XXX |
f909f9f7 | 147 | |
054383b6 | 148 | =back |
d9d208b8 | 149 | |
c0883d63 SL |
150 | =head1 Documentation |
151 | ||
af8a293f SL |
152 | XXX Changes to files in F<pod/> go here. Consider grouping entries by |
153 | file and be sure to link to the appropriate page, e.g. L<perlfunc>. | |
c0883d63 | 154 | |
af8a293f | 155 | =head2 New Documentation |
d9d208b8 | 156 | |
af8a293f | 157 | XXX Changes which create B<new> files in F<pod/> go here. |
d9d208b8 | 158 | |
af8a293f | 159 | =head3 L<XXX> |
d9d208b8 | 160 | |
af8a293f | 161 | XXX Description of the purpose of the new file here |
523c5db4 | 162 | |
af8a293f | 163 | =head2 Changes to Existing Documentation |
d9d208b8 | 164 | |
af8a293f SL |
165 | XXX Changes which significantly change existing files in F<pod/> go here. |
166 | However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics> | |
167 | section. | |
168 | ||
169 | =head3 L<XXX> | |
d9d208b8 | 170 | |
c0883d63 | 171 | =over 4 |
fd12b912 | 172 | |
c0883d63 | 173 | =item * |
fd12b912 | 174 | |
af8a293f | 175 | XXX Description of the change here |
fd12b912 | 176 | |
c0883d63 | 177 | =back |
d9d208b8 | 178 | |
af8a293f | 179 | =head1 Diagnostics |
d9d208b8 | 180 | |
af8a293f SL |
181 | The following additions or changes have been made to diagnostic output, |
182 | including warnings and fatal error messages. For the complete list of | |
183 | diagnostic messages, see L<perldiag>. | |
d9d208b8 | 184 | |
af8a293f SL |
185 | XXX New or changed warnings emitted by the core's C<C> code go here. Also |
186 | include any changes in L<perldiag> that reconcile it to the C<C> code. | |
fd12b912 | 187 | |
af8a293f | 188 | =head2 New Diagnostics |
fd12b912 | 189 | |
af8a293f SL |
190 | XXX Newly added diagnostic messages go under here, separated into New Errors |
191 | and New Warnings | |
fd12b912 | 192 | |
af8a293f | 193 | =head3 New Errors |
c0883d63 | 194 | |
af8a293f | 195 | =over 4 |
fd12b912 | 196 | |
c0883d63 | 197 | =item * |
d9d208b8 | 198 | |
af8a293f | 199 | XXX L<message|perldiag/"message"> |
d9d208b8 | 200 | |
c0883d63 | 201 | =back |
fd12b912 | 202 | |
af8a293f | 203 | =head3 New Warnings |
fd12b912 | 204 | |
054383b6 | 205 | =over 4 |
fd12b912 DG |
206 | |
207 | =item * | |
208 | ||
af8a293f | 209 | XXX L<message|perldiag/"message"> |
a8c28920 | 210 | |
6c83150b | 211 | =back |
a8c28920 | 212 | |
af8a293f SL |
213 | =head2 Changes to Existing Diagnostics |
214 | ||
215 | XXX Changes (i.e. rewording) of diagnostic messages go here | |
d9d208b8 DG |
216 | |
217 | =over 4 | |
218 | ||
219 | =item * | |
220 | ||
af8a293f | 221 | XXX Describe change here |
d9d208b8 DG |
222 | |
223 | =back | |
224 | ||
af8a293f | 225 | =head1 Utility Changes |
c0883d63 | 226 | |
af8a293f SL |
227 | XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here. |
228 | Most of these are built within the directory F<utils>. | |
054383b6 | 229 | |
af8a293f SL |
230 | [ List utility changes as a =head2 entry for each utility and =item |
231 | entries for each change | |
232 | Use L<XXX> with program names to get proper documentation linking. ] | |
233 | ||
234 | =head2 L<XXX> | |
a8c28920 | 235 | |
6c83150b | 236 | =over 4 |
a8c28920 A |
237 | |
238 | =item * | |
239 | ||
af8a293f | 240 | XXX |
d9d208b8 DG |
241 | |
242 | =back | |
243 | ||
054383b6 | 244 | =head1 Configuration and Compilation |
a8c28920 | 245 | |
af8a293f SL |
246 | XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools |
247 | go here. Any other changes to the Perl build process should be listed here. | |
248 | However, any platform-specific changes should be listed in the | |
249 | L</Platform Support> section, instead. | |
250 | ||
251 | [ List changes as a =item entry ]. | |
252 | ||
6c83150b | 253 | =over 4 |
a8c28920 | 254 | |
6c83150b | 255 | =item * |
a8c28920 | 256 | |
af8a293f | 257 | XXX |
054383b6 | 258 | |
af8a293f SL |
259 | =back |
260 | ||
261 | =head1 Testing | |
262 | ||
263 | XXX Any significant changes to the testing of a freshly built perl should be | |
264 | listed here. Changes which create B<new> files in F<t/> go here as do any | |
265 | large changes to the testing harness (e.g. when parallel testing was added). | |
266 | Changes to existing files in F<t/> aren't worth summarizing, although the bugs | |
267 | that they represent may be covered elsewhere. | |
f83db990 | 268 | |
af8a293f SL |
269 | [ List each test improvement as a =item entry ] |
270 | ||
271 | =over 4 | |
eabfc7bc | 272 | |
0dafb1ce | 273 | =item * |
eabfc7bc | 274 | |
af8a293f | 275 | XXX |
5ea25977 | 276 | |
b3c290c2 TC |
277 | =item * |
278 | ||
279 | The GNU Make makefile for Win32 now supports parallel builds. [perl #126632] | |
280 | ||
281 | =item * | |
282 | ||
283 | You can now build perl with MSVC++ on Win32 using GNU Make. [perl #126632] | |
284 | ||
b26bd9b0 | 285 | =back |
5ea25977 | 286 | |
6c83150b A |
287 | =head1 Platform Support |
288 | ||
af8a293f SL |
289 | XXX Any changes to platform support should be listed in the sections below. |
290 | ||
291 | [ Within the sections, list each platform as a =item entry with specific | |
292 | changes as paragraphs below it. ] | |
293 | ||
294 | =head2 New Platforms | |
295 | ||
296 | XXX List any platforms that this version of perl compiles on, that previous | |
297 | versions did not. These will either be enabled by new files in the F<hints/> | |
298 | directories, or new subdirectories and F<README> files at the top level of the | |
299 | source tree. | |
0517ed38 | 300 | |
6c83150b | 301 | =over 4 |
0517ed38 | 302 | |
af8a293f | 303 | =item XXX-some-platform |
b3d7d865 | 304 | |
af8a293f | 305 | XXX |
b3d7d865 | 306 | |
af8a293f | 307 | =back |
d9d208b8 | 308 | |
af8a293f | 309 | =head2 Discontinued Platforms |
48fbd301 | 310 | |
af8a293f | 311 | XXX List any platforms that this version of perl no longer compiles on. |
48fbd301 | 312 | |
af8a293f | 313 | =over 4 |
f4240379 | 314 | |
af8a293f | 315 | =item XXX-some-platform |
f4240379 | 316 | |
af8a293f | 317 | XXX |
6c83150b | 318 | |
1d6d94ad DG |
319 | =back |
320 | ||
af8a293f SL |
321 | =head2 Platform-Specific Notes |
322 | ||
323 | XXX List any changes for specific platforms. This could include configuration | |
324 | and compilation changes or changes in portability/compatibility. However, | |
325 | changes within modules for platforms should generally be listed in the | |
326 | L</Modules and Pragmata> section. | |
d89ea360 | 327 | |
054383b6 | 328 | =over 4 |
0efe3111 | 329 | |
022b5ce0 | 330 | =item Win32 |
0efe3111 | 331 | |
022b5ce0 TC |
332 | Builds using Microsoft Visual C++ 2003 and earlier no longer produce |
333 | an "INTERNAL COMPILER ERROR" message. [perl #126045] | |
206e921d | 334 | |
af8a293f | 335 | =back |
206e921d | 336 | |
af8a293f | 337 | =head1 Internal Changes |
d9d208b8 | 338 | |
af8a293f SL |
339 | XXX Changes which affect the interface available to C<XS> code go here. Other |
340 | significant internal changes for future core maintainers should be noted as | |
341 | well. | |
342 | ||
343 | [ List each change as a =item entry ] | |
d9d208b8 | 344 | |
af8a293f | 345 | =over 4 |
d9d208b8 DG |
346 | |
347 | =item * | |
348 | ||
af8a293f | 349 | XXX |
d9d208b8 | 350 | |
d89ea360 DD |
351 | =back |
352 | ||
b26bd9b0 | 353 | =head1 Selected Bug Fixes |
eabfc7bc | 354 | |
af8a293f SL |
355 | XXX Important bug fixes in the core language are summarized here. Bug fixes in |
356 | files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>. | |
acedda6e | 357 | |
af8a293f | 358 | [ List each fix as a =item entry ] |
bc5be890 | 359 | |
af8a293f | 360 | =over 4 |
acedda6e | 361 | |
c7052e96 TC |
362 | =item * |
363 | ||
2ff6ae51 | 364 | Line numbers larger than 2**31-1 but less than 2**32 are no longer |
d15ad02e | 365 | returned by caller() as negative numbers. [perl #126991] |
c7052e96 | 366 | |
2ff6ae51 TC |
367 | =item * |
368 | ||
369 | C<< unless ( I<assignment> ) >> now properly warns when syntax | |
370 | warnings are enabled. [perl #127122] | |
371 | ||
42d92f4a TC |
372 | =item * |
373 | ||
374 | Setting an C<ISA> glob to an array reference now properly adds | |
375 | C<isaelem> magic to any existing elements. Previously modifying such | |
376 | an element would not update the ISA cache, so method calls would call | |
377 | the wrong function. Perl would also crash if the C<ISA> glob was | |
378 | destroyed, since new code added in 5.23.7 would try to release the | |
379 | C<isaelem> magic from the elements. [perl #127351] | |
380 | ||
19b46ab5 TC |
381 | =item * |
382 | ||
383 | If a here-doc was found while parsing another operator, the parser had | |
384 | already read end of file, and the here-doc was not terminated, perl | |
385 | could produce an assertion or a segmentation fault. This now reliably | |
386 | complains about the unterminated here-doc. [perl #125540] | |
387 | ||
af8a293f | 388 | =back |
3c84cb84 | 389 | |
af8a293f | 390 | =head1 Known Problems |
d005d3c3 | 391 | |
af8a293f SL |
392 | XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any |
393 | tests that had to be C<TODO>ed for the release would be noted here. Unfixed | |
394 | platform specific bugs also go here. | |
d43e55a3 | 395 | |
af8a293f | 396 | [ List each fix as a =item entry ] |
e685831a | 397 | |
af8a293f | 398 | =over 4 |
e685831a | 399 | |
0701ff00 JH |
400 | =item * |
401 | ||
af8a293f | 402 | XXX |
0701ff00 | 403 | |
054383b6 | 404 | =back |
d9d208b8 | 405 | |
af8a293f | 406 | =head1 Errata From Previous Releases |
0057cacf SL |
407 | |
408 | =over 4 | |
409 | ||
410 | =item * | |
411 | ||
af8a293f SL |
412 | XXX Add anything here that we forgot to add, or were mistaken about, in |
413 | the perldelta of a previous release. | |
0057cacf SL |
414 | |
415 | =back | |
416 | ||
af8a293f | 417 | =head1 Obituary |
5a74572e | 418 | |
af8a293f SL |
419 | XXX If any significant core contributor has died, we've added a short obituary |
420 | here. | |
5a74572e | 421 | |
af8a293f | 422 | =head1 Acknowledgements |
e1ad135d | 423 | |
af8a293f | 424 | XXX Generate this with: |
e1ad135d | 425 | |
af8a293f | 426 | perl Porting/acknowledgements.pl v5.23.7..HEAD |
f5b73711 | 427 | |
44691e6f AB |
428 | =head1 Reporting Bugs |
429 | ||
e08634c5 SH |
430 | If you find what you think is a bug, you might check the articles recently |
431 | posted to the comp.lang.perl.misc newsgroup and the perl bug database at | |
fc4c3cec RS |
432 | L<https://rt.perl.org/> . There may also be information at |
433 | L<http://www.perl.org/> , the Perl Home Page. | |
44691e6f | 434 | |
e08634c5 SH |
435 | If you believe you have an unreported bug, please run the L<perlbug> program |
436 | included with your release. Be sure to trim your bug down to a tiny but | |
437 | sufficient test case. Your bug report, along with the output of C<perl -V>, | |
438 | will be sent off to perlbug@perl.org to be analysed by the Perl porting team. | |
44691e6f AB |
439 | |
440 | If the bug you are reporting has security implications, which make it | |
e08634c5 SH |
441 | inappropriate to send to a publicly archived mailing list, then please send it |
442 | to perl5-security-report@perl.org. This points to a closed subscription | |
443 | unarchived mailing list, which includes all the core committers, who will be | |
444 | able to help assess the impact of issues, figure out a resolution, and help | |
f9001595 | 445 | co-ordinate the release of patches to mitigate or fix the problem across all |
e08634c5 SH |
446 | platforms on which Perl is supported. Please only use this address for |
447 | security issues in the Perl core, not for modules independently distributed on | |
448 | CPAN. | |
44691e6f AB |
449 | |
450 | =head1 SEE ALSO | |
451 | ||
e08634c5 SH |
452 | The F<Changes> file for an explanation of how to view exhaustive details on |
453 | what changed. | |
44691e6f AB |
454 | |
455 | The F<INSTALL> file for how to build Perl. | |
456 | ||
457 | The F<README> file for general stuff. | |
458 | ||
459 | The F<Artistic> and F<Copying> files for copyright information. | |
460 | ||
461 | =cut |