This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Correct one POD formatting error in perldelta.
[perl5.git] / pod / perldelta.pod
1 =encoding utf8
2
3 =head1 NAME
4
5 [ this is a template for a new perldelta file.  Any text flagged as XXX needs
6 to be processed before release. ]
7
8 perldelta - what is new for perl v5.25.7
9
10 =head1 DESCRIPTION
11
12 This document describes differences between the 5.25.6 release and the 5.25.7
13 release.
14
15 If you are upgrading from an earlier release such as 5.25.5, first read
16 L<perl5256delta>, which describes differences between 5.25.5 and 5.25.6.
17
18 =head1 Core Enhancements
19
20 XXX New core language features go here.  Summarize user-visible core language
21 enhancements.  Particularly prominent performance optimisations could go
22 here, but most should go in the L</Performance Enhancements> section.
23
24 [ List each enhancement as a =head2 entry ]
25
26 =head2 Indented Here-documents
27
28 This adds a new modifier '~' to here-docs that tells the parser
29 that it should look for /^\s*$DELIM\n/ as the closing delimiter.
30
31 These syntaxes are all supported:
32
33     <<~EOF;
34     <<~\EOF;
35     <<~'EOF';
36     <<~"EOF";
37     <<~`EOF`;
38     <<~ 'EOF';
39     <<~ "EOF";
40     <<~ `EOF`;
41
42 The '~' modifier will strip, from each line in the here-doc, the
43 same whitespace that appears before the delimiter.
44
45 Newlines will be copied as is, and lines that don't include the
46 proper beginning whitespace will cause perl to croak.
47
48 For example:
49
50     if (1) {
51       print <<~EOF;
52         Hello there
53         EOF
54     }
55
56 prints "Hello there\n" with no leading whitespace.
57
58 =head2 '.' and @INC
59
60 Perl now provides a way to build perl without C<.> in @INC by default. If you
61 want this feature, you can build with -Ddefault_inc_excludes_dot
62
63 Because the testing / make process for perl modules do not function well with
64 C<.> missing from @INC, Perl now supports the environment variable
65 PERL_USE_UNSAFE_INC=1 which makes Perl behave as it previously did, returning
66 C<.> to @INC in all child processes.
67
68 WARNING: PERL_USE_UNSAFE_INC has been provided during the perl 5.25 development
69 cycle and is not guaranteed to function in perl 5.26.
70
71 =head2 create a safer utf8_hop() called utf8_hop_safe()
72
73 Unlike utf8_hop(), utf8_hop_safe() won't navigate before the beginning or after
74 the end of the supplied buffer.
75
76 =head2 Fix taint handling in list assignment
77
78 commit v5.25.6-79-gb09ed99 reworked list assignment, and
79 accidentally broke taint handling at the same time.
80
81 =head2 @{^CAPTURE}, %{^CAPTURE}, and %{^CAPTURE_ALL}
82
83 @{^CAPTURE} exposes the capture buffers of the last match as an array. So $1 is
84 ${^CAPTURE}[0].
85
86 %{^CAPTURE} is the equivalent to %+ (ie named captures)
87
88 %{^CAPTURE_ALL} is the equivalent to %- (ie all named captures).
89
90 =head2 hv.h: rework HEK_FLAGS to a proper member in struct hek
91
92 Move the store of HEK_FLAGS off the end of the allocated hek_key into the hek
93 struct, simplifying access and providing clarity to the code.
94
95 =head2 op.c: silence compiler warning in fold_constants()
96
97     op.c: In function ‘S_fold_constants’:
98     op.c:4374:28: warning: argument ‘o’ might be clobbered by ‘longjmp’ or ‘vfork’ [-Wclobbered]
99      S_fold_constants(pTHX_ OP *o)
100                                 ^
101
102 This warning has been silenced.
103
104 =head2 White space changed to avoid C++ deprecation warning
105
106 C++11 requires space between the end of a string literal and a macro, so that a
107 feature can unambiguously be added to the language.  Starting in g++ 6.2, the
108 compiler emits a warning when there isn't a space (presumably so that future
109 versions can support C++11)
110
111 =head1 Security
112
113 XXX Any security-related notices go here.  In particular, any security
114 vulnerabilities closed should be noted here rather than in the
115 L</Selected Bug Fixes> section.
116
117 [ List each security issue as a =head2 entry ]
118
119 =head1 Incompatible Changes
120
121 XXX For a release on a stable branch, this section aspires to be:
122
123     There are no changes intentionally incompatible with 5.XXX.XXX
124     If any exist, they are bugs, and we request that you submit a
125     report.  See L</Reporting Bugs> below.
126
127 [ List each incompatible change as a =head2 entry ]
128
129 =head2 Eliminate OPpRUNTIME private PMOP flag
130
131 This flag was added in 5.004 and even then it didn't seem to be used for
132 anything. It gets set and unset in various places, but is never tested.
133
134 =head2 Eliminate SVpbm_VALID flag
135
136 This flag is set on an SV to indicate that it has PERL_MAGIC_bm (fast
137 Boyer-Moore) magic attached. Instead just directly check whether it has such
138 magic.
139
140 =head2 Eliminate SVpbm_TAIL/SvTAIL_on()/SvTAIL_off()
141
142 This flag is only set on SVs that have Boyer-Moore magic attached. Such SVs
143 already re-purpose the unused IVX slot of that  SV to store BmUSEFUL. This
144 commit repurposes the unused NVX slot to store this boolean value instead.
145
146 =head2 Eliminate SVrepl_EVAL and SvEVALED()
147
148 This flag is only used to indicate that the SV holding the text of the
149 replacement part of a s/// has seen at least one /e.  Instead, set the IVX
150 field in the SV to a true value. (We already set the NVX field on that SV to
151 indicate a multi-src-line substitution).
152
153 =head2 metaconfig.h
154
155 Document that symbols should be removed from metaconfig.h
156
157 Remove almost-all symbols from metaconfig.h
158
159 =head2 Change hv_fetch(…, "…", …, …) to hv_fetchs(…, "…", …)
160
161 The dual-life dists all use Devel::PPPort, so they can use this function even
162 though it was only added in 5.10.
163
164 =head1 Deprecations
165
166 XXX Any deprecated features, syntax, modules etc. should be listed here.
167
168 =head2 Module removals
169
170 XXX Remove this section if inapplicable.
171
172 The following modules will be removed from the core distribution in a
173 future release, and will at that time need to be installed from CPAN.
174 Distributions on CPAN which require these modules will need to list them as
175 prerequisites.
176
177 The core versions of these modules will now issue C<"deprecated">-category
178 warnings to alert you to this fact.  To silence these deprecation warnings,
179 install the modules in question from CPAN.
180
181 Note that these are (with rare exceptions) fine modules that you are encouraged
182 to continue to use.  Their disinclusion from core primarily hinges on their
183 necessity to bootstrapping a fully functional, CPAN-capable Perl installation,
184 not usually on concerns over their design.
185
186 =over
187
188 =item XXX
189
190 XXX Note that deprecated modules should be listed here even if they are listed
191 as an updated module in the L</Modules and Pragmata> section.
192
193 =back
194
195 [ List each other deprecation as a =head2 entry ]
196
197 =head1 Performance Enhancements
198
199 XXX Changes which enhance performance without changing behaviour go here.
200 There may well be none in a stable release.
201
202 [ List each enhancement as a =item entry ]
203
204 =over 4
205
206 =item *
207
208 Reduce cost of SvVALID().
209
210 =item *
211
212 C<$ref1 = $ref2> has been optimized.
213
214 =item *
215
216 Array and hash assignment are now faster, e.g.
217
218     (..., @a) = (...);
219     (..., %h) = (...);
220
221 especially when the RHS is empty.
222
223 =item *
224
225 Reduce the number of odd special cases for the SvSCREAM flag.
226
227 =item *
228
229 Aavoid sv_catpvn() in do_vop() when unneeded.
230
231 =item *
232
233 Enhancements in Regex concat COW implementation.
234
235 =item *
236
237 Speed up AV and HV clearing/undeffing.
238
239 =item *
240
241 Better optimise array and hash assignment
242
243 =back
244
245 =head1 Modules and Pragmata
246
247 XXX All changes to installed files in F<cpan/>, F<dist/>, F<ext/> and F<lib/>
248 go here.  If Module::CoreList is updated, generate an initial draft of the
249 following sections using F<Porting/corelist-perldelta.pl>.  A paragraph summary
250 for important changes should then be added by hand.  In an ideal world,
251 dual-life modules would have a F<Changes> file that could be cribbed.
252
253 [ Within each section, list entries as a =item entry ]
254
255 =head2 New Modules and Pragmata
256
257 =over 4
258
259 =item *
260
261 XXX
262
263 =back
264
265 =head2 Updated Modules and Pragmata
266
267 =over 4
268
269 =item *
270
271 L<Time::HiRes> has been updated to use clockid_t.
272
273 =item *
274
275 L<Data::Dumper> the XS implementation now supports Deparse.
276
277 =item *
278
279 L<Unicode::Normalize> is now maintained by p5p and has been moved to dist/
280
281 =item *
282
283 L<Errno> Document that using C<%!> loads Errno for you.
284
285 =item *
286
287 L<Unicode::Collate> has been upgraded from version 1.14 to 1.18.
288
289 =item *
290
291 L<Math::BigInt> has been upgraded from version 1.999726(_01) to 1.999727.
292
293 There have also been some core customizations.
294
295 =item *
296
297 L<podlators> has been upgraded from version 4.08 to 4.09.
298
299 =item *
300
301 L<Archive::Tar> has been upgraded from version 2.16 to 2.18.
302
303 Capture STDERR when necessary.
304
305 Several minor updates.
306
307 =item *
308
309 L<Net::Ping> remove sudo from 500_ping_icmp.t.
310
311 Upgrade from version 2.51 to 2.55.
312
313 Avoid stderr noise in tests
314
315 Check for echo in new Net::Ping tests.
316
317 =item *
318
319 L<Test::Simple> has been upgraded from version 1.302059 to 1.302062.
320
321 =item *
322
323 L<Term::ANSIColor> has been upgraded from version 4.05 to 4.06.
324
325 =item *
326
327 L<Scalar::Utils> and L<List::Utils> have been customized in core.
328
329 =item *
330
331 L<Math::Complex> has been customized in core.
332
333 =item *
334
335 L<JSON::PP> Customized in core.
336
337 =item *
338
339 L<POSIX> Version Bump
340
341 =item *
342
343 L<Unicode::UCD> has had its documentation updated to give a recipe for
344 using it to get the information contained in F<unicore/Name.pl>.  It has
345 long been deprecated to use any file from F<unicore/>, and their
346 contents or even existence may change at any time without notice.
347
348 =item *
349
350 L<XXX> has been upgraded from version A.xx to B.yy.
351
352 =back
353
354 =head2 Removed Modules and Pragmata
355
356 =over 4
357
358 =item *
359
360 XXX
361
362 =back
363
364 =head1 Documentation
365
366 XXX Changes to files in F<pod/> go here.  Consider grouping entries by
367 file and be sure to link to the appropriate page, e.g. L<perlfunc>.
368
369 =head2 New Documentation
370
371 XXX Changes which create B<new> files in F<pod/> go here.
372
373 =head3 L<XXX>
374
375 XXX Description of the purpose of the new file here
376
377 =head2 Changes to Existing Documentation
378
379 XXX Changes which significantly change existing files in F<pod/> go here.
380 However, any changes to F<pod/perldiag.pod> should go in the L</Diagnostics>
381 section.
382
383 =head3 L<perlfunc>
384
385 =over 4
386
387 =item *
388
389 Defined on aggregates is no longer allowed. Perlfunc was still reporting it as
390 deprecated, and that it will be deleted in the future.
391
392 =back
393
394 =head3 L<perldata>
395
396 =over 4
397
398 =item *
399
400 Use of single character variables, with the variable name a non printable
401 character in the range \x80-\xFF is no longer allowed. Update the docs to
402 reflect this.
403
404 =back
405
406 =head3 L<perlobj>
407
408 =over 4
409
410 =item *
411
412 Added a section on calling methods using their fully qualified names.
413
414 =item *
415
416 Do not discourage manual @ISA.
417
418 =back
419
420 =head3 L<perlop>
421
422 =over 4
423
424 =item *
425
426 Clarify behavior single quote regexps.
427
428 =back
429
430 =head3 L<perllocale>
431
432 =over 4
433
434 =item *
435
436 Some locales aren't compatible with Perl.  Note the potential bad
437 consequences of using them.
438
439 =back
440
441 =head3 L<perldiag>
442
443 =over 4
444
445 =item *
446
447 Deprecations are to be marked with a D.
448 C<"%s() is deprecated on :utf8 handles"> use a deprecation message, and as
449 such, such be marked C<"(D deprecated)"> and not C<"(W deprecated)">.
450
451 =back
452
453 =head3 L<perlguts>
454
455 =over 4
456
457 =item *
458
459 add pTHX_ to magic method examples.
460
461 =back
462
463 =head3 L<perlvar>
464
465 =over 4
466
467 =item *
468
469 Document @ISA. Was documented other places, not not in perlvar.
470
471 =back
472
473 =head3 L<perlootut>
474
475 =over 4
476
477 =item *
478
479 Tidy the document.
480
481 =item *
482
483 Mention Moo more.
484
485 =back
486
487 =head3 L<perlhack>
488
489 =over 4
490
491 =item *
492
493 Document Tab VS Space.
494
495 =back
496
497 =head3 L<perlre>
498
499 =over 4
500
501 =item *
502
503 Don't impugn the stability of all (?…) constructs.
504
505 =item *
506
507 Summarise full syntax for (?(cond)then|else) constructs.
508
509 =item *
510
511 Minor tweaks and formatting changes.
512
513 =item *
514
515 perlre: regularise list items
516
517 =item *
518
519 Document the package for C<$REGMARK> and C<$REGERROR>.
520
521 =back
522
523 =head1 Diagnostics
524
525 The following additions or changes have been made to diagnostic output,
526 including warnings and fatal error messages.  For the complete list of
527 diagnostic messages, see L<perldiag>.
528
529 XXX New or changed warnings emitted by the core's C<C> code go here.  Also
530 include any changes in L<perldiag> that reconcile it to the C<C> code.
531
532 =head2 New Diagnostics
533
534 XXX Newly added diagnostic messages go under here, separated into New Errors
535 and New Warnings
536
537 =head3 New Errors
538
539 =over 4
540
541 =item *
542
543 XXX L<message|perldiag/"message">
544
545 =back
546
547 =head3 New Warnings
548
549 =over 4
550
551 =item *
552
553 XXX L<message|perldiag/"message">
554
555 =back
556
557 =head2 Changes to Existing Diagnostics
558
559 XXX Changes (i.e. rewording) of diagnostic messages go here
560
561 =over 4
562
563 =item *
564
565 Improve error for missing tie() package/method. This brings the error messages
566 in line with the ones used for normal method calls, despite not using
567 call_method().
568
569 =item *
570
571 Make the sysread()/syswrite/() etc :utf8 handle warnings default. These
572 warnings were under 'deprecated' previously.
573
574 =item *
575
576 'do' errors now refer to 'do' (not 'require').
577
578 =back
579
580 =head1 Utility Changes
581
582 XXX Changes to installed programs such as F<perlbug> and F<xsubpp> go here.
583 Most of these are built within the directory F<utils>.
584
585 [ List utility changes as a =head2 entry for each utility and =item
586 entries for each change
587 Use L<XXX> with program names to get proper documentation linking. ]
588
589 =head2 L<XXX>
590
591 =over 4
592
593 =item *
594
595 Porting/pod_lib.pl
596
597 Removed spurious executable bit.
598
599 Account for possibility of DOS file endings.
600
601 =item *
602
603 perf/benchmarks
604
605 Tidy file, rename some symbols.
606
607 =item *
608
609 Porting/checkAUTHORS.pl
610
611 Replace obscure character range with \w.
612
613 =item *
614
615 t/porting/regen.t
616
617 try to be more helpful when tests fail.
618
619 =item *
620
621 utils/h2xs.PL
622
623 Avoid infinite loop for enums.
624
625 =back
626
627 =head1 Configuration and Compilation
628
629 XXX Changes to F<Configure>, F<installperl>, F<installman>, and analogous tools
630 go here.  Any other changes to the Perl build process should be listed here.
631 However, any platform-specific changes should be listed in the
632 L</Platform Support> section, instead.
633
634 [ List changes as a =item entry ].
635
636 =over 4
637
638 =item *
639
640 Remove "Warning: perl appears in your path"
641
642 This install warning is more or less obsolete, since most platforms already
643 *will* have a /usr/bin/perl or similar provided by the OS.
644
645 =item *
646
647 Reduce verbosity of "make install.man"
648
649 Previously, two progress messages were emitted for each manpage: one by
650 installman itself, and one by the function in install_lib.pl that it calls to
651 actually install the file. Disabling the second of those in each case saves
652 over 750 lines of unhelpful output.
653
654 =item *
655
656 Cleanup for clang -Weverything support. [perl 129961]
657
658 =item *
659
660 Configure: signbit scan was assuming too much, stop assuming negative 0.
661
662 =item *
663
664 Various compiler warnings have been silenced.
665
666 =back
667
668 =head1 Testing
669
670 XXX Any significant changes to the testing of a freshly built perl should be
671 listed here.  Changes which create B<new> files in F<t/> go here as do any
672 large changes to the testing harness (e.g. when parallel testing was added).
673 Changes to existing files in F<t/> aren't worth summarizing, although the bugs
674 that they represent may be covered elsewhere.
675
676 [ List each test improvement as a =item entry ]
677
678 =over 4
679
680 =item *
681
682 XS-APItest/t/utf8.t: Several small fixes and enhancements.
683
684 =item *
685
686 Tests for locales were erroneously using locales incompatible with Perl.
687
688 =back
689
690 =head1 Platform Support
691
692 XXX Any changes to platform support should be listed in the sections below.
693
694 [ Within the sections, list each platform as a =item entry with specific
695 changes as paragraphs below it. ]
696
697 =head2 New Platforms
698
699 XXX List any platforms that this version of perl compiles on, that previous
700 versions did not.  These will either be enabled by new files in the F<hints/>
701 directories, or new subdirectories and F<README> files at the top level of the
702 source tree.
703
704 =over 4
705
706 =item XXX-some-platform
707
708 XXX
709
710 =item Darwin
711
712 don't treat -Dprefix=/usr as special, instead require an extra option
713 -Ddarwin_distribution to produce the same results.
714
715 =item POSIX
716
717 Finish removing POSIX deprecated functions.
718
719 =item OS X
720
721 OS X El Capitan doesn't implement the clock_gettime() or clock_getrez() APIs,
722 emulate them as necessary.
723
724 =item macOS
725
726 Deprecated syscall(2) on macOS 10.12.
727
728 =item EBCDIC
729
730 Several tests have been updated to work (or be skipped) on EBCDIC platforms.
731
732 =item HP-UX
733
734 L<Net::Ping> UDP test is skipped on HP-UX.
735
736 =item VMS
737
738 Move _pDEPTH and _aDEPTH after config.h otherwise DEBUGGING may not be defined
739 yet.
740
741 =item VMS And Win32
742
743 Fix some breakage, add 'undef' value for default_inc_excludes_dot in build
744 scripts.
745
746 =item Linux
747
748 Drop support for Linux a.out Linux has used ELF for over twenty years.
749
750 =item NetBSD-VAX
751
752 Test fixes and minor updates.
753
754 Account for lack of C<inf>, C<nan>, and C<-0.0> support.
755
756 =item Win32
757
758 fp definitions have been updated.
759
760 =item OpenBSD 6
761
762 OpenBSD 6 still does not support returning pid, gid or uid with SA_SIGINFO.
763 Make sure this is accounted for.
764
765 =item FreeBSD
766
767 t/uni/overload.t: Skip hanging test on FreeBSD.
768
769 =back
770
771 =head2 Discontinued Platforms
772
773 XXX List any platforms that this version of perl no longer compiles on.
774
775 =over 4
776
777 =item VMS
778
779 VAXC has not been a possibility for a good long while, and the versions of the
780 DEC/Compaq/HP/VSI C compiler that report themselves as "DEC" in a listing file
781 are 15 years or more out-of-date and can be safely desupported.
782
783 =item XXX-some-platform
784
785 XXX
786
787 =back
788
789 =head2 Platform-Specific Notes
790
791 XXX List any changes for specific platforms.  This could include configuration
792 and compilation changes or changes in portability/compatibility.  However,
793 changes within modules for platforms should generally be listed in the
794 L</Modules and Pragmata> section.
795
796 =over 4
797
798 =item XXX-some-platform
799
800 XXX
801
802 =back
803
804 =head1 Internal Changes
805
806 XXX Changes which affect the interface available to C<XS> code go here.  Other
807 significant internal changes for future core maintainers should be noted as
808 well.
809
810 [ List each change as a =item entry ]
811
812 =over 4
813
814 =item *
815
816 XXX
817
818 =back
819
820 =head1 Selected Bug Fixes
821
822 XXX Important bug fixes in the core language are summarized here.  Bug fixes in
823 files in F<ext/> and F<lib/> are best summarized in L</Modules and Pragmata>.
824
825 [ List each fix as a =item entry ]
826
827 =over 4
828
829 =item *
830
831 Handle SvIMMORTALs in LHS of list assign. [perl #129991]
832
833 =item *
834
835 [perl #130010] a5540cf breaks texinfo
836
837 This involved user-defined Unicode properties.
838
839 =item *
840
841 Fix error message for unclosed C<\N{> in regcomp.
842
843 An unclosed C<\N{> could give the wrong error message
844 C<"\N{NAME} must be resolved by the lexer">.
845
846 =item *
847
848 List assignment in list context where the LHS contained aggregates and
849 where there were not enough RHS elements, used to skip scalar lvalues.
850 Previously, C<(($a,$b,@c,$d) = (1))> in list context returned C<($a)>; now
851 it returns C<($a,$b,$d)>. C<(($a,$b,$c) = (1))> is unchanged: it still
852 returns <($a,$b,$c)>. This can be seen in the following:
853
854     sub inc { $_++ for @_ }
855     inc(($a,$b,@c,$d) = (10))
856
857 Formerly, the values of C<($a,$b,$d)> would be left as C<(11,undef,undef)>;
858 now they are C<(11,1,1)>.
859
860 =item *
861
862 [perl 129903]
863
864 The basic problem is that code like this: /(?{ s!!! })/ can trigger infinite
865 recursion on the C stack (not the normal perl stack) when the last successful
866 pattern in scope is itself. Since the C stack overflows this manifests as an
867 untrappable error/segfault, which then kills perl.
868
869 We avoid the segfault by simply forbidding the use of the empty pattern when it
870 would resolve to the currently executing pattern.
871
872 =item *
873
874 [perl 128997] Avoid reading beyond the end of the line buffer when there's a
875 short UTF-8 character at the end.
876
877 =item *
878
879 [perl 129950] fix firstchar bitmap under utf8 with prefix optimisation.
880
881 =item *
882
883 [perl 129954] Carp/t/arg_string.t: be liberal in f/p formats.
884
885 =item *
886
887 [perl 129928] make do "a\0b" fail silently instead of throwing.
888
889 =item *
890
891 [perl 129130] make chdir allocate the stack it needs.
892
893 =back
894
895 =head1 Known Problems
896
897 XXX Descriptions of platform agnostic bugs we know we can't fix go here.  Any
898 tests that had to be C<TODO>ed for the release would be noted here.  Unfixed
899 platform specific bugs also go here.
900
901 [ List each fix as a =item entry ]
902
903 =over 4
904
905 =item *
906
907 XXX
908
909 =back
910
911 =head1 Errata From Previous Releases
912
913 =over 4
914
915 =item *
916
917 XXX Add anything here that we forgot to add, or were mistaken about, in
918 the perldelta of a previous release.
919
920 =back
921
922 =head1 Obituary
923
924 XXX If any significant core contributor has died, we've added a short obituary
925 here.
926
927 =head1 Acknowledgements
928
929 XXX Generate this with:
930
931   perl Porting/acknowledgements.pl v5.25.5..HEAD
932
933 =head1 Reporting Bugs
934
935 If you find what you think is a bug, you might check the perl bug database
936 at L<https://rt.perl.org/> .  There may also be information at
937 L<http://www.perl.org/> , the Perl Home Page.
938
939 If you believe you have an unreported bug, please run the L<perlbug> program
940 included with your release.  Be sure to trim your bug down to a tiny but
941 sufficient test case.  Your bug report, along with the output of C<perl -V>,
942 will be sent off to perlbug@perl.org to be analysed by the Perl porting team.
943
944 If the bug you are reporting has security implications which make it
945 inappropriate to send to a publicly archived mailing list, then see
946 L<perlsec/SECURITY VULNERABILITY CONTACT INFORMATION>
947 for details of how to report the issue.
948
949 =head1 SEE ALSO
950
951 The F<Changes> file for an explanation of how to view exhaustive details on
952 what changed.
953
954 The F<INSTALL> file for how to build Perl.
955
956 The F<README> file for general stuff.
957
958 The F<Artistic> and F<Copying> files for copyright information.
959
960 =cut