Perl packaging notes for CPAN authors

From FedoraProject

Jump to: navigation, search
This page needs some love
This page should be revised or reconstructed to better suit the needs of Fedora.

This is a collection of points that come to mind for CPAN authors, by Fedora Perl packagers.

ExtUtils::MakeMaker, Module::Build or Module::Install?

It really doesn't matter to us; cpanspec and CPANPLUS::Dist::RPM both know how to deal with all three of these.

Module::Install does have the advantage of being able to mark requires as being build_requires or test_requires. This may come in handy at some point.

Declare all your deps, even core and testing!

The core Perl package has been splitting off "development" modules into sub-packages of their own for the last several Fedora releases. It's not safe to assume that, say, Test::More is installed on a system.

Clearly mark author tests as such

We try to not run author tests (e.g. bits like Test::Kwalitee, Test::Pod::Coverage, etc), but when they're not marked as such, oftimes they are. Using a requirement like "TEST_AUTHOR must be set for author tests" and skipping, or Module::Install::ExtraTests, helps us understand which is which -- and even better, helps our automated build and packaging tools skip these without any manual intervention.