This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perldelta: tweak minor thinko
[perl5.git] / pod / perldelta.pod
CommitLineData
44691e6f
AB
1=encoding utf8
2
3=head1 NAME
4
61174fb5
Z
5[ this is a template for a new perldelta file. Any text flagged as
6XXX needs to be processed before release. ]
7
8perldelta - what is new for perl v5.17.1
27f00e3d 9
f9001595 10=head1 DESCRIPTION
2630d42b 11
61174fb5
Z
12This document describes differences between the 5.17.0 release and
13the 5.17.1 release.
7620cb10 14
f9001595 15If you are upgrading from an earlier release such as 5.16.0, first read
61174fb5
Z
16L<perl5170delta>, which describes differences between 5.16.0 and
175.17.0.
d7c042c9 18
61174fb5 19=head1 Notice
2e2b2571 20
61174fb5 21XXX Any important notices here
417a992d 22
61174fb5 23=head1 Core Enhancements
417a992d 24
61174fb5
Z
25XXX New core language features go here. Summarise user-visible core language
26enhancements. Particularly prominent performance optimisations could go
27here, but most should go in the L</Performance Enhancements> section.
417a992d 28
61174fb5 29[ List each enhancement as a =head2 entry ]
075b9d7d 30
028c8719
FC
31=head2 More CORE:: subs
32
33Several more built-in functions have been added as subroutines to the
34CORE:: namespace, namely, those non-overridable keywords that can be
35implemented without custom parsers: C<defined>, C<delete>, C<exists>,
36C<glob>, C<pos>, C<protoytpe>, C<scalar>, C<split>, C<study>, C<undef>,
37
38As some of these have prototypes, C<prototype('CORE::...')> has been
39changed not to make a distinction between overridable and non-overridable
40keywords. This is to make C<prototype('CORE::pos')> consistent with
41C<prototype(&CORE::pos)>.
42
61174fb5 43=head1 Security
075b9d7d 44
61174fb5
Z
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.
cadced9f 48
61174fb5 49[ List each security issue as a =head2 entry ]
30608892 50
61174fb5 51=head1 Incompatible Changes
30608892 52
61174fb5 53XXX For a release on a stable branch, this section aspires to be:
05c8f9ed 54
61174fb5
Z
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.
05c8f9ed 58
e128ab2c
DM
59=head2 C</(?{})/> and C</(??{}> have been heavily reworked.
60
61The implementation of this feature has been almost completely written.
62Although its main intent is is to fix bugs, some behaviours, especially
63related to the scope of lexical variables, will have changed. This is
64described more fully in the L</Selected Bug Fixes> section.
65
fe3193b5
KW
66=head2 C<\N{BELL}> now refers to U+1F514 instead of U+0007
67
68Unicode 6.0 reused the name "BELL" for a different code point than it
69traditionally had meant. Since Perl v5.14, use of this name still
70referred to U+0007, but would raise a deprecated warning. Now, "BELL"
71refers to U+1F514, and the name for U+0007 is "ALERT". All the
72functions in L<charnames> have been correspondingly updated.
05c8f9ed 73
0da72d5e
KW
74=head2 Alphanumeric operators must now be separated from the closing
75delimter of regular expressions
76
77You may no longer write something like:
78
79 m/a/and 1
80
81Instead you must write
82
83 m/a/ and 1
84
85with whitespace separating the operator from the closing delimiter of
86the regular expression. Not having whitespace has resulted in a
87deprecated warning since Perl v5.14.0.
88
61174fb5 89=head1 Deprecations
ef7131e9 90
61174fb5
Z
91XXX Any deprecated features, syntax, modules etc. should be listed here.
92In particular, deprecated modules should be listed here even if they are
93listed as an updated module in the L</Modules and Pragmata> section.
ef7131e9 94
61174fb5 95[ List each deprecation as a =head2 entry ]
ef7131e9 96
61174fb5 97=head1 Performance Enhancements
95ce428c 98
61174fb5
Z
99XXX Changes which enhance performance without changing behaviour go here. There
100may well be none in a stable release.
c11980ad 101
61174fb5 102[ List each enhancement as a =item entry ]
05c8f9ed 103
f9001595 104=over 4
75ff5956 105
2630d42b 106=item *
c11980ad 107
61174fb5 108XXX
53de3ff0 109
61174fb5 110=back
ef7131e9 111
61174fb5 112=head1 Modules and Pragmata
ef7131e9 113
61174fb5
Z
114XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
115go here. If Module::CoreList is updated, generate an initial draft of the
116following sections using F<Porting/corelist-perldelta.pl>, which prints stub
117entries to STDOUT. Results can be pasted in place of the '=head2' entries
118below. A paragraph summary for important changes should then be added by hand.
119In an ideal world, dual-life modules would have a F<Changes> file that could be
120cribbed.
ef7131e9 121
61174fb5 122[ Within each section, list entries as a =item entry ]
435b0bdb 123
61174fb5 124=head2 New Modules and Pragmata
435b0bdb 125
61174fb5 126=over 4
be8dfbf7 127
435b0bdb
FC
128=item *
129
61174fb5 130XXX
83fb037c 131
61174fb5 132=back
83fb037c 133
61174fb5 134=head2 Updated Modules and Pragmata
83fb037c 135
61174fb5 136=over 4
83fb037c
FC
137
138=item *
139
c01b3876
SH
140L<ExtUtils::CBuilder> has been upgraded from version 0.280206 to 0.280208.
141
142Manifest files are now correctly embedded for those versions of VC++ which
143make use of them.
144
145=item *
146
5cefbec9
FC
147L<B> has been upgraded from version 1.35 to 1.36.
148
149C<B::COP::stashlen> has been replaced with C<B::COP::stashoff>.
150
fbdb83f3
FC
151C<B::COP::stashpv> now supports UTF8 package names and embedded nulls.
152
5cefbec9
FC
153=item *
154
4d219cc2
FC
155L<ExtUtils::CBuilder> has been upgraded from version 0.280206 to 0.280208.
156
157It no longer fails when trying to embed manifests on Windows
158[perl #111782, #111798].
159
160=item *
161
ff3f295c
NC
162L<File::DosGlob> has been upgraded from version 1.07 to 1.08.
163
164There are no visible changes, only minor internal refactorings.
165
166=item *
167
c506fc7e
FC
168L<File::Spec::Unix> has been upgraded from version 3.39_02 to 3.39_03.
169
170C<abs2rel> could produce incorrect results when given two relative paths or
171the root directory twice [perl #111510].
172
173=item *
174
d9661073 175L<IO> has been upgraded from version 1.25_06 to 1.25_07.
1c633914 176
d9661073 177C<sync()> can now be called on read-only file handles [perl #64772].
f558db2f 178
66aa79e2
KW
179=item *
180
99565752
NC
181L<Pod::Html> has been upgraded from version 1.15_02 to 1.16.
182
183The option C<--libpods> has been re-instated. It is deprecated, and its use
184does nothing other than issue a warning that it is no longer supported.
185
186=item *
187
d9661073
FC
188L<Unicode::UCD> has been upgraded from version 0.43 to 0.44.
189
66aa79e2
KW
190This adds a function L<all_casefolds()|Unicode::UCD/all_casefolds()>
191that returns all the casefolds.
192
3630f57e
CBW
193=item *
194
195L<Scalar::Util> has been upgraded from version 1.23 to version 1.25.
196
61174fb5 197=back
f558db2f 198
61174fb5 199=head2 Removed Modules and Pragmata
e3329bf0 200
61174fb5 201=over 4
e3329bf0
FC
202
203=item *
204
61174fb5 205XXX
80b8b050 206
61174fb5 207=back
80b8b050 208
61174fb5 209=head1 Documentation
80b8b050 210
61174fb5
Z
211XXX Changes to files in F<pod/> go here. Consider grouping entries by
212file and be sure to link to the appropriate page, e.g. L<perlfunc>.
18d0dfa8 213
61174fb5 214=head2 New Documentation
843331c7 215
61174fb5 216XXX Changes which create B<new> files in F<pod/> go here.
53de3ff0 217
61174fb5 218=head3 L<XXX>
30608892 219
61174fb5 220XXX Description of the purpose of the new file here
30608892 221
61174fb5 222=head2 Changes to Existing Documentation
30608892 223
61174fb5
Z
224XXX Changes which significantly change existing files in F<pod/> go here.
225However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
226section.
c11980ad 227
c7166200 228=head3 L<perlfaq>
ecd144ea 229
f9001595 230=over 4
05c8f9ed
RS
231
232=item *
233
c7166200 234L<perlfaq> has been synchronised with version 5.0150040 from C<CPAN>.
9dea6244 235
204b72a4 236=back
9dea6244 237
61174fb5 238=head1 Diagnostics
ef7131e9 239
61174fb5
Z
240The following additions or changes have been made to diagnostic output,
241including warnings and fatal error messages. For the complete list of
242diagnostic messages, see L<perldiag>.
ef7131e9 243
61174fb5
Z
244XXX New or changed warnings emitted by the core's C<C> code go here. Also
245include any changes in L<perldiag> that reconcile it to the C<C> code.
ef7131e9 246
61174fb5
Z
247[ Within each section, list entries as a =item entry that links to perldiag,
248 e.g.
ef7131e9 249
61174fb5 250 =item *
ef7131e9 251
61174fb5
Z
252 L<Invalid version object|perldiag/"Invalid version object">
253]
80b8b050 254
61174fb5 255=head2 New Diagnostics
80b8b050 256
61174fb5 257XXX Newly added diagnostic messages go here
80b8b050 258
61174fb5 259=head3 New Errors
80b8b050
Z
260
261=over 4
262
263=item *
264
61174fb5 265XXX L<message|perldiag/"message">
80b8b050 266
52deee2e 267=back
5dd80d85 268
f9001595 269=head3 New Warnings
05c8f9ed 270
f9001595 271=over 4
05c8f9ed
RS
272
273=item *
d5dc7001 274
61174fb5 275XXX L<message|perldiag/"message">
30608892 276
f9001595 277=back
05c8f9ed 278
61174fb5
Z
279=head2 Changes to Existing Diagnostics
280
281XXX Changes (i.e. rewording) of diagnostic messages go here
05c8f9ed 282
f9001595 283=over 4
05c8f9ed
RS
284
285=item *
286
61174fb5 287XXX Describe change here
ef7131e9 288
f9001595 289=back
05c8f9ed 290
4a301309
FC
291=head2 Removals of Diagnostics
292
293=over 4
294
a1d2df36
FC
295=item *
296
4a301309
FC
297The "Runaway prototype" warning that occurs in bizarre cases has been
298removed as being unhelpful and inconsistent.
299
8dffc0ab
FC
300=item *
301
302The "Not a format reference" error has been removed, as the only case in
303which it could be triggered was a bug.
304
4a301309
FC
305=back
306
61174fb5 307=head1 Utility Changes
05c8f9ed 308
61174fb5
Z
309XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
310here. Most of these are built within the directories F<utils> and F<x2p>.
05c8f9ed 311
61174fb5
Z
312[ List utility changes as a =head3 entry for each utility and =item
313entries for each change
314Use L<XXX> with program names to get proper documentation linking. ]
05c8f9ed 315
61174fb5 316=head3 L<XXX>
30608892 317
61174fb5 318=over 4
30608892 319
61174fb5 320=item *
30608892 321
61174fb5 322XXX
30608892 323
61174fb5 324=back
30608892 325
61174fb5 326=head1 Configuration and Compilation
30608892 327
61174fb5
Z
328XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
329go here. Any other changes to the Perl build process should be listed here.
330However, any platform-specific changes should be listed in the
331L</Platform Support> section, instead.
05c8f9ed 332
61174fb5 333[ List changes as a =item entry ].
05c8f9ed 334
f9001595 335=over 4
05c8f9ed
RS
336
337=item *
338
61174fb5 339XXX
53de3ff0 340
61174fb5 341=back
a3367fba 342
61174fb5 343=head1 Testing
a3367fba 344
61174fb5
Z
345XXX Any significant changes to the testing of a freshly built perl should be
346listed here. Changes which create B<new> files in F<t/> go here as do any
347large changes to the testing harness (e.g. when parallel testing was added).
348Changes to existing files in F<t/> aren't worth summarising, although the bugs
349that they represent may be covered elsewhere.
a3367fba 350
61174fb5 351[ List each test improvement as a =item entry ]
a3367fba 352
61174fb5 353=over 4
05c8f9ed 354
30608892
Z
355=item *
356
61174fb5 357XXX
30608892 358
f9001595 359=back
05c8f9ed 360
61174fb5 361=head1 Platform Support
05c8f9ed 362
61174fb5 363XXX Any changes to platform support should be listed in the sections below.
05c8f9ed 364
61174fb5
Z
365[ Within the sections, list each platform as a =item entry with specific
366changes as paragraphs below it. ]
05c8f9ed 367
61174fb5 368=head2 New Platforms
e2e06450 369
61174fb5
Z
370XXX List any platforms that this version of perl compiles on, that previous
371versions did not. These will either be enabled by new files in the F<hints/>
372directories, or new subdirectories and F<README> files at the top level of the
373source tree.
b9b99128 374
61174fb5 375=over 4
b9b99128 376
61174fb5 377=item XXX-some-platform
47fb883d 378
61174fb5 379XXX
47fb883d 380
61174fb5 381=back
5f0f4bc0 382
61174fb5 383=head2 Discontinued Platforms
5f0f4bc0 384
61174fb5 385XXX List any platforms that this version of perl no longer compiles on.
ba0d99ee 386
61174fb5 387=over 4
ba0d99ee 388
61174fb5 389=item XXX-some-platform
72035cb1 390
61174fb5 391XXX
72035cb1 392
61174fb5 393=back
ceb0881c 394
61174fb5 395=head2 Platform-Specific Notes
ceb0881c 396
61174fb5
Z
397XXX List any changes for specific platforms. This could include configuration
398and compilation changes or changes in portability/compatibility. However,
399changes within modules for platforms should generally be listed in the
400L</Modules and Pragmata> section.
89cbc6b8 401
61174fb5 402=over 4
89cbc6b8 403
4aa4c0a5 404=item Win32
c6b15a5a 405
4aa4c0a5
TC
406C<link> on Win32 now attempts to set C<$!> to more appropriate values
407based on the Win32 API error code. [perl #112272]
c6b15a5a 408
61174fb5 409=back
8e125188 410
61174fb5 411=head1 Internal Changes
8e125188 412
61174fb5
Z
413XXX Changes which affect the interface available to C<XS> code go here.
414Other significant internal changes for future core maintainers should
415be noted as well.
8e125188 416
61174fb5 417[ List each change as a =item entry ]
c4643160 418
61174fb5 419=over 4
c4643160 420
422287bf
FC
421=item *
422
b7e9bef4
FC
423The C<study> function was made a no-op in 5.16. It was simply disabled via
424a C<return> statement; the code was left in place. Now the code supporting
425what C<study> used to do has been removed.
53de3ff0 426
f8ef51fd
FC
427=item *
428
429Under threaded perls, there is no longer a separate PV allocated for every
430COP to store its package name (C<< cop->stashpv >>). Instead, there is an
431offset (C<< cop->stashoff >>) into the new C<PL_stashpad> array, which
432holds stash pointers.
433
e128ab2c
DM
434=item *
435
436In the pluggable regex API, the C<regexp_engine> struct has acquired a new
437field C<op_comp>, which is currently just for perl's internal use, and
438should be initialised to NULL by other regexp plugin modules.
439
61174fb5 440=back
422287bf 441
61174fb5 442=head1 Selected Bug Fixes
2de6ba8d 443
61174fb5
Z
444XXX Important bug fixes in the core language are summarised here.
445Bug fixes in files in F<ext/> and F<lib/> are best summarised in
446L</Modules and Pragmata>.
2de6ba8d 447
61174fb5 448[ List each fix as a =item entry ]
52c4b146 449
61174fb5 450=over 4
52c4b146 451
9aa9a888
KW
452=item *
453
e128ab2c
DM
454The implementation of code blocks in regular expressions, such as C<(?{})>
455and C<(??{})> has been heavily reworked to eliminate a whole slew of bugs.
456The main user-visible changes are:
457
458=over 4
459
460=item *
461
462Code blocks within patterns are now parsed in the same pass as the
463surrounding code; in particular it is no longer necessary to have balanced
464braces: this now works:
465
466 /(?{ $x='{' })/
467
468This means that this error message is longer generated:
469
470 Sequence (?{...}) not terminated or not {}-balanced in regex
471
472but a new error may be seen:
473
474 Sequence (?{...}) not terminated with ')'
475
476In addition, literal code blocks within run-time patterns are only
477compiled once, at perl compile-time:
478
479 for my $p (...) {
480 # this 'FOO' block of code is compiled once,
481 # at the same time as the surrounding 'for' loop
482 /$p{(?{FOO;})/;
483 }
484
485=item *
486
487Lexical variables are now sane as regards scope, recursion and closure
488behaviour. In particular, C</A(?{B})C/> behaves (from a closure viewpoint)
489exactly like C</A/ && do { B } && /C/>, while C<qr/A(?{B})C/> is like
490C<sub {/A/ && do { B } && /C/}>. So this code now works how you might
be722aee 491expect, creating three regexes that match 0, 1, and 2:
e128ab2c
DM
492
493 for my $i (0..2) {
494 push @r, qr/^(??{$i})$/;
495 }
496 "1" =~ $r[1]; # matches
497
498=item *
499
500The C<use re 'eval'> pragma is now only required for code blocks defined
501at runtime; in particular in the following, the text of the $r pattern is
502still interpolated into the new pattern and recompiled, but the individual
503compiled code-blocks within $r are reused rather than being recompiled,
504and C<use re 'eval'> isn't needed any more:
505
506 my $r = qr/abc(?{....})def/;
507 /xyz$r/;
508
509=item *
510
511Flow control operators no longer crash. Each code block runs in a new
512dynamic scope, so C<next> etc. will not see any enclosing loops and
513C<caller> will not see any calling subroutines. C<return> returns a value
514from the code block, not from any enclosing subroutine.
515
516=item *
517
518Perl normally caches the compilation of run-time patterns, and doesn't
519recompile if the pattern hasn't changed; but this is now disabled if
520required for the correct behaviour of closures; for example:
521
522 my $code = '(??{$x})';
523 for my $x (1..3) {
524 # recompile to see fresh value of $x each time
525 $x =~ /$code/;
526 }
527
528
529=item *
530
531The C</msix> and C<(?msix)> etc. flags are now propagated into the return
532value from C<(??{})>; this now works:
533
534 "AB" =~ /a(??{'b'})/i;
535
536=item *
537
538Warnings and errors will appear to come from the surrounding code (or for
539run-time code blocks, from an eval) rather than from an C<re_eval>:
540
541 use re 'eval'; $c = '(?{ warn "foo" })'; /$c/;
542 /(?{ warn "foo" })/;
543
544formerly gave:
545
546 foo at (re_eval 1) line 1.
547 foo at (re_eval 2) line 1.
548
549and now gives:
550
551 foo at (eval 1) line 1.
552 foo at /some/prog line 2.
553
554=back
555
556=item *
557
7ade940c
KW
558Perl now works as well as can be expected on all releases of Unicode so
559far. In v5.16, it worked on Unicodes 6.0 and 6.1, but there were
560various bugs for earlier releases; the older the release the more
561problems.
9aa9a888 562
701da2e9
FC
563=item *
564
565C<vec> no longer produces "uninitialized" warnings in lvalue context
566[perl #9423].
567
d67d4c0e
FC
568=item *
569
d9661073 570An optimisation involving fixed strings in regular expressions could cause
d67d4c0e
FC
571a severe performance penalty in edge cases. This has been fixed
572[perl #76546].
573
b9dc63e8
FC
574=item *
575
576The "Can't find an opnumber" message that C<prototype> produces when passed
577a string like "CORE::nonexistent_keyword" is now passes UTF8 and embedded
578nulls through unchanged [perl #97478].
579
b6d5888c
FC
580=item *
581
c0df136d
FC
582C<prototype> now treats magical variables like C<$1> the same way as
583non-magical variables when checking for the CORE:: prefix, instead of
584treating them as subroutine names.
585
586=item *
587
b6d5888c
FC
588Under threaded perls, a run-time code block in a regular expression could
589corrupt the package name stored in the op tree, resulting in bad reads
590in C<caller>, and possibly crashes [perl #113060].
591
d8816adc
FC
592=item *
593
594Referencing a closure prototype (C<\&{$_[1]}> in an attribute handler for a
595closure) no longer results in a copy of the subroutine (or assertion
596failures on debugging builds).
597
9b9df0bb
FC
598=item *
599
600C<eval '__PACKAGE__'> now returns the right answer on threaded builds if
601the current package has been assigned over (as in
602C<*ThisPackage:: = *ThatPackage::>) [perl #78742].
603
b16ca463
FC
604=item *
605
606If a package is deleted by code that it calls, it is possible for C<caller>
607to see a stack frame belonging to that deleted package. C<caller> could
608crash if the stash's memory address was reused for a scalar and a
609substitution was performed on the same scalar [perl #113486].
610
6fe02df8
FC
611=item *
612
613C<UNIVERSAL::can> no longer treats its first argument differently
614depending on whether it is a string or number internally.
615
2aab098d
FC
616=item *
617
618C<open> with "<&" for the mode checks to see whether the third argument is
619a number, in determining whether to treat it as a file descriptor or a
620handle name. Magical variables like C<$1> were always failing the numeric
621check and being treated as handle names.
622
38d77b7f
FC
623=item *
624
625C<warn>'s handling of magical variables (C<$1>, ties) has undergone several
626fixes. FETCH is only called once now on a tied argument or a tied C<$@>
627[perl #97480]. Tied variables returning objects that stringify as "" are
628no longer ignored. A tied C<$@> that happened to return a reference the
629I<previous> time is was used is no longer ignored.
630
e811dbaa
FC
631=item *
632
8b9712e0
FC
633C<warn ""> now treats C<$@> with a number in it the same way, regardless of
634whether it happened via C<$@=3> or C<$@="3">. It used to ignore the
635former. Now it appends "\t...caught", as it has always done with
636C<$@="3">.
637
638=item *
639
e811dbaa
FC
640Numeric operators on magical variables (e.g., S<C<$1 + 1>>) used to use
641floating point operations even where integer operations were more appropriate, resulting in loss of accuracy on 64-bit platforms
642[perl #109542].
643
844115ec
FC
644=item *
645
646Unary negation no longer treats a string as a number if the string happened
647to be used as a number some time. So, if $x contains the string "dogs",
648C<-$x> returns "-dogs" even if C<$y=0+$x> has happened at some point.
649
a7143705
FC
650=item *
651
652In Perl 5.14, C<-'-10'> was fixed to return "10", not "+10". But magical
653variables (C<$1>, ties) were not fixed till now [perl #57706].
654
9c308096
FC
655=item *
656
657Unary negation now treats strings consistently, regardless of the internal
658UTF8 flag.
659
fc67deb3
KW
660=item *
661
662A regression introduced in Perl v5.16.0 involving
663C<tr/I<SEARCHLIST>/I<REPLACEMENTLIST>/> has been fixed. Only the first
664instance is supposed to be meaningful if a character appears more than
665once in C<I<SEARCHLIST>>. Under some circumstances, the final instance
666was overriding all earlier ones. [perl #113584]
667
61174fb5 668=back
53de3ff0 669
61174fb5 670=head1 Known Problems
53de3ff0 671
61174fb5
Z
672XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
673tests that had to be C<TODO>ed for the release would be noted here, unless
674they were specific to a particular platform (see below).
53de3ff0 675
61174fb5
Z
676This is a list of some significant unfixed bugs, which are regressions
677from either 5.XXX.XXX or 5.XXX.XXX.
53de3ff0 678
61174fb5 679[ List each fix as a =item entry ]
80b8b050 680
61174fb5 681=over 4
80b8b050 682
eb3d0a58
LT
683=item *
684
61174fb5 685XXX
eb3d0a58 686
2630d42b 687=back
e2e06450 688
61174fb5 689=head1 Obituary
c0154fe2 690
61174fb5
Z
691XXX If any significant core contributor has died, we've added a short obituary
692here.
d5dc7001 693
61174fb5 694=head1 Acknowledgements
d5dc7001 695
61174fb5 696XXX Generate this with:
f9001595 697
61174fb5 698 perl Porting/acknowledgements.pl v5.17.0..HEAD
29cf780c 699
44691e6f
AB
700=head1 Reporting Bugs
701
702If you find what you think is a bug, you might check the articles
52deee2e 703recently posted to the comp.lang.perl.misc newsgroup and the perl
f9001595
RS
704bug database at http://rt.perl.org/perlbug/ . There may also be
705information at http://www.perl.org/ , the Perl Home Page.
44691e6f
AB
706
707If you believe you have an unreported bug, please run the L<perlbug>
52deee2e
DR
708program included with your release. Be sure to trim your bug down
709to a tiny but sufficient test case. Your bug report, along with the
710output of C<perl -V>, will be sent off to perlbug@perl.org to be
711analysed by the Perl porting team.
44691e6f
AB
712
713If the bug you are reporting has security implications, which make it
f9001595
RS
714inappropriate to send to a publicly archived mailing list, then please send
715it to perl5-security-report@perl.org. This points to a closed subscription
716unarchived mailing list, which includes
717all the core committers, who will be able
718to help assess the impact of issues, figure out a resolution, and help
719co-ordinate the release of patches to mitigate or fix the problem across all
720platforms on which Perl is supported. Please only use this address for
721security issues in the Perl core, not for modules independently
722distributed on CPAN.
44691e6f
AB
723
724=head1 SEE ALSO
725
52deee2e
DR
726The F<Changes> file for an explanation of how to view exhaustive details
727on what changed.
44691e6f
AB
728
729The F<INSTALL> file for how to build Perl.
730
731The F<README> file for general stuff.
732
733The F<Artistic> and F<Copying> files for copyright information.
734
735=cut