6423d09b03f57e20aa7c0a7ecf467e3328fba301
[perl.git] / pod / perldelta.pod
1 =encoding utf8
2
3 =for comment
4 This has been completed up to 0aae26c14, except for:
5 803e389 rurban  CYG17 utf8 paths
6 d9298c1 rurban  mymalloc isn't thread safe
7
8 =head1 NAME
9
10 [ this is a template for a new perldelta file. Any text flagged as
11 XXX needs to be processed before release. ]
12
13 perldelta - what is new for perl v5.15.8
14
15 =head1 DESCRIPTION
16
17 This document describes differences between the 5.15.7 release and
18 the 5.15.8 release.
19
20 If you are upgrading from an earlier release such as 5.15.6, first read
21 L<perl5157delta>, which describes differences between 5.15.6 and
22 5.15.7.
23
24 =head1 Notice
25
26 XXX Any important notices here
27
28 =head1 Core Enhancements
29
30 XXX New core language features go here. Summarise user-visible core language
31 enhancements. Particularly prominent performance optimisations could go
32 here, but most should go in the L</Performance Enhancements> section.
33
34 [ List each enhancement as a =head2 entry ]
35
36 =head2 Improved ability to mix locales and Unicode, including UTF-8 locales
37
38 An optional parameter has been added to C<use locale>
39
40  use locale ':not_characters';
41
42 which tells Perl to use all but the C<LC_CTYPE> and C<LC_COLLATE>
43 portions of the current locale.  Instead, the character set is assumed
44 to be Unicode.  This allows locales and Unicode to be seamlessly mixed,
45 including the increasingly frequent UTF-8 locales.  When using this
46 hybrid form of locales, the C<:locale> layer to the L<open> pragma can
47 be used to interface with the file system, and there are CPAN modules
48 available for ARGV and environment variable conversions.
49
50 Full details are in L<perllocale>.
51
52 =head2 New function C<fc> and corresponding escape sequence C<\F> for Unicode foldcase
53
54 Unicode foldcase is an extension to lowercase that gives better results
55 when comparing two strings case-insensitively.  It has long been used
56 internally in regular expression C</i> matching.  Now it is available
57 explicitly through the new C<fc> function call (enabled by
58 S<C<"use feature 'fc'">>, or C<use v5.16>, or explicitly callable via
59 C<CORE::fc>) or through the new C<\F> sequence in double-quotish
60 strings.
61
62 Full details are in L<perlfunc/fc>.
63
64 =head2 C<_> in subroutine prototypes
65
66 The C<_> character in subroutine prototypes is now allowed before C<@> or
67 C<%>.
68
69 =head2 Supports (I<almost>) Unicode 6.1
70
71 Besides the addition of whole new scripts, and new characters in
72 existing scripts, this new version of Unicode, as always, makes some
73 changes to existing characters.  One change that may trip up some
74 applications is that the General Category of two characters in the
75 Latin-1 range, PILCROW SIGN and SECTION SIGN, has been changed from
76 Other_Symbol to Other_Punctuation.  The same change has been made for
77 a character in each of Tibetan, Ethiopic, and Aegean.
78 The code points U+3248..U+324F (CIRCLED NUMBER TEN ON BLACK SQUARE
79 through CIRCLED NUMBER EIGHTY ON BLACK SQUARE) have had their General
80 Category changed from Other_Symbol to Other_Numeric.  The Line Break
81 property has changes for Hebrew and Japanese; and as a consequence of
82 other changes in 6.1, the Perl regular expression construct C<\X> now
83 works differently for some characters in Thai and Lao.
84
85 New aliases (synonyms) have been defined for many property values;
86 these, along with the previously existing ones, are all cross indexed in
87 L<perluniprops>.
88
89 The return value of C<charnames::viacode()> is affected by other
90 changes:
91
92  Code point      Old Name             New Name
93    U+000A    LINE FEED (LF)        LINE FEED
94    U+000C    FORM FEED (FF)        FORM FEED
95    U+000D    CARRIAGE RETURN (CR)  CARRIAGE RETURN
96    U+0085    NEXT LINE (NEL)       NEXT LINE
97    U+008E    SINGLE-SHIFT 2        SINGLE-SHIFT-2
98    U+008F    SINGLE-SHIFT 3        SINGLE-SHIFT-3
99    U+0091    PRIVATE USE 1         PRIVATE USE-1
100    U+0092    PRIVATE USE 2         PRIVATE USE-2
101    U+2118    SCRIPT CAPITAL P      WEIERSTRASS ELLIPTIC FUNCTION
102
103 Perl will accept any of these names as input, but
104 C<charnames::viacode()> now returns the new name of each pair.  The
105 change for U+2118 is considered by Unicode to be a correction, that is
106 the original name was a mistake (but again, it will remain forever valid
107 to use it to refer to U+2118).  But most of these changes are the
108 fallout of the mistake Unicode 6.0 made in naming a character used in
109 Japanese cell phones to be "BELL", which conflicts with the long
110 standing industry use of (and Unicode's recommendation to use) that name
111 to mean the ASCII control character at U+0007.  As a result, that name
112 has been deprecated in Perl since v5.14; and any use of it will raise a
113 warning message (unless turned off).  The name "ALERT" is now the
114 preferred name for this code point, with "BEL" being an acceptable short
115 form.  The name for the new cell phone character, at code point U+1F514,
116 remains undefined in this version of Perl (hence we don't quite
117 implement all of Unicode 6.1), but starting in v5.18, BELL will mean
118 this character, and not U+0007.
119
120 Unicode has taken steps to make sure that this sort of mistake does not
121 happen again.  The Standard now includes all the generally accepted
122 names and abbreviations for control characters, whereas previously it
123 didn't (though there were recommended names for most of them, which Perl
124 used).  This means that most of those recommended names are now
125 officially in the Standard.  Unicode did not recommend names for the
126 four code points listed above between U+008E and U+008F, and in
127 standardizing them Unicode subtly changed the names that Perl had
128 previously given them, by replacing the final blank in each name by a
129 hyphen.  Unicode also officially accepts names that Perl had deprecated,
130 such as FILE SEPARATOR.  Now the only deprecated name is BELL.
131 Finally, Perl now uses the new official names instead of the old
132 (now considered obsolete) names for the first four code points in the
133 list above (the ones which have the parentheses in them).
134
135 Now that the names have been placed in the Unicode standard, these kinds
136 of changes should not happen again, though corrections, such as to
137 U+2118, are still possible.
138
139 Unicode also added some name abbreviations, which Perl now accepts:
140 SP for SPACE;
141 TAB for CHARACTER TABULATION;
142 NEW LINE, END OF LINE, NL, and EOL for LINE FEED;
143 LOCKING-SHIFT ONE for SHIFT OUT;
144 LOCKING-SHIFT ZERO for SHIFT IN;
145 and ZWNBSP for ZERO WIDTH NO-BREAK SPACE.
146
147 More details on this version of Unicode are provided in
148 L<http://www.unicode.org/versions/Unicode6.1.0/>.
149
150 =head2 Added C<is_utf8_char_buf()>
151
152 This function is designed to replace the deprecated L</is_utf8_char()>
153 function.  It includes an extra parameter to make sure it doesn't read
154 past the end of the input buffer.
155
156 =head1 Security
157
158 XXX Any security-related notices go here.  In particular, any security
159 vulnerabilities closed should be noted here rather than in the
160 L</Selected Bug Fixes> section.
161
162 [ List each security issue as a =head2 entry ]
163
164 =head2 Use C<is_utf8_char_buf()> and not C<is_utf8_char()>
165
166 The latter function is now deprecated because its API is insufficient to
167 guarantee that it doesn't read (up to 12 bytes in the worst case) beyond
168 the end of its input string.  See
169 L<is_utf8_char_buf()|/Added is_utf8_char_buf()>.
170
171 =head1 Incompatible Changes
172
173 XXX For a release on a stable branch, this section aspires to be:
174
175     There are no changes intentionally incompatible with 5.XXX.XXX
176     If any exist, they are bugs, and we request that you submit a
177     report.  See L</Reporting Bugs> below.
178
179 [ List each incompatible change as a =head2 entry ]
180
181 =head2 Special blocks called in void context
182
183 Special blocks (C<BEGIN>, C<CHECK>, C<INIT>, C<UNITCHECK>, C<END>) are now
184 called in void context.  This avoids wasteful copying of the result of the
185 last statement [perl #108794].
186
187 =head2 The C<overloading> pragma and regexp objects
188
189 With C<no overloading>, regular expression objects returned by C<qr//> are
190 now stringified as "Regexp=REGEXP(0xbe600d)" instead of the regular
191 expression itself [perl #108780].
192
193 =head2 Two XS typemap Entries removed
194
195 Two presumably unused XS typemap entries have been removed from the
196 core typemap: T_DATAUNIT and T_CALLBACK. If you are, against all odds,
197 a user of these, please see the instructions on how to regain them
198 in L<perlxstypemap>.
199
200 =head2 Unicode 6.1 has incompatibilities with Unicode 6.0
201
202 These are detailed in L</Supports (almost) Unicode 6.1> above.
203
204 =head2 Changed returns for some properties in C<Unicode::UCD::prop_invmap()>
205
206 The return values for C<prop_invmap> have been changed for some
207 properties to make the returned lists significantly smaller.  This
208 allows those lists to be searched faster.
209
210 This function was introduced earlier in the v5.15 series of releases,
211 and the API will not be considered stable until v5.16.
212
213 See L<Unicode::UCD/prop_invmap()> for details on the new interface.
214
215 =head2 C<$$> and C<getppid()> no longer emulate POSIX semantics under LinuxThreads
216
217 The POSIX emulation of C<$$> and C<getppid()> under the obsolete
218 LinuxThreads implementation has been removed (the C<$$> emulation was
219 actually removed in v5.15.0). This only impacts users of Linux 2.4 and
220 users of Debian GNU/kFreeBSD up to and including 6.0, not the vast
221 majority of Linux installations that use NPTL threads.
222
223 This means that C<getppid()> like C<$$> is now always guaranteed to
224 return the OS's idea of the current state of the process, not perl's
225 cached version of it.
226
227 See the documentation for L<$$|perlvar/$$> for details.
228
229 =head2 Which Non-ASCII characters get quoted by C<quotemeta> and C<\Q> has changed
230
231 This is unlikely to result in a real problem, as Perl does not attach
232 special meaning to any non-ASCII character, so it is currently
233 irrelevant which are quoted or not.  This change fixes bug [perl #77654] and
234 bring Perl's behavior more into line with Unicode's recommendations.
235 See L<perlfunc/quotemeta>.
236
237 =head1 Deprecations
238
239 XXX Any deprecated features, syntax, modules etc. should be listed here.
240 In particular, deprecated modules should be listed here even if they are
241 listed as an updated module in the L</Modules and Pragmata> section.
242
243 [ List each deprecation as a =head2 entry ]
244
245 =head2 C<is_utf8_char()>
246
247 This function is deprecated because it could read beyond the end of the
248 input string.  Use the new L<is_utf8_char_buf()|/Added is_utf8_char_buf()>
249 instead.
250
251 =head1 Performance Enhancements
252
253 XXX Changes which enhance performance without changing behaviour go here. There
254 may well be none in a stable release.
255
256 [ List each enhancement as a =item entry ]
257
258 =over 4
259
260 =item *
261
262 XXX
263
264 =back
265
266 =head1 Modules and Pragmata
267
268 XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
269 go here.  If Module::CoreList is updated, generate an initial draft of the
270 following sections using F<Porting/corelist-perldelta.pl>, which prints stub
271 entries to STDOUT.  Results can be pasted in place of the '=head2' entries
272 below.  A paragraph summary for important changes should then be added by hand.
273 In an ideal world, dual-life modules would have a F<Changes> file that could be
274 cribbed.
275
276 [ Within each section, list entries as a =item entry ]
277
278 =head2 New Modules and Pragmata
279
280 =over 4
281
282 =item *
283
284 The C<mmap> PerlIO layer is no longer implemented by perl itself, but has
285 been moved out into the new L<PerlIO::mmap> module.
286
287 =back
288
289 =head2 Updated Modules and Pragmata
290
291 =over 4
292
293 =item *
294
295 L<arybase> has been upgraded from version 0.03 to version 0.04.
296
297 List slices no longer modify items on the stack belonging to outer lists
298 [perl #109570].
299
300 =item *
301
302 L<B> has been upgraded from version 1.33 to version 1.34.
303
304 C<B::COP> now has a C<stashflags> method, corresponding to a new internal
305 field added in 5.15.4 [perl #108860].
306
307 =item *
308
309 L<Carp> has been upgraded from version 1.24 to version 1.25.
310
311 It now puts a dot after the file and line number, just like errors from
312 C<die> [perl #106538].
313
314 =item *
315
316 L<Compress::Raw::Bzip2> has been upgraded from version 2.045 to version 2.048.
317
318 =item *
319
320 L<Compress::Raw::Zlib> has been upgraded from version 2.045 to version 2.048.
321
322 =item *
323
324 L<Compress::Zlib> has been upgraded from version 2.046 to version 2.048.
325
326 =item *
327
328 L<CPAN::Meta> has been upgraded from version 2.113640 to version 2.120351.
329
330 Work around a memory leak bug involving version objects in boolean context.
331
332 =item *
333
334 L<CPAN::Meta::YAML> has been upgraded from version 0.005 to version 0.007.
335
336 =item *
337
338 L<CPANPLUS> has been upgraded from version 0.9116 to version 0.9118.
339
340 =item *
341
342 L<CPANPLUS::Dist::Build> has been upgraded from version 0.60 to version 0.62.
343
344 =item *
345
346 L<DB_File> has been upgraded from version 1.824 to version 1.826.
347
348 =item *
349
350 L<diagnostics> has been upgraded from version 1.27 to version 1.28.
351
352 When searching for F<perldiag.pod>, it no longer uses paths that were only
353 relevant on Perl 5.004 and earlier.
354
355 =item *
356
357 L<ExtUtils::ParseXS> has been upgraded from version 3.12 to version 3.15.
358
359 The new version comes with important tools for sharing typemaps between
360 different CPAN distributions.
361
362 =item *
363
364 L<File::Copy> has been upgraded from version 2.21 to version 2.23.
365
366 It no longer emits warnings when copying files with newlines in their names
367 [perl #109104].
368
369 =item *
370
371 L<IPC::Cmd> has been upgraded from version 0.72 to version 0.76.
372
373 =item *
374
375 L<Math::Complex> has been upgraded from version 1.58 to version 1.59.
376
377 This avoids a new core warning.
378
379 =item *
380
381 L<Module::Metadata> has been upgraded from version 1.000007 to version 1.000009.
382
383 Adds C<provides> method to generate a CPAN META provides data structure
384 correctly; use of C<package_versions_from_directory> is discouraged.
385
386 =item *
387
388 L<Parse::CPAN::Meta> has been upgraded from version 1.4401 to version 1.4402.
389
390 =item *
391
392 L<Pod::Parser> has been upgraded from version 1.37 to version 1.51.
393
394 =item *
395
396 L<Term::ReadLine> has been upgraded from version 1.07 to version 1.08.
397
398 Its C<tkRunning> method now supports L<AnyEvent> event loops, and not just
399 L<Tk>.  A more general mechanism has been proposed, so this may be reverted
400 before Perl 5.16 [perl #108470].
401
402 =item *
403
404 L<Socket> has been upgraded from version 1.97 to version 1.98.
405
406 =item *
407
408 L<Time::HiRes>  has been upgraded from version 1.9724 to version 1.9725.
409
410 C<Time::HiRes::stat()> no longer corrupts the Perl stack.
411
412 =item *
413
414 L<Unicode::UCD> has been upgraded from version 0.39 to 0.40.
415
416 The only change is to fix a formatting error in the Pod.
417
418 =item *
419
420 L<Version::Requirements> has been upgraded from version 0.101021 to version 0.101022.
421
422 =back
423
424 =head2 Removed Modules and Pragmata
425
426 =over 4
427
428 =item *
429
430 XXX
431
432 =back
433
434 =head1 Documentation
435
436 XXX Changes to files in F<pod/> go here.  Consider grouping entries by
437 file and be sure to link to the appropriate page, e.g. L<perlfunc>.
438
439 =head2 New Documentation
440
441 XXX Changes which create B<new> files in F<pod/> go here.
442
443 =head3 L<perlxstypemap>
444
445 The new manual describes the XS typemapping mechanism in unprecedented
446 detail and combines new documentation with information extracted from
447 L<perlxs> and the previously unofficial list of all core typemaps.
448
449 =head3 L<XXX>
450
451 XXX Description of the purpose of the new file here
452
453 =head2 Changes to Existing Documentation
454
455 XXX Changes which significantly change existing files in F<pod/> go here.
456 However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
457 section.
458
459 =head3 L<XXX>
460
461 =over 4
462
463 =item *
464
465 XXX Description of the change here
466
467 =back
468
469 =head1 Diagnostics
470
471 The following additions or changes have been made to diagnostic output,
472 including warnings and fatal error messages.  For the complete list of
473 diagnostic messages, see L<perldiag>.
474
475 XXX New or changed warnings emitted by the core's C<C> code go here. Also
476 include any changes in L<perldiag> that reconcile it to the C<C> code.
477
478 [ Within each section, list entries as a =item entry that links to perldiag,
479   e.g.
480
481   =item *
482
483   L<Invalid version object|perldiag/"Invalid version object">
484 ]
485
486 =head2 New Diagnostics
487
488 XXX Newly added diagnostic messages go here
489
490 =head3 New Errors
491
492 =over 4
493
494 =item *
495
496 XXX L<message|perldiag/"message">
497
498 =back
499
500 =head3 New Warnings
501
502 =over 4
503
504 =item *
505
506 XXX L<message|perldiag/"message">
507
508 =back
509
510 =head2 Changes to Existing Diagnostics
511
512 XXX Changes (i.e. rewording) of diagnostic messages go here
513
514 =over 4
515
516 =item *
517
518 XXX Describe change here
519
520 =back
521
522 =head1 Utility Changes
523
524 XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go
525 here. Most of these are built within the directories F<utils> and F<x2p>.
526
527 [ List utility changes as a =head3 entry for each utility and =item
528 entries for each change
529 Use L<XXX> with program names to get proper documentation linking. ]
530
531 =head3 L<XXX>
532
533 =over 4
534
535 =item *
536
537 XXX
538
539 =back
540
541 =head1 Configuration and Compilation
542
543 XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
544 go here.  Any other changes to the Perl build process should be listed here.
545 However, any platform-specific changes should be listed in the
546 L</Platform Support> section, instead.
547
548 [ List changes as a =item entry ].
549
550 =over 4
551
552 =item *
553
554 XXX
555
556 =back
557
558 =head1 Testing
559
560 XXX Any significant changes to the testing of a freshly built perl should be
561 listed here.  Changes which create B<new> files in F<t/> go here as do any
562 large changes to the testing harness (e.g. when parallel testing was added).
563 Changes to existing files in F<t/> aren't worth summarising, although the bugs
564 that they represent may be covered elsewhere.
565
566 [ List each test improvement as a =item entry ]
567
568 =over 4
569
570 =item *
571
572 XXX
573
574 =item *
575
576 The test suite for typemaps has been extended to cover a larger fraction of
577 the core typemaps.
578
579 =back
580
581 =head1 Platform Support
582
583 XXX Any changes to platform support should be listed in the sections below.
584
585 [ Within the sections, list each platform as a =item entry with specific
586 changes as paragraphs below it. ]
587
588 =head2 New Platforms
589
590 XXX List any platforms that this version of perl compiles on, that previous
591 versions did not. These will either be enabled by new files in the F<hints/>
592 directories, or new subdirectories and F<README> files at the top level of the
593 source tree.
594
595 =over 4
596
597 =item XXX-some-platform
598
599 XXX
600
601 =back
602
603 =head2 Discontinued Platforms
604
605 XXX List any platforms that this version of perl no longer compiles on.
606
607 =over 4
608
609 =item XXX-some-platform
610
611 XXX
612
613 =back
614
615 =head2 Platform-Specific Notes
616
617 XXX List any changes for specific platforms. This could include configuration
618 and compilation changes or changes in portability/compatibility.  However,
619 changes within modules for platforms should generally be listed in the
620 L</Modules and Pragmata> section.
621
622 =over 4
623
624 =item XXX-some-platform
625
626 XXX
627
628 =back
629
630 =head1 Internal Changes
631
632 XXX Changes which affect the interface available to C<XS> code go here.
633 Other significant internal changes for future core maintainers should
634 be noted as well.
635
636 [ List each change as a =item entry ]
637
638 =over 4
639
640 =item *
641
642 XXX
643
644 =back
645
646 =head1 Selected Bug Fixes
647
648 XXX Important bug fixes in the core language are summarised here.
649 Bug fixes in files in F<ext/> and F<lib/> are best summarised in
650 L</Modules and Pragmata>.
651
652 [ List each fix as a =item entry ]
653
654 =over 4
655
656 =item *
657
658 C<~~> now correctly handles the precedence of Any~~Object, and is not tricked
659 by an overloaded object on the left-hand side.
660
661 =item *
662
663 C<stat _> no longer warns about unopened filehandles [perl #71002].
664
665 =item *
666
667 C<stat> on an unopened filehandle now warns consistently, instead of
668 skipping the warning at times.
669
670 =item *
671
672 A change in an earlier 5.15 release caused warning hints to propagate into
673 C<do $file>.  This has been fixed [rt.cpan.org #72767].
674
675 =item *
676
677 Starting with 5.12.0, Perl used to get its internal bookkeeping muddled up
678 after assigning C<${ qr// }> to a hash element and locking it with
679 L<Hash::Util>.  This could result in double frees, crashes or erratic
680 behaviour.
681
682 =item *
683
684 In 5.15.7, some typeglobs in the CORE namespace were made read-only by
685 mistake.  This has been fixed [rt.cpan.org #74289].
686
687 =item *
688
689 C<-t> now works when stacked with other filetest operators [perl #77388].
690
691 =item *
692
693 Stacked filetest operators now only call FETCH once on a tied argument.
694
695 =item *
696
697 C</.*/g> would sometimes refuse to match at the end of a string that ends
698 with "\n".  This has been fixed [perl #109206].
699
700 =item *
701
702 C<m/[[:ascii:]]/i> and C</\p{ASCII}/i> now match identically (when not
703 under a differing locale).  This fixes a regression introduced in 5.14
704 in which the first expression could match characters outside of ASCII,
705 such as the KELVIN SIGN.
706
707 =item *
708
709 Method calls whose arguments were all surrounded with C<my()> or C<our()>
710 (as in C<<$object->method(my($a,$b)) >>) used to force lvalue context on
711 the subroutine.  This would prevent lvalue methods from returning certain
712 values.  Due to lvalue fixes earlier in the 5.15.x series, it would also
713 prevent non-lvalue methods from being called [perl #109264].
714
715 =for comment
716 This bug I<did> affect earlier stable releases.  It is just the last
717 sentence that does not apply to 5.14.
718
719 =item *
720
721 The C<SvPVutf8> C function no longer tries to modify its argument,
722 resulting in errors [perl #108994].
723
724 =item *
725
726 C<SvPVutf8> now works properly with magical variables.
727
728 =item *
729
730 C<SvPVbyte> now works properly non-PVs.
731
732 =item *
733
734 C</[[:ascii:]]/> and C</[[:blank:]]/> now use locale rules under
735 C<use locale> when the platform supports that.  Previously, they used
736 the platform's native character set.
737
738 =item *
739
740 A regression introduced in 5.13.6 was fixed.  This involved an inverted
741 bracketed character class in a regular expression that consisted solely
742 of a Unicode property, that property wasn't getting inverted outside the
743 Latin1 range.
744
745 =item *
746
747 C<quotemeta> now quotes consistently the same non-ASCII characters under
748 C<use feature 'unicode_strings'>, regardless of whether the string is
749 encoded in UTF-8 or not, hence fixing the last vestiges (we hope) of the
750 infamous L<perlunicode/The "Unicode Bug">.  [perl #77654].
751
752 Which of these code points is quoted has changed, based on Unicode's
753 recommendations.  See L<perlfunc/quotemeta> for details.
754
755 =back
756
757 =head1 Known Problems
758
759 XXX Descriptions of platform agnostic bugs we know we can't fix go here. Any
760 tests that had to be C<TODO>ed for the release would be noted here, unless
761 they were specific to a particular platform (see below).
762
763 This is a list of some significant unfixed bugs, which are regressions
764 from either 5.XXX.XXX or 5.XXX.XXX.
765
766 [ List each fix as a =item entry ]
767
768 =over 4
769
770 =item *
771
772 XXX
773
774 =back
775
776 =head1 Obituary
777
778 XXX If any significant core contributor has died, we've added a short obituary
779 here.
780
781 =head1 Acknowledgements
782
783 XXX Generate this with:
784
785   perl Porting/acknowledgements.pl v5.15.7..HEAD
786
787 =head1 Reporting Bugs
788
789 If you find what you think is a bug, you might check the articles
790 recently posted to the comp.lang.perl.misc newsgroup and the perl
791 bug database at http://rt.perl.org/perlbug/ .  There may also be
792 information at http://www.perl.org/ , the Perl Home Page.
793
794 If you believe you have an unreported bug, please run the L<perlbug>
795 program included with your release.  Be sure to trim your bug down
796 to a tiny but sufficient test case.  Your bug report, along with the
797 output of C<perl -V>, will be sent off to perlbug@perl.org to be
798 analysed by the Perl porting team.
799
800 If the bug you are reporting has security implications, which make it
801 inappropriate to send to a publicly archived mailing list, then please send
802 it to perl5-security-report@perl.org. This points to a closed subscription
803 unarchived mailing list, which includes
804 all the core committers, who will be able
805 to help assess the impact of issues, figure out a resolution, and help
806 co-ordinate the release of patches to mitigate or fix the problem across all
807 platforms on which Perl is supported. Please only use this address for
808 security issues in the Perl core, not for modules independently
809 distributed on CPAN.
810
811 =head1 SEE ALSO
812
813 The F<Changes> file for an explanation of how to view exhaustive details
814 on what changed.
815
816 The F<INSTALL> file for how to build Perl.
817
818 The F<README> file for general stuff.
819
820 The F<Artistic> and F<Copying> files for copyright information.
821
822 =cut