Initial Commit
This commit is contained in:
135
database/perl/vendor/lib/CPANPLUS/Hacking.pod
vendored
Normal file
135
database/perl/vendor/lib/CPANPLUS/Hacking.pod
vendored
Normal file
@@ -0,0 +1,135 @@
|
||||
=pod
|
||||
|
||||
=head1 NAME
|
||||
|
||||
CPANPLUS::Hacking - developing CPANPLUS
|
||||
|
||||
=head1 DESCRIPTION
|
||||
|
||||
This document attempts to describe how to develop with the
|
||||
CPANPLUS environment most easily, how certain things work and why.
|
||||
|
||||
This is basically a quick-start guide to people who want to add
|
||||
features or patches to CPANPLUS.
|
||||
|
||||
=head1 OBTAINING CPANPLUS
|
||||
|
||||
Checkout CPANPLUS from its GIT repository at
|
||||
L<https://github.com/jib/cpanplus-devel> .
|
||||
|
||||
=head1 INSTALLING CPANPLUS
|
||||
|
||||
CPANPLUS follows the standard perl module installation process:
|
||||
|
||||
perl Makefile.PL
|
||||
make
|
||||
make test
|
||||
make install
|
||||
|
||||
=head1 CONFIGURING CPANPLUS
|
||||
|
||||
When running C<perl Makefile.PL> you will be prompted to configure.
|
||||
If you have already done so, and merely wish to update the C<Makefile>,
|
||||
simply run:
|
||||
|
||||
perl Makefile.PL JFDI=1
|
||||
|
||||
This will keep your configuration intact. Note however, if there are
|
||||
changes to the default configuration file C<Config.pm-orig>, you should
|
||||
either delete your current config file and reconfigure, or patch your
|
||||
config file from the new entries in C<Config.pm-orig>.
|
||||
|
||||
=head1 RUNNING CPANPLUS FROM DEVELOPMENT ENVIRONMENT
|
||||
|
||||
If you'd rather not install the development version to your
|
||||
C<site_perl> directory, that's no problem. You can set your C<PERL5LIB>
|
||||
environment variable to CPANPLUS' C<lib> directory, and you can run it
|
||||
from there.
|
||||
|
||||
=head1 RUNNING CPANPLUS TESTS
|
||||
|
||||
Tests are what tells us if CPANPLUS is working. If a test is not working,
|
||||
try to run it explicitly like this:
|
||||
|
||||
perl -I/path/to/cpanplus/lib t/XX_name_of_test.t 1
|
||||
|
||||
The extra '1' makes sure that all the messages and errors (they might
|
||||
be errors we're testing for!) are being printed rather than kept quiet.
|
||||
This is a great way to find out the context of any failures that may
|
||||
occur.
|
||||
|
||||
If you believe this test failure proves a bug in CPANPLUS, the long
|
||||
output of the test file is something we'd like to see alongside your
|
||||
bug report.
|
||||
|
||||
=head1 FINDING BUGS
|
||||
|
||||
Sometimes you might find bugs in CPANPLUS' behaviour. If you encounter
|
||||
these in a development snapshot, we'd appreciate a complete patch (as
|
||||
described below in the L<SENDING PATCHES> section.
|
||||
|
||||
If it's way over your head, then of course reporting the bug is always
|
||||
better than not reporting it at all. Before you do so though, make
|
||||
sure you have the B<latest> development snapshot, and the bug still
|
||||
persists there. If so, report the bug to this address:
|
||||
|
||||
bug-cpanplus@rt.cpan.org
|
||||
|
||||
A good C<patch> would have the following characteristics:
|
||||
|
||||
=over 4
|
||||
|
||||
=item Problem description
|
||||
|
||||
Describe clearly what the bug is you found, and what it should have
|
||||
done instead.
|
||||
|
||||
=item Program demonstrating the bug
|
||||
|
||||
Show us how to reproduce the bug, in a simple of a program as possible
|
||||
|
||||
=item [OPTIONAL] A patch to the test suite to test for the bug
|
||||
|
||||
Amend our test suite by making sure this bug will be found in this, and
|
||||
future versions of CPANPLUS (see L<SUPPLYING PATCHES>)
|
||||
|
||||
=item [OPTIONAL] A patch to the code + tests + documentation
|
||||
|
||||
Fix the bug, update the docs & tests. That way your bug will be gone
|
||||
forever :)
|
||||
|
||||
=back
|
||||
|
||||
=head1 SUPPLYING PATCHES
|
||||
|
||||
Patches are a good thing, and they are welcome. Especially if they fix
|
||||
bugs you've found along the way, or that others have reported.
|
||||
|
||||
We prefer patches in the following format:
|
||||
|
||||
=over 4
|
||||
|
||||
=item * In C<diff -u> or C<diff -c> format
|
||||
|
||||
=item * From the root of the snapshot
|
||||
|
||||
=item * Including patches for code + tests + docs
|
||||
|
||||
=item * Sent per mail to bug-cpanplus@rt.cpan.org
|
||||
|
||||
=item * With subject containing C<[PATCH]> + description of the patch
|
||||
|
||||
=back
|
||||
|
||||
You will always be informed if a patch is applied or rejected, and in
|
||||
case of rejection why that is (perhaps you can tweak the patch to have
|
||||
it accepted after all).
|
||||
|
||||
=cut
|
||||
|
||||
__END__
|
||||
|
||||
* perl5lib
|
||||
* perl t/foo 1
|
||||
* patches to cpanplus-devel
|
||||
* snap/devel.tgz
|
||||
Reference in New Issue
Block a user