This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove reference to obsolete threads version in Porting/cmpVERSION.pl
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
39c4a6cf
PM
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.21.4
c68523cb 9
238894db 10=head1 DESCRIPTION
c68523cb 11
39c4a6cf 12This document describes differences between the 5.21.3 release and the 5.21.4
238894db 13release.
c68523cb 14
39c4a6cf
PM
15If you are upgrading from an earlier release such as 5.21.2, first read
16L<perl5213delta>, which describes differences between 5.21.2 and 5.21.3.
7065301c 17
39c4a6cf 18=head1 Notice
7e957246 19
39c4a6cf 20XXX Any important notices here
7e957246 21
39c4a6cf 22=head1 Core Enhancements
f88f10f5 23
39c4a6cf
PM
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.
21f3b41e 27
39c4a6cf 28[ List each enhancement as a =head2 entry ]
f88f10f5 29
5b319db8
JH
30=head2 Infinity and NaN (not-a-number) handling improved
31
32Floating point values are able to hold the special values infinity
33(also -infinity), and NaN (not-a-number). Now we more robustly recognize
34and propagate the value in computations, and on output normalize them
35to C<Inf> and C<NaN>.
36
019bf663 37See also the L<POSIX> enhancements.
5b319db8 38
0346c3a9 39=head1 Security
7e957246 40
39c4a6cf
PM
41XXX Any security-related notices go here. In particular, any security
42vulnerabilities closed should be noted here rather than in the
43L</Selected Bug Fixes> section.
13900f93 44
39c4a6cf 45[ List each security issue as a =head2 entry ]
8bdb3f93 46
13900f93 47=head1 Incompatible Changes
8bdb3f93 48
39c4a6cf 49XXX For a release on a stable branch, this section aspires to be:
1178d2cf 50
39c4a6cf
PM
51 There are no changes intentionally incompatible with 5.XXX.XXX
52 If any exist, they are bugs, and we request that you submit a
53 report. See L</Reporting Bugs> below.
1178d2cf 54
39c4a6cf 55[ List each incompatible change as a =head2 entry ]
f6f3144e 56
2b03450b
FC
57=head2 Changes to the C<*> prototype
58
59The C<*> character in a subroutine's prototype used to allow barewords
60to take precedence over most, but not all subroutines. It was never
61consistent and exhibited buggy behaviour.
62
63Now it has been changed, so subroutines always take precedence over
64barewords, which brings it into conformity with similarly prototyped
65built-in functions:
66
67 sub splat($) { ... }
68 sub foo { ... }
69 splat(foo); # now always splat(foo())
70 splat(bar); # still splat('bar') as before
71 close(foo); # close(foo())
72 close(bar); # close('bar')
73
39c4a6cf 74=head1 Deprecations
7065301c 75
39c4a6cf 76XXX Any deprecated features, syntax, modules etc. should be listed here.
7065301c 77
39c4a6cf 78=head2 Module removals
b3e82ed1 79
39c4a6cf 80XXX Remove this section if inapplicable.
ca58223b 81
39c4a6cf
PM
82The following modules will be removed from the core distribution in a
83future release, and will at that time need to be installed from CPAN.
84Distributions on CPAN which require these modules will need to list them as
85prerequisites.
ca58223b 86
39c4a6cf
PM
87The core versions of these modules will now issue C<"deprecated">-category
88warnings to alert you to this fact. To silence these deprecation warnings,
89install the modules in question from CPAN.
23b03637 90
39c4a6cf
PM
91Note that these are (with rare exceptions) fine modules that you are encouraged
92to continue to use. Their disinclusion from core primarily hinges on their
93necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
94not usually on concerns over their design.
23b03637 95
39c4a6cf 96=over
85e8fb10 97
39c4a6cf 98=item XXX
85e8fb10 99
39c4a6cf
PM
100XXX Note that deprecated modules should be listed here even if they are listed
101as an updated module in the L</Modules and Pragmata> section.
134f90c2 102
39c4a6cf 103=back
134f90c2 104
39c4a6cf 105[ List each other deprecation as a =head2 entry ]
ff433f2d 106
39c4a6cf 107=head1 Performance Enhancements
ff433f2d 108
39c4a6cf
PM
109XXX Changes which enhance performance without changing behaviour go here.
110There may well be none in a stable release.
134f90c2 111
39c4a6cf 112[ List each enhancement as a =item entry ]
134f90c2 113
39c4a6cf 114=over 4
7d19f6a1 115
7d19f6a1
PM
116=item *
117
4f81ab9c
FC
118Subroutines with an empty prototype and bodies containing just C<undef> are
119now eligible for inlining. [perl #122728]
55e8b286 120
07600c14
FC
121=item *
122
123Subroutines in packages no longer need to carry typeglobs around with them.
124Declaring a subroutine will now put a simple sub reference in the stash if
125possible, saving memory. The typeglobs still notionally exist, so
126accessing them will cause the subroutine reference to be upgraded to a
127typeglob. This optimisation does not currently apply to XSUBs or exported
128subroutines, and method calls will undo it, since they cache things in
129typeglobs. [perl #120441]
130
39c4a6cf 131=back
55e8b286 132
39c4a6cf 133=head1 Modules and Pragmata
d99849ae 134
39c4a6cf
PM
135XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
136go here. If Module::CoreList is updated, generate an initial draft of the
137following sections using F<Porting/corelist-perldelta.pl>. A paragraph summary
138for important changes should then be added by hand. In an ideal world,
139dual-life modules would have a F<Changes> file that could be cribbed.
d99849ae 140
39c4a6cf 141[ Within each section, list entries as a =item entry ]
ff433f2d 142
39c4a6cf 143=head2 New Modules and Pragmata
ff433f2d 144
39c4a6cf 145=over 4
ff433f2d
PM
146
147=item *
148
39c4a6cf 149XXX
0bb39c26 150
39c4a6cf 151=back
0bb39c26 152
39c4a6cf 153=head2 Updated Modules and Pragmata
9c97a342 154
39c4a6cf 155=over 4
d99849ae
PM
156
157=item *
158
c37b2ad0
SH
159L<Archive::Tar> has been upgraded from version 2.00 to 2.02.
160
161Tests can now be run in parallel.
162
163=item *
164
07600c14
FC
165L<B> has been upgraded from version 1.50 to 1.51.
166
167It provides a new C<B::safename> function, based on the existing
168C<< B::GV->SAFENAME >>, that converts "\cOPEN" to "^OPEN".
6ab3666b 169
233a4069
JK
170=item *
171
d0ab07ee
JK
172L<B::Concise> has been upgraded from version 0.992 to 0.993.
173
608e531f
SH
174=item *
175
65452717
FC
176L<B::Deparse> has been upgraded from version 1.27 to 1.28.
177
178It now deparses C<our(I<LIST>)> and typed lexical (C<my Dog $spot>)
179correctly.
180
181=item *
182
608e531f 183L<CPAN::Meta::Requirements> has been upgraded from version 2.126 to 2.128.
74d5bfab
AS
184
185=item *
186
187L<ExtUtils::CBuilder> has been upgraded from version 0.280216 to 0.280219.
188[perl #122675].
189
d0ab07ee
JK
190=item *
191
39091b75
JK
192L<ExtUtils::Manifest> has been upgraded from version 1.65 to 1.66.
193[perl #122415].
194
195=item *
196
ecd53122
JK
197L<ExtUtils::ParseXS>: Documentation has been added to
198F<ExtUtils-ParseXS/lib/perlxs.pod> concerning handling of locales when writing
199XS code.
200
201=item *
202
9eace98c
JK
203L<File::Find> has been upgraded from version 1.27 to 1.28.
204
205C<find()> and C<finddepth()> will now warn if passed inappropriate or
206misspelled options.
207
208=item *
209
210L<Getopt::Std> has been upgraded from version 1.10 to 1.11.
211
212=item *
213
d0ab07ee
JK
214L<HTTP::Tiny> has been upgraded from version 0.047 to 0.048.
215
216=item *
217
218L<Module::CoreList> has been upgraded from version 5.021003 to 5.021004.
219
220=item *
221
222L<POSIX> has been upgraded from version 1.42 to 1.43.
223
5b319db8
JH
224The C99 math functions and constants (for example acosh, round,
225M_E, M_PI) have been added.
226
d0ab07ee
JK
227=item *
228
229L<Pod::Perldoc> has been upgraded from version 3.23 to 3.24.
230
231=item *
232
46274848
SH
233Scalar-List-Utils has been upgraded from version 1.40 to 1.41.
234
235=item *
236
d0ab07ee
JK
237L<constant> has been upgraded from version 1.31 to 1.32.
238
bfc60ea2
FC
239It now accepts fully-qualified constant names, allowing constants to be
240defined in packages other than the caller.
241
d0ab07ee
JK
242=item *
243
244L<threads> has been upgraded from version 1.95 to 1.96.
245
39c4a6cf 246=back
9c97a342 247
39c4a6cf 248=head2 Removed Modules and Pragmata
d99849ae 249
39c4a6cf 250=over 4
d99849ae 251
ff433f2d
PM
252=item *
253
39c4a6cf 254XXX
ff433f2d 255
13900f93 256=back
aac7f82f 257
13900f93 258=head1 Documentation
aac7f82f 259
39c4a6cf
PM
260XXX Changes to files in F<pod/> go here. Consider grouping entries by
261file and be sure to link to the appropriate page, e.g. L<perlfunc>.
6d9b7c7c 262
39c4a6cf 263=head2 New Documentation
2a395b86 264
39c4a6cf 265XXX Changes which create B<new> files in F<pod/> go here.
2a395b86 266
39c4a6cf 267=head3 L<XXX>
2a395b86 268
39c4a6cf 269XXX Description of the purpose of the new file here
2a395b86 270
39c4a6cf 271=head2 Changes to Existing Documentation
2a395b86 272
39c4a6cf
PM
273XXX Changes which significantly change existing files in F<pod/> go here.
274However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
275section.
276
277=head3 L<XXX>
2a395b86
PM
278
279=over 4
280
281=item *
282
39c4a6cf 283XXX Description of the change here
2a395b86 284
12d22d1f
JK
285=item *
286
287L<perlsyn>: An ambiguity in the documentation of the Ellipsis statement has
288been corrected. [perl #122661]
289
2a395b86
PM
290=back
291
39c4a6cf 292=head1 Diagnostics
2a395b86 293
39c4a6cf
PM
294The following additions or changes have been made to diagnostic output,
295including warnings and fatal error messages. For the complete list of
296diagnostic messages, see L<perldiag>.
2a395b86 297
39c4a6cf
PM
298XXX New or changed warnings emitted by the core's C<C> code go here. Also
299include any changes in L<perldiag> that reconcile it to the C<C> code.
2a395b86 300
39c4a6cf 301=head2 New Diagnostics
0f4a583b 302
39c4a6cf
PM
303XXX Newly added diagnostic messages go under here, separated into New Errors
304and New Warnings
2a395b86 305
39c4a6cf 306=head3 New Errors
2a395b86
PM
307
308=over 4
309
310=item *
311
39c4a6cf 312XXX L<message|perldiag/"message">
2a395b86
PM
313
314=back
315
39c4a6cf 316=head3 New Warnings
2a395b86
PM
317
318=over 4
319
320=item *
321
39c4a6cf 322XXX L<message|perldiag/"message">
2a395b86
PM
323
324=back
6d9b7c7c 325
39c4a6cf
PM
326=head2 Changes to Existing Diagnostics
327
328XXX Changes (i.e. rewording) of diagnostic messages go here
7f55cec0 329
13900f93 330=over 4
7f55cec0
SH
331
332=item *
333
39c4a6cf 334XXX Describe change here
aac7f82f 335
13900f93 336=back
aac7f82f 337
363d3025
FC
338=head2 Diagnostic Removals
339
340=over 4
341
342=item *
343
334464b3
FC
344"Constant is not a FOO reference"
345
346Compile-time checking of constant dereferencing (e.g.,
347C<< my_constant->() >>) has been removed, since it was not taking
348overloading into account. [perl #69456] [perl #122607]
349
350=item *
351
363d3025
FC
352The warning "Ambiguous use of -foo resolved as -&foo()" has been removed.
353There is actually no ambiguity here, and this impedes the use of negated
354constants; e.g., C<-Inf>.
355
ef5a9509
FC
356=item *
357
358The little-known C<my Class $var> syntax (see L<fields> and L<attributes>)
359could get confused in the scope of C<use utf8> if C<Class> were a constant
360whose value contained Latin-1 characters.
361
363d3025
FC
362=back
363
39c4a6cf 364=head1 Utility Changes
091fed7c 365
39c4a6cf
PM
366XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
367Most of these are built within the directory F<utils>.
902c1f75 368
39c4a6cf
PM
369[ List utility changes as a =head2 entry for each utility and =item
370entries for each change
371Use L<XXX> with program names to get proper documentation linking. ]
2901561d 372
39c4a6cf 373=head2 L<XXX>
4594cf53 374
13900f93 375=over 4
96dcbc37
DD
376
377=item *
378
39c4a6cf 379XXX
a1d26ccd 380
39c4a6cf 381=back
a1d26ccd 382
39c4a6cf 383=head1 Configuration and Compilation
7065301c 384
39c4a6cf
PM
385XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
386go here. Any other changes to the Perl build process should be listed here.
387However, any platform-specific changes should be listed in the
388L</Platform Support> section, instead.
58f25ac1 389
39c4a6cf 390[ List changes as a =item entry ].
13900f93
A
391
392=over 4
58f25ac1
MH
393
394=item *
395
39c4a6cf 396XXX
a5873648 397
39c4a6cf 398=back
a5873648 399
39c4a6cf 400=head1 Testing
a5873648 401
39c4a6cf
PM
402XXX Any significant changes to the testing of a freshly built perl should be
403listed here. Changes which create B<new> files in F<t/> go here as do any
404large changes to the testing harness (e.g. when parallel testing was added).
405Changes to existing files in F<t/> aren't worth summarizing, although the bugs
406that they represent may be covered elsewhere.
a5873648 407
39c4a6cf 408[ List each test improvement as a =item entry ]
a5873648 409
39c4a6cf 410=over 4
a5873648
PM
411
412=item *
413
39c4a6cf 414XXX
a5873648 415
58f25ac1
MH
416=back
417
39c4a6cf 418=head1 Platform Support
b10906fb 419
39c4a6cf 420XXX Any changes to platform support should be listed in the sections below.
b10906fb 421
39c4a6cf
PM
422[ Within the sections, list each platform as a =item entry with specific
423changes as paragraphs below it. ]
b10906fb 424
39c4a6cf 425=head2 New Platforms
b10906fb 426
39c4a6cf
PM
427XXX List any platforms that this version of perl compiles on, that previous
428versions did not. These will either be enabled by new files in the F<hints/>
429directories, or new subdirectories and F<README> files at the top level of the
430source tree.
13900f93 431
7065301c 432=over 4
24a38d90 433
39c4a6cf 434=item XXX-some-platform
24a38d90 435
39c4a6cf 436XXX
bb076206 437
7065301c
RS
438=back
439
39c4a6cf 440=head2 Discontinued Platforms
097675bf 441
39c4a6cf 442XXX List any platforms that this version of perl no longer compiles on.
b3211734 443
6e97d65d 444=over 4
b3211734 445
39c4a6cf 446=item XXX-some-platform
7065301c 447
39c4a6cf 448XXX
13900f93 449
39c4a6cf 450=back
7d0ccdba 451
39c4a6cf 452=head2 Platform-Specific Notes
7d0ccdba 453
39c4a6cf
PM
454XXX List any changes for specific platforms. This could include configuration
455and compilation changes or changes in portability/compatibility. However,
456changes within modules for platforms should generally be listed in the
457L</Modules and Pragmata> section.
6e97d65d 458
39c4a6cf 459=over 4
6e97d65d 460
39c4a6cf 461=item XXX-some-platform
6e97d65d 462
39c4a6cf 463XXX
7d0ccdba 464
7065301c
RS
465=back
466
467=head1 Internal Changes
468
39c4a6cf
PM
469XXX Changes which affect the interface available to C<XS> code go here. Other
470significant internal changes for future core maintainers should be noted as
471well.
c9fcb674 472
39c4a6cf 473[ List each change as a =item entry ]
a835cd47 474
39c4a6cf 475=over 4
c1284011 476
6d67525d
FC
477=item *
478
cd949807
FC
479C<save_re_context> no longer does anything and has been moved to
480F<mathoms.c>.
1c43698b 481
07600c14
FC
482=item *
483
484C<cv_name> is a new API function that can be passed a CV or GV. It returns
485an SV containing the name of the subroutine for use in diagnostics.
486[perl #116735] [perl #120441]
487
488=item *
489
490C<cv_set_call_checker_flags> is a new API function that works like
491C<cv_set_call_checker>, except that it allows the caller to specify whether
492the call checker requires a full GV for reporting the subroutine's name, or
493whether it could be passed a CV instead. Whatever value is passed will be
494acceptable to C<cv_name>. C<cv_set_call_checker> guarantees there will be
495a GV, but it may have to create one on the fly, which is inefficient.
496[perl #116735]
497
498=item *
499
500C<CvGV> (which is not part of the API) is now a more complex macro, which
501may call a function and reify a GV. For those cases where is has been used
502as a boolean, C<CvHASGV> has been added, which will return true for CVs
503that notionally have GVs, but without reifying the GV. C<CvGV> also
504returns a GV now for lexical subs. [perl #120441]
505
6d9b7c7c 506=back
c1284011 507
6d9b7c7c 508=head1 Selected Bug Fixes
375f5f06 509
39c4a6cf
PM
510XXX Important bug fixes in the core language are summarized here. Bug fixes in
511files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
512
513[ List each fix as a =item entry ]
514
0346c3a9 515=over 4
375f5f06 516
2884baee
MH
517=item *
518
39c4a6cf 519XXX
2884baee 520
0aa1826c
FC
521=item *
522
6f1a844b
FC
523Constant dereferencing now works correctly for typeglob constants.
524Previously the glob was stringified and its name looked up. Now the glob
525itself is used. [perl #69456]
526
549ea8d4
FC
527=item *
528
529When parsing a funny character ($ @ % &) followed by braces, the parser no
530longer tries to guess whether it is a block or a hash constructor (causing
531a syntax error when it guesses the latter), since it can only be a block.
532
be0006e0
FC
533=item *
534
535C<undef $reference> now frees the referent immediately, instead of hanging
536on to it until the next statement. [perl #122556]
537
1699f5c2
FC
538=item *
539
540Various cases where the name of a sub is used (autoload, overloading, error
541messages) used to crash for lexical subs, but have been fixed.
542
7e8b2071
FC
543=item *
544
545Bareword lookup now tries to avoid vivifying packages if it turns out the
546bareword is not going to be a subroutine name.
547
f9acf899
FC
548=item *
549
550Compilation of anonymous constants (e.g., C<sub () { 3 }>) no longer
551deletes any subroutine named C<__ANON__> in the current package. Not only
552was C<*__ANON__{CODE}> cleared, but there was a memory leak, too. This bug
553goes back to perl 5.8.0.
554
fd26b6f0
FC
555=item *
556
557Stub declarations like C<sub f;> and C<sub f ();> no longer wipe out
558constants of the same name declared by C<use constant>. This bug was
559introduced in perl 5.10.0.
560
499333dc
KW
561=item *
562
563Under some conditions a warning raised in compilation of regular
564expression patterns could be displayed multiple times. This is now
565fixed.
566
8f0cd35a
KW
567=item *
568
569C<qr/[\N{named sequence}]/> now works properly in many instances. Some
570names known to C<\N{...}> refer to a sequence of multiple characters,
571instead of the usual single character. Bracketed character classes
572generally only match single characters, but now special handling has
573been added so that they can match named sequences, but not if the class
574is inverted or the sequence is specified as the beginning or end of a
575range. In these cases, the only behavior change from before is a slight
576rewording of the fatal error message given when this class is part of a
577C<?[...])> construct. When the C<[...]> stands alone, the same
578non-fatal warning as before is raised, and only the first character in
579the sequence is used, again just as before.
580
aa292ef2
FC
581=item *
582
583Tainted constants evaluated at compile time no longer cause unrelated
584statements to become tainted. [perl #122669]
585
739e9bee
FC
586=item *
587
588C<open $$fh, ...>, which vivifies a handle with a name like "main::_GEN_0",
589was not giving the handle the right reference count, so a double free could
590happen.
591
b23b2fdb
FC
592=item *
593
594When deciding that a bareword was a method name, the parser would get
595confused if an "our" sub with the same name existed, and look up the method
596in the package of the "our" sub, instead of the package of the invocant.
597
7d15b1a8
FC
598=item *
599
600The parser no longer gets confused by C<\U=> within a double-quoted string.
601It used to roduce a syntax error, but now compiles it correctly.
602[perl #80368]
603
bbca64cf
KW
604=item *
605
606It has always been the intention for the C<-B> and C<-T> file test
607operators to treat UTF-8 encoded files as text.
608(L<perlfunc|perlfunc/-X FILEHANDLE> has been updated to say this.)
609Previously, it was possible for some files to be considered UTF-8 that
610actually weren't valid UTF-8. This is now fixed. The operators now
611work on EBCDIC platforms as well.
612
0064f8cc
KW
613=item *
614
615Under some conditions warning messages raised during regular expression
616pattern compilation were being output more than once. This has now been
617fixed.
618
6ff8f256
KW
619=item *
620
621A regression has been fixed that was introduced in v5.20.0 (fixed in
622v5.20.1 as well as here) in which a UTF-8 encoded regular expression
623pattern that contains a single ASCII lowercase letter does not match its
624uppercase counterpart. [perl #122655]
625
80cc3290
FC
626=item *
627
628Constant folding could incorrectly suppress warnings if lexical warnings
629(C<use warnings> or C<no warnings>) were not in effect and C<$^W> were
630false at compile time and true at run time.
631
13dd5671
FC
632=item *
633
634Loading UTF8 tables during a regular expression match could cause assertion
635failures under debugging builds if the previous match used the very same
636regular expression. [perl #122747]
637
bdab7676
FC
638=item *
639
640Thread cloning used to work incorrectly for lexical subs, possibly causing
641crashes or double frees on exit.
642
3a085d00
FC
643=item *
644
645Since perl 5.14.0, deleting C<$SomePackage::{__ANON__}> and then undefining
646an anonymous subroutine could corrupt things internally, resulting in
647L<Devel::Peek> crashing or L<B.pm|B> giving nonsensical data. This has
648been fixed.
649
caa66803
FC
650=item *
651
652C<(caller $n)[3]> now reports names of lexical subs, instead of treating
653them as "(unknown)".
654
91766151
FC
655=item *
656
657C<sort subname LIST> now supports lexical subs for the comparison routine.
658
39c4a6cf 659=back
b756670b 660
39c4a6cf 661=head1 Known Problems
b756670b 662
39c4a6cf
PM
663XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
664tests that had to be C<TODO>ed for the release would be noted here. Unfixed
665platform specific bugs also go here.
e917e94e 666
39c4a6cf
PM
667[ List each fix as a =item entry ]
668
669=over 4
e917e94e 670
26dd5fd6
PM
671=item *
672
39c4a6cf 673XXX
26dd5fd6 674
13900f93
A
675=back
676
39c4a6cf 677=head1 Errata From Previous Releases
e831f11a 678
39c4a6cf
PM
679=over 4
680
681=item *
ff433f2d 682
39c4a6cf
PM
683XXX Add anything here that we forgot to add, or were mistaken about, in
684the perldelta of a previous release.
ff433f2d 685
39c4a6cf
PM
686=back
687
688=head1 Obituary
ff433f2d 689
39c4a6cf
PM
690XXX If any significant core contributor has died, we've added a short obituary
691here.
ff433f2d 692
39c4a6cf 693=head1 Acknowledgements
ff433f2d 694
39c4a6cf 695XXX Generate this with:
e831f11a 696
39c4a6cf 697 perl Porting/acknowledgements.pl v5.21.3..HEAD
f5b73711 698
44691e6f
AB
699=head1 Reporting Bugs
700
e08634c5
SH
701If you find what you think is a bug, you might check the articles recently
702posted to the comp.lang.perl.misc newsgroup and the perl bug database at
238894db 703https://rt.perl.org/ . There may also be information at
7ef8b31d 704http://www.perl.org/ , the Perl Home Page.
44691e6f 705
e08634c5
SH
706If you believe you have an unreported bug, please run the L<perlbug> program
707included with your release. Be sure to trim your bug down to a tiny but
708sufficient test case. Your bug report, along with the output of C<perl -V>,
709will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
44691e6f
AB
710
711If the bug you are reporting has security implications, which make it
e08634c5
SH
712inappropriate to send to a publicly archived mailing list, then please send it
713to perl5-security-report@perl.org. This points to a closed subscription
714unarchived mailing list, which includes all the core committers, who will be
715able to help assess the impact of issues, figure out a resolution, and help
f9001595 716co-ordinate the release of patches to mitigate or fix the problem across all
e08634c5
SH
717platforms on which Perl is supported. Please only use this address for
718security issues in the Perl core, not for modules independently distributed on
719CPAN.
44691e6f
AB
720
721=head1 SEE ALSO
722
e08634c5
SH
723The F<Changes> file for an explanation of how to view exhaustive details on
724what changed.
44691e6f
AB
725
726The F<INSTALL> file for how to build Perl.
727
728The F<README> file for general stuff.
729
730The F<Artistic> and F<Copying> files for copyright information.
731
732=cut