X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/24b68a051f54fc09ae78eb3e74154b093c890637..b6aeebb8de1423b2c16b592dc2f2cd2d6897bbb9:/pod/perlhack.pod diff --git a/pod/perlhack.pod b/pod/perlhack.pod index ad4a117..64329ed 100644 --- a/pod/perlhack.pod +++ b/pod/perlhack.pod @@ -64,8 +64,8 @@ subject: % perlbug -s "[PATCH] $(git log -1 --oneline HEAD)" -f 0001-*.patch The perlbug program will ask you a few questions about your email -address and the patch you're submitting. Once you've answered them you -can submit your patch. +address and the patch you're submitting. Once you've answered them it +will submit your patch via email. =item * Thank you @@ -76,9 +76,9 @@ Thank you! =head1 BUG REPORTING -If you want to report a bug in Perl, you must use the F command -line tool. This tool will ensure that your bug report includes all the -relevant system and configuration information. +If you want to report a bug in Perl, you must use the F +command line tool. This tool will ensure that your bug report includes +all the relevant system and configuration information. To browse existing Perl bugs and patches, you can use the web interface at L. @@ -95,7 +95,8 @@ please add it. This will help the porters fix the bug. The perl5-porters (p5p) mailing list is where the Perl standard distribution is maintained and developed. The people who maintain Perl -are also referred to as the "Perl 5 Porters", or just the "porters". +are also referred to as the "Perl 5 Porters", "p5p" or just the +"porters". A searchable archive of the list is available at L. There is @@ -109,6 +110,12 @@ submitted to the maintenance and development branches of the perl repository. See L for subscription and archive information. +=head2 #p5p on IRC + +Many porters are also active on the L channel. +Feel free to join the channel and ask questions about hacking on the +Perl core. + =head1 GETTING THE PERL SOURCE All of Perl's source code is kept centrally in a Git repository at @@ -216,7 +223,7 @@ C command produces one patch file for each commit you made. If you prefer to send a single patch for all commits, you can use C. - % git co blead + % git checkout blead % git pull % git diff blead my-branch-name @@ -474,10 +481,10 @@ information on reporting bugs and submitting patches. In most cases, patches to modules in F should be sent upstream and should not be applied to the Perl core individually. If a patch to a file in F absolutely cannot wait for the fix to be made -upstream, released to CPAN and copied to blead, you must add (or update) a -C entry in the F file to flag that a -local modification has been made. See F for -more details. +upstream, released to CPAN and copied to blead, you must add (or +update) a C entry in the F<"Porting/Maintainers.pl"> file +to flag that a local modification has been made. See +F<"Porting/Maintainers.pl"> for more details. In contrast, modules in the F directory are maintained in the core. @@ -690,7 +697,8 @@ The F library provides some of the features of L, but avoids loading most modules and uses as few core features as possible. -If you write your own test, use the L. +If you write your own test, use the L. =over 4 @@ -772,8 +780,8 @@ F. =item * test.torture torturetest -Run all the usual tests and some extra tests. As of Perl 5.8.0, the only -extra tests are Abigail's JAPHs, F. +Run all the usual tests and some extra tests. As of Perl 5.8.0, the +only extra tests are Abigail's JAPHs, F. You can also run the torture test with F by giving C<-torture> argument to F. @@ -833,14 +841,14 @@ because L needs to be able to schedule individual non-conflicting test scripts itself, and there is no standard interface to C utilities to interact with their job schedulers. -Note that currently some test scripts may fail when run in parallel (most -notably C). If necessary, run just the failing scripts -again sequentially and see if the failures go away. +Note that currently some test scripts may fail when run in parallel +(most notably F). If necessary, run just the failing +scripts again sequentially and see if the failures go away. =head2 Running tests by hand -You can run part of the test suite by hand by using one of the following -commands from the F directory: +You can run part of the test suite by hand by using one of the +following commands from the F directory: ./perl -I../lib TEST list-of-.t-files @@ -852,9 +860,9 @@ or =head2 Using F for testing -If you use C for testing, you have several command line options -available to you. The arguments are as follows, and are in the order -that they must appear if used together. +If you use C for testing, you have several command line +options available to you. The arguments are as follows, and are in the +order that they must appear if used together. harness -v -torture -re=pattern LIST OF FILES TO TEST harness -v -torture -re LIST OF PATTERNS TO MATCH @@ -940,6 +948,13 @@ Setting this variable skips the vrexx.t tests for OS2::REXX. This sets a variable in op/numconvert.t. +=item * PERL_TEST_MEMORY + +Setting this variable includes the tests in F. This should +be set to the number of gigabytes of memory available for testing, +eg. C indicates that tests that require 4GiB of +available memory can be run safely. + =back See also the documentation for the Test and Test::Harness modules, for @@ -1080,9 +1095,9 @@ each file's purpose. Perl instead begins each with a literary allusion to that file's purpose. Like chapters in many books, all top-level Perl source files (along -with a few others here and there) begin with an epigramic inscription -that alludes, indirectly and metaphorically, to the material you're -about to read. +with a few others here and there) begin with an epigrammatic +inscription that alludes, indirectly and metaphorically, to the +material you're about to read. Quotations are taken from writings of J.R.R. Tolkien pertaining to his Legendarium, almost always from I. Chapters and