This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
update Module::CoreList for v5.19.2 release
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
38663f11
DG
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.19.2
e128ab2c 9
4eabcf70 10=head1 DESCRIPTION
6db9054f 11
38663f11 12This document describes differences between the 5.19.1 release and the 5.19.2
e08634c5 13release.
6db9054f 14
38663f11
DG
15If you are upgrading from an earlier release such as 5.19.0, first read
16L<perl5191delta>, which describes differences between 5.19.0 and 5.19.1.
42bff0d9 17
38663f11 18=head1 Notice
42bff0d9 19
38663f11 20XXX Any important notices here
d69d1f92 21
38663f11 22=head1 Core Enhancements
287d2d21 23
38663f11
DG
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.
287d2d21 27
ba90f48b
FC
28=head2 More consistent prototype parsing
29
30Multiple semicolons in subroutine prototypes have long been tolerated and
31treated as a single semicolon. There was one case where this did not
32happen. A subroutine whose prototype begins with "*" or ";*" can affect
33whether a bareword is considered a method name or sub call. This now
34applies also to ";;;*".
35
36Whitespace has long been allowed inside subroutine prototypes, so
56e1cca1
RS
37C<sub( $ $ )> is equivalent to C<sub($$)>, but until now it was stripped
38when the subroutine was parsed. Hence, whitespace was I<not> allowed in
39prototypes set by C<Scalar::Util::set_prototype>. Now it is permitted,
40and the parser no longer strips whitespace. This means
41C<prototype &mysub> returns the original prototype, whitespace and all.
287d2d21 42
38663f11 43=head1 Security
42bff0d9 44
38663f11
DG
45XXX Any security-related notices go here. In particular, any security
46vulnerabilities closed should be noted here rather than in the
47L</Selected Bug Fixes> section.
42bff0d9 48
38663f11 49[ List each security issue as a =head2 entry ]
42bff0d9 50
38663f11 51=head1 Incompatible Changes
42bff0d9 52
38663f11 53XXX For a release on a stable branch, this section aspires to be:
42bff0d9 54
38663f11
DG
55 There are no changes intentionally incompatible with 5.XXX.XXX
56 If any exist, they are bugs, and we request that you submit a
57 report. See L</Reporting Bugs> below.
42bff0d9 58
38663f11 59[ List each incompatible change as a =head2 entry ]
42bff0d9 60
38663f11 61=head1 Deprecations
42bff0d9 62
38663f11 63XXX Any deprecated features, syntax, modules etc. should be listed here.
42bff0d9 64
38663f11 65=head2 Module removals
42bff0d9 66
38663f11 67XXX Remove this section if inapplicable.
42bff0d9 68
8c33633d
FC
69The following modules will be removed from the core distribution in a
70future release, and will at that time need to be installed from CPAN.
71Distributions on CPAN which require these modules will need to list them as
72prerequisites.
42bff0d9 73
38663f11 74The core versions of these modules will now issue C<"deprecated">-category
8c33633d 75warnings to alert you to this fact. To silence these deprecation warnings,
38663f11 76install the modules in question from CPAN.
42bff0d9 77
38663f11 78Note that these are (with rare exceptions) fine modules that you are encouraged
8c33633d 79to continue to use. Their disinclusion from core primarily hinges on their
38663f11
DG
80necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
81not usually on concerns over their design.
42bff0d9 82
38663f11 83=over
42bff0d9 84
38663f11
DG
85XXX Note that deprecated modules should be listed here even if they are listed
86as an updated module in the L</Modules and Pragmata> section.
42bff0d9 87
38663f11 88=back
42bff0d9 89
38663f11 90[ List each other deprecation as a =head2 entry ]
42bff0d9 91
38663f11 92=head1 Performance Enhancements
42bff0d9 93
38663f11
DG
94XXX Changes which enhance performance without changing behaviour go here.
95There may well be none in a stable release.
42bff0d9 96
38663f11 97[ List each enhancement as a =item entry ]
42bff0d9 98
38663f11 99=over 4
42bff0d9
DG
100
101=item *
102
38663f11 103XXX
42bff0d9 104
38663f11 105=back
42bff0d9 106
38663f11 107=head1 Modules and Pragmata
42bff0d9 108
38663f11
DG
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>, which prints stub
112entries to STDOUT. Results can be pasted in place of the '=head2' entries
113below. A paragraph summary for important changes should then be added by hand.
114In an ideal world, dual-life modules would have a F<Changes> file that could be
115cribbed.
42bff0d9 116
38663f11 117[ Within each section, list entries as a =item entry ]
42bff0d9 118
38663f11 119=head2 New Modules and Pragmata
42bff0d9 120
38663f11 121=over 4
42bff0d9
DG
122
123=item *
124
38663f11 125XXX
42bff0d9 126
38663f11 127=back
42bff0d9 128
38663f11 129=head2 Updated Modules and Pragmata
42bff0d9 130
38663f11 131=over 4
42bff0d9
DG
132
133=item *
134
893b07a1
NC
135L<ExtUtils::Embed> has been upgraded from version 1.30 to 1.31
136
137The generated C<C> code now incorporates bug fixes present in
138F<miniperlmain.c>, and has whitespace changes. It now uses
139C<#include "..."> for header files instead of C<< #include <...> >>.
140This should not make any difference, unless programs embedding C<libperl>
141happen to have local and incompatible files named F<EXTERN.h>, F<XSUB.h> or
142F<perl.h>, as these will now be picked up instead of the installed Perl
143headers.
144
1eb53836
NC
145The C<canon()> function now correctly handles packages with multiple C<::>
146separators when the I<$as> parameter is not I</>. Given that it used to
147generate strings which would likely be syntax errors or pathnames instead of
148filenames, we infer that from the complete lack of bug reports no-one was
149using this functionality. (C<ExtUtils::Miniperl> is now using it.)
150
893b07a1
NC
151=item *
152
153L<ExtUtils::Miniperl> has been upgraded and given a version of 1.
154Previously it did not have a version number.
155
156C<writemain()> now takes an optional first argument. A reference to a scalar
157is treated as a filename to be opened and written to. Any other reference is
158used as the filehandle to write to. Otherwise the existing default remains,
159to write to C<STDOUT>.
160
161C<writemain()> has been refactored to use functions from L<ExtUtils::Embed>,
162reducing code size and duplication. The internal function C<canon()> has been
163deleted.
164
165=item *
166
70ba8092
TC
167L<POSIX> has been upgraded from version 1.33 to 1.34.
168
169C<POSIX::AUTOLOAD> will no longer infinitely recurse if the shared
170object fails to load.
42bff0d9 171
6e4979f3
TC
172=item *
173
174L<Storable> has been upgraded from version 2.43 to 2.44.
175
176Calling C<STORABLE_attach> hooks no longer leaks memory. [perl #118829]
177
38663f11 178=back
42bff0d9 179
38663f11 180=head2 Removed Modules and Pragmata
42bff0d9 181
38663f11 182=over 4
42bff0d9
DG
183
184=item *
185
38663f11 186XXX
42bff0d9 187
38663f11 188=back
42bff0d9 189
38663f11 190=head1 Documentation
42bff0d9 191
38663f11
DG
192XXX Changes to files in F<pod/> go here. Consider grouping entries by
193file and be sure to link to the appropriate page, e.g. L<perlfunc>.
42bff0d9 194
38663f11 195=head2 New Documentation
42bff0d9 196
38663f11 197XXX Changes which create B<new> files in F<pod/> go here.
42bff0d9 198
38663f11 199=head3 L<XXX>
42bff0d9 200
38663f11 201XXX Description of the purpose of the new file here
42bff0d9 202
38663f11 203=head2 Changes to Existing Documentation
42bff0d9 204
38663f11
DG
205XXX Changes which significantly change existing files in F<pod/> go here.
206However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
207section.
dbd04185 208
41f6d116 209=head3 L<perlexperiment>
dbd04185 210
38663f11 211=over 4
583aa5c2 212
1fdd5e53
KW
213=item *
214
41f6d116
RS
215Code in regular expressions, regular expression backtracking verbs,
216and lvalue subroutines are no longer listed as experimental. (This
217also affects L<perlre> and L<perlsub>.)
42bff0d9 218
38663f11 219=back
42bff0d9 220
989e4501
FC
221=head3 L<perlfunc>
222
223=over 4
224
225=item *
226
227Since Perl v5.10, it has been possible for subroutines in @INC to return
228a reference to a scalar holding initial source code to prepend to the file.
229This is now documented.
230
231=back
232
38663f11 233=head1 Diagnostics
42bff0d9 234
38663f11
DG
235The following additions or changes have been made to diagnostic output,
236including warnings and fatal error messages. For the complete list of
237diagnostic messages, see L<perldiag>.
42bff0d9 238
38663f11
DG
239XXX New or changed warnings emitted by the core's C<C> code go here. Also
240include any changes in L<perldiag> that reconcile it to the C<C> code.
42bff0d9 241
38663f11 242=head2 New Diagnostics
42bff0d9 243
38663f11
DG
244XXX Newly added diagnostic messages go under here, separated into New Errors
245and New Warnings
42bff0d9 246
38663f11 247=head3 New Errors
42bff0d9 248
38663f11 249=over 4
42bff0d9
DG
250
251=item *
252
38663f11 253XXX L<message|perldiag/"message">
1fdd5e53 254
583aa5c2
RS
255=back
256
38663f11 257=head3 New Warnings
583aa5c2 258
38663f11 259=over 4
583aa5c2 260
b8a02ff1 261=item *
583aa5c2 262
93c1eebb
FC
263L<Missing ']' in prototype for %s : %s|perldiag/"Missing ']' in prototype
264for %s : %s">
265
266(W illegalproto) A grouping was started with C<[> but never closed with
267C<]>.
583aa5c2 268
b8a02ff1 269=back
583aa5c2 270
38663f11 271=head2 Changes to Existing Diagnostics
96d496e4 272
38663f11 273XXX Changes (i.e. rewording) of diagnostic messages go here
b8a02ff1 274
38663f11 275=over 4
b8a02ff1
DG
276
277=item *
278
bfb4a93c
FC
279Under rare circumstances, one could get a "Can't coerce readonly REF to
280string" instead of the customary "Modification of a read-only value". This
281alternate error message has been removed.
96d496e4 282
73951195
FC
283=item *
284
285"Ambiguous use of * resolved as operator *": This and similar warnings
286about "%" and "&" used to occur in some circumstances where there was no
287operator of the type cited, so the warning was completely wrong. This has
288been fixed [perl #117535, #76910].
289
1310e590
FC
290=item *
291
292Warnings about malformed subroutine prototypes are now more consistent in
293how the prototypes are rendered. Some of these warnings would truncate
294prototypes containing nulls. In other cases one warning would suppress
57ae4db8
FC
295another. The warning about illegal characters in prototypes no longer says
296"after '_'" if the bad character came before the underscore.
1310e590 297
e727f86a
FC
298=item *
299
66d813ca
FC
300L<Perl folding rules are not up-to-date for 0x%X; please use the perlbug
301utility to report; in regex; marked by <-- HERE in
302mE<sol>%sE<sol>|perldiag/"Perl folding rules are not up-to-date for 0x%X;
303please use the perlbug utility to report; in regex; marked by <-- HERE in
304m/%s/">
e727f86a
FC
305
306This message is now only in the regexp category, and not in the deprecated
307category. It is still a default (i.e., severe) warning [perl #89648].
308
81ca6d44
FC
309=item *
310
311The debugger's "n" command now respects lvalue subroutines and steps over
312them [perl #118839].
313
96d496e4
RS
314=back
315
38663f11 316=head1 Utility Changes
d7bfa554 317
38663f11
DG
318XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
319Most of these are built within the directories F<utils> and F<x2p>.
d7bfa554 320
38663f11
DG
321[ List utility changes as a =head3 entry for each utility and =item
322entries for each change
323Use L<XXX> with program names to get proper documentation linking. ]
d7bfa554 324
38663f11 325=head3 L<XXX>
583aa5c2
RS
326
327=over 4
1993add8 328
e9912eaa 329=item *
ec985017 330
38663f11 331XXX
583aa5c2
RS
332
333=back
334
38663f11 335=head1 Configuration and Compilation
583aa5c2 336
38663f11
DG
337XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
338go here. Any other changes to the Perl build process should be listed here.
339However, any platform-specific changes should be listed in the
340L</Platform Support> section, instead.
583aa5c2 341
38663f11 342[ List changes as a =item entry ].
583aa5c2
RS
343
344=over 4
71e6aba6 345
d5f315e8
KW
346=item *
347
e38fc308
NC
348F<installperl> and F<installman>'s option handling has been refactored to use
349L<Getopt::Long>. Both are used by the F<Makefile> C<install> targets, and
350are not installed, so these changes are only likely to affect custom
351installation scripts.
352
353=over 4
354
355=item *
356
357single letter options now also have long names
358
359=item *
360
361invalid options are now rejected
362
363=item *
364
365command line arguments that are not options are now rejected
366
367=item *
368
369Each now has a C<--help> option to display the usage message.
370
371=back
372
373The behaviour for all valid documented invocations is unchanged.
d5f315e8 374
337fb649 375=back
2426c394 376
38663f11 377=head1 Testing
357b01df 378
38663f11
DG
379XXX Any significant changes to the testing of a freshly built perl should be
380listed here. Changes which create B<new> files in F<t/> go here as do any
381large changes to the testing harness (e.g. when parallel testing was added).
382Changes to existing files in F<t/> aren't worth summarizing, although the bugs
383that they represent may be covered elsewhere.
4724da03 384
38663f11 385[ List each test improvement as a =item entry ]
357b01df 386
583aa5c2 387=over 4
357b01df 388
583aa5c2 389=item *
357b01df 390
38663f11 391XXX
4724da03 392
38663f11 393=back
4724da03 394
38663f11 395=head1 Platform Support
4724da03 396
38663f11 397XXX Any changes to platform support should be listed in the sections below.
4724da03 398
38663f11
DG
399[ Within the sections, list each platform as a =item entry with specific
400changes as paragraphs below it. ]
4724da03 401
38663f11 402=head2 New Platforms
4724da03 403
38663f11
DG
404XXX List any platforms that this version of perl compiles on, that previous
405versions did not. These will either be enabled by new files in the F<hints/>
406directories, or new subdirectories and F<README> files at the top level of the
407source tree.
4724da03 408
38663f11 409=over 4
357b01df 410
38663f11 411=item XXX-some-platform
583aa5c2 412
38663f11 413XXX
4724da03 414
38663f11 415=back
583aa5c2 416
583aa5c2
RS
417=head2 Discontinued Platforms
418
38663f11
DG
419XXX List any platforms that this version of perl no longer compiles on.
420
583aa5c2
RS
421=over 4
422
38663f11 423=item XXX-some-platform
d7bfa554 424
38663f11 425XXX
d7bfa554 426
583aa5c2
RS
427=back
428
429=head2 Platform-Specific Notes
430
38663f11
DG
431XXX List any changes for specific platforms. This could include configuration
432and compilation changes or changes in portability/compatibility. However,
433changes within modules for platforms should generally be listed in the
434L</Modules and Pragmata> section.
583aa5c2 435
38663f11 436=over 4
a34da6c4 437
3a0b4597 438=item MidnightBSD
a34da6c4 439
3a0b4597 440C<objformat> was removed from version 0.4-RELEASE of MidnightBSD and had been
8c33633d
FC
441deprecated on earlier versions. This caused the build environment to be
442erroneously configured for C<a.out> rather than C<elf>. This has been now
3a0b4597 443been corrected.
a34da6c4 444
583aa5c2
RS
445=back
446
447=head1 Internal Changes
448
38663f11
DG
449XXX Changes which affect the interface available to C<XS> code go here. Other
450significant internal changes for future core maintainers should be noted as
451well.
583aa5c2 452
38663f11 453[ List each change as a =item entry ]
583aa5c2 454
38663f11 455=over 4
1de7c8e6 456
d7bfa554
DG
457=item *
458
eca6ff41
NC
459The Makefile shortcut targets for many rarely (or never) used testing and
460profiling targets have been removed, or merged into the only other Makefile
8c33633d 461target that uses them. Specifically, these targets are gone, along with
eca6ff41
NC
462documentation that referenced them or explained how to use them:
463
9d4d67dd
NC
464 check.third check.utf16 check.utf8 coretest minitest.prep
465 minitest.utf16 perl.config.dashg perl.config.dashpg
466 perl.config.gcov perl.gcov perl.gprof perl.gprof.config
467 perl.pixie perl.pixie.atom perl.pixie.config perl.pixie.irix
468 perl.third perl.third.config perl.valgrind.config purecovperl
469 pureperl quantperl test.deparse test.taintwarn test.third
470 test.torture test.utf16 test.utf8 test_notty.deparse
471 test_notty.third test_notty.valgrind test_prep.third
472 test_prep.valgrind torturetest ucheck ucheck.third ucheck.utf16
473 ucheck.valgrind utest utest.third utest.utf16 utest.valgrind
eca6ff41
NC
474
475It's still possible to run the relevant commands by "hand" - no underlying
476functionality has been removed.
d7bfa554 477
9c800862
KW
478=item *
479
480It is now possible to keep Perl from initializing locale handling.
481For the most part, Perl doesn't pay attention to locale. (See
482L<perllocale>.) Nonetheless, until now, on startup, it has always
483initialized locale handling to the system default, just in case the
484program being executed ends up using locales. (This is one of the first
485things a locale-aware program should do, long before Perl knows if it
486will actually be needed or not.) This works well except when Perl is
487embedded in another application which wants a locale that isn't the
488system default. Now, if the environment variable
489C<PERL_SKIP_LOCALE_INIT> is set at the time Perl is started, this
490initialization step is skipped. Prior to this, on Windows platforms,
491the only workaround for this deficiency was to use a hacked-up copy of
492internal Perl code. Applications that need to use older Perls can
493discover if the embedded Perl they are using needs the workaround by
494testing that the C preprocessor symbol C<HAS_SKIP_LOCALE_INIT> is not
495defined. (RT #38193)
496
aaf54772
FC
497=item *
498
499C<BmRARE> and C<BmPREVIOUS> have been removed. They were not used anywhere
500and are not part of the API. For XS modules, they are now #defined as 0.
501
b7bbd8b6
FC
502=item *
503
504C<sv_force_normal>, which usually croaks on read-only values, used to allow
505read-only values to be modified at compile time. This has been changed to
506croak on read-only values regardless. This change uncovered several core
507bugs.
508
583aa5c2
RS
509=back
510
511=head1 Selected Bug Fixes
512
38663f11
DG
513XXX Important bug fixes in the core language are summarized here. Bug fixes in
514files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
acfe52c8 515
38663f11 516[ List each fix as a =item entry ]
a2ef523e 517
38663f11 518=over 4
42dd67ca 519
e0d46238
FC
520=item *
521
52c411a5 522There have been several fixes related to Perl's handling of locales. perl
9c800862
KW
523#38193 was described above in L</Internal Changes>.
524Also fixed is #112208 in which the error string in C<$!> displayed as
525garbage in many UTF-8 locales;
526#118197, where the radix (decimal point) character had to be an ASCII
527character (which doesn't work for some non-Western languages);
52c411a5 528and #115808, in which C<POSIX::setlocale()> on failure returned an
9c800862
KW
529C<undef> which didn't warn about not being defined even if those
530warnings were enabled.
d7bfa554 531
81d3ed5a
FC
532=item *
533
534The dtrace sub-entry probe now works with lexical subs, instead of
535crashing [perl #118305].
536
0b023496
FC
537=item *
538
539Compiling a C<split> operator whose third argument is a named constant
540evaulating to 0 no longer causes the constant's value to change.
541
e11f653d
FC
542=item *
543
544A named constant used as the second argument to C<index> no longer gets
5e0164b2
FC
545coerced to a string if it is a reference, regular expression, dualvar, etc.
546
547=item *
548
549A named constant evaluating to the undefined value used as the second
550argument to C<index> no longer produces "uninitialized" warnings at compile
551time. It will still produce them at run time.
e11f653d 552
8be8cdec
FC
553=item *
554
555When a scalar was returned from a subroutine in @INC, the referenced scalar
556was magically converted into an IO thingy, possibly resulting in "Bizarre
557copy" errors if that scalar continued to be used elsewhere. Now Perl uses
558an internal copy of the scalar instead.
559
07a522a5
FC
560=item *
561
562Undefining an inlinable lexical subroutine (C<my sub foo() { 42 } undef
563&foo>) would result in a crash if warnings were turned on.
564
71b4007c
FC
565=item *
566
567Certain uses of the C<sort> operator are optimised to modify an array in
568place, such as C<@a = sort @a>. During the sorting, the array is made
569read-only. If a sort block should happen to die, then the array remained
570read-only even outside the C<sort>. This has been fixed.
571
f6b1d2f5
FC
572=item *
573
574C<$a> and C<$b> inside a sort block are aliased to the actual arguments to
575C<sort>, so they can be modified through those two variables. This did not
576always work, e.g., for lvalue subs and C<$#ary>, and probably many other
577operators. It works now.
578
7e4f209b
FC
579=item *
580
581The arguments to C<sort> are now all in list context. If the C<sort>
582itself were called in void or scalar context, then I<some>, but not all, of
583the arguments used to be in void or scalar context.
584
558673e6
FC
585=item *
586
587Subroutine prototypes with Unicode characters above U+00FF were getting
588mangled during closure cloning. This would happen with subroutines closing
589over lexical variables declared outside, and with lexical subs.
590
47a7c93d
FC
591=item *
592
593In regular expressions containing multiple code blocks, the values of
594C<$1>, C<$2>, etc., set by nested regular expression calls would leak from
595one block to the next. Now these variables always refer to the outer
596regular expression at the start of an embedded block [perl #117917].
597
b5a80c26
FC
598=item *
599
600C<UNIVERSAL::can> now treats its first argument the same way that method
601calls do: Typeglobs and glob references with non-empty IO slots are treated
602as handles, and strings are treated as filehandles, rather than packages,
603if a handle with that name exists [perl #113932].
604
7f1d4316
FC
605=item *
606
607Method calls on typeglobs (e.g., C<< *ARGV->getline >>) used to stringify
608the typeglob and then look it up again. Combined with changes in Perl
6095.18.0, this allowed C<< *foo->bar >> to call methods on the "foo" package
610(like C<< foo->bar >>). In some cases it could cause the method to be
611called on the wrong handle. Now a typeglob argument is treated as a
612handle (just like C<< (\*foo)->bar >>), or, if its IO slot is empty, an
613error is raised.
614
02bef66e
FC
615=item *
616
617Under copy-on-write builds (the default as of 5.19.1) C<${'_<-e'}[0]> no
618longer gets mangled. This is the first line of input saved for the
619debugger's use for one-liners [perl #118627].
620
d30fb844
FC
621=item *
622
623Assigning a vstring to a tied variable or to a subroutine argument aliased
624to a nonexistent hash or array element now works, without flattening the
625vstring into a regular string.
626
21c01741
FC
627=item *
628
7d279cab
FC
629C<pos>, C<tie>, C<tied> and C<untie> did not work
630properly on subroutine arguments aliased to nonexistent
631hash and array elements [perl #77814, #27010].
21c01741 632
467582e8
FC
633=item *
634
635The C<< => >> fat arrow operator can now quote built-in keywords even if it
636occurs on the next line, making it consistent with how it treats other
637barewords.
638
38663f11 639=back
d7bfa554 640
38663f11 641=head1 Known Problems
6810f0ad 642
38663f11
DG
643XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
644tests that had to be C<TODO>ed for the release would be noted here. Unfixed
645platform specific bugs also go here.
6810f0ad 646
38663f11 647[ List each fix as a =item entry ]
0e417e4d 648
38663f11 649=over 4
14fd9356
FC
650
651=item *
652
be456e36
FC
653One of the bug fixes has accidentally thrown line numbers off in rare
654cases, causing test failures for some CPAN modules. This will hopefully be
655fixed soon [perl #118931].
0e417e4d 656
38663f11 657=back
583aa5c2 658
38663f11 659=head1 Obituary
583aa5c2 660
38663f11
DG
661XXX If any significant core contributor has died, we've added a short obituary
662here.
583aa5c2 663
583aa5c2 664=head1 Acknowledgements
a75569c0 665
38663f11
DG
666XXX Generate this with:
667
668 perl Porting/acknowledgements.pl v5.19.1..HEAD
f5b73711 669
44691e6f
AB
670=head1 Reporting Bugs
671
e08634c5
SH
672If you find what you think is a bug, you might check the articles recently
673posted to the comp.lang.perl.misc newsgroup and the perl bug database at
674http://rt.perl.org/perlbug/ . There may also be information at
675http://www.perl.org/ , the Perl Home Page.
44691e6f 676
e08634c5
SH
677If you believe you have an unreported bug, please run the L<perlbug> program
678included with your release. Be sure to trim your bug down to a tiny but
679sufficient test case. Your bug report, along with the output of C<perl -V>,
680will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
44691e6f
AB
681
682If the bug you are reporting has security implications, which make it
e08634c5
SH
683inappropriate to send to a publicly archived mailing list, then please send it
684to perl5-security-report@perl.org. This points to a closed subscription
685unarchived mailing list, which includes all the core committers, who will be
686able to help assess the impact of issues, figure out a resolution, and help
f9001595 687co-ordinate the release of patches to mitigate or fix the problem across all
e08634c5
SH
688platforms on which Perl is supported. Please only use this address for
689security issues in the Perl core, not for modules independently distributed on
690CPAN.
44691e6f
AB
691
692=head1 SEE ALSO
693
e08634c5
SH
694The F<Changes> file for an explanation of how to view exhaustive details on
695what changed.
44691e6f
AB
696
697The F<INSTALL> file for how to build Perl.
698
699The F<README> file for general stuff.
700
701The F<Artistic> and F<Copying> files for copyright information.
702
703=cut