NAME
CPAN::Reporter - Adds CPAN Testers reporting to CPAN.pm
VERSION
This documentation describes version 0.99_07.
SYNOPSIS
From the CPAN shell:
cpan> install CPAN::Reporter
cpan> reload cpan
cpan> o conf init test_report
DESCRIPTION
The CPAN Testers project captures and analyses detailed results from building and testing CPAN distributions on multiple operating systems and multiple versions of Perl. This provides valuable feedback to module authors and potential users to identify bugs or platform compatibility issues and improves the overall quality and value of CPAN.
One way individuals can contribute is to send a report for each module that they test or install. CPAN::Reporter is an add-on for the CPAN.pm module to send the results of building and testing modules to the CPAN Testers project. Partial support for CPAN::Reporter is available in CPAN.pm as of version 1.88; full support is available in CPAN.pm as of version 1.91_53.
GETTING STARTED
Installation
The first step in using CPAN::Reporter is to install it using whatever version of CPAN.pm is already installed. CPAN.pm will be upgraded as a dependency if necessary.
cpan> install CPAN::Reporter
If CPAN.pm was upgraded, it needs to be reloaded.
cpan> reload cpan
Configuration
If upgrading from a very old version of CPAN.pm, users may be prompted to renew their configuration settings, including the 'test_report' option to enable CPAN::Reporter.
If not prompted automatically, users should manually initialize CPAN::Reporter support. After enabling CPAN::Reporter, CPAN.pm will automatically continue with interactive configuration of CPAN::Reporter options.
cpan> o conf init test_report
Users will need to enter an email address in one of the following formats:
johndoe@example.com
John Doe <johndoe@example.com>
"John Q. Public" <johnqpublic@example.com>
Because cpan-testers
uses a mailing list to collect test reports, it is helpful if the email address provided is subscribed to the list. Otherwise, test reports will be held until manually reviewed and approved. Subscribing an account to the cpan-testers list is as easy as sending a blank email to cpan-testers-subscribe@perl.org and replying to the confirmation email.
Users will also be prompted to enter the name of an outbound email server. It is recommended to use an email server provided by the user's ISP or company. Alternatively, leave this blank to attempt to send email directly to perl.org.
Users that are new to CPAN::Reporter should accept the recommended values for other configuration options.
After completing interactive configuration, be sure to commit (save) the CPAN configuration changes.
cpan> o conf commit
See CPAN::Reporter::Config for advanced configuration settings.
Using CPAN::Reporter
Once CPAN::Reporter is enabled and configured, test or install modules with CPAN.pm as usual.
For example, to force CPAN to repeat tests for CPAN::Reporter to see how it works:
cpan> force test CPAN::Reporter
When distribution tests fail, users will be prompted to edit the report to add addition information.
UNDERSTANDING TEST GRADES
CPAN::Reporter will assign one of the following grades to the report:
pass
-- all tests were successful
fail
-- one or more tests failed, one or more test files died during testing or no test output was seen
na
-- tests could not be run on this platform or version of perl
unknown
-- no test files could be found (either t/*.t or test.pl) or a result could not be determined from test output (e.g tests may have hung and been interrupted)
In returning results to CPAN.pm, "pass" and "unknown" are considered successful attempts to "make test" or "Build test" and will not prevent installation. "fail" and "na" are considered to be failures and CPAN.pm will not install unless forced.
If prerequisites specified in Makefile.PL
or Build.PL
are not available, no report will be generated and a failure will be signaled to CPAN.pm.
PRIVACY WARNING
CPAN::Reporter includes information in the test report about environment variables and special Perl variables that could be affecting test results in order to help module authors interpret the results of the tests. This includes information about paths, terminal, locale, user/group ID, installed toolchain modules (e.g. ExtUtils::MakeMaker) and so on.
These have been intentionally limited to items that should not cause harmful personal information to be revealed -- it does not include your entire environment. Nevertheless, please do not use CPAN::Reporter if you are concerned about the disclosure of this information as part of your test report.
Users wishing to review this information may choose to edit the report prior to sending it.
BUGS
Please report any bugs or feature using the CPAN Request Tracker. Bugs can be submitted through the web interface at http://rt.cpan.org/Dist/Display.html?Queue=CPAN-Reporter
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
SEE ALSO
Information about CPAN::Testers:
CPAN::Testers -- overview of CPAN Testers architecture stack
http://cpantesters.perl.org -- project home with all reports
http://cpantest.grango.org -- documentation and wiki
Additional Documentation:
CPAN::Reporter::Config -- advanced configuration settings
CPAN::Reporter::FAQ -- hints and tips
AUTHOR
David A. Golden (DAGOLDEN)
COPYRIGHT AND LICENSE
Copyright (c) 2006, 2007 by David A. Golden
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Files produced as output though the use of this software, including generated copies of boilerplate templates provided with this software, shall not be considered Derivative Works, but shall be considered the original work of the Licensor.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.