Make sure your modules have a compliant abstract

curationCPANpod Wed 19 February 2014

The NAME section in the pod for your module(s) provides a one-line description of your module, often referred to as the abstract. Make sure all of your modules have an abstract, particularly the lead module in each distribution. And make sure it follows the convention, otherwise tools won't find it, including MetaCPAN.

Here's a well-formed abstract, taken from the pod for Type::Tiny:

=head1 NAME

Type::Tiny - tiny, yet Moo(se)-compatible type constraint

It's pretty simple, but to be really safe, here's how to make sure your abstract is 'clean':

The blank lines shouldn't even contain any spaces.

You might be thinking that surely you don't have to be quite so specific? Well, yes, I'm afraid you should.

You should do this for all modules you release to CPAN, but in particular you should do it for the lead module in your distributions.

I'll suggest a Kwalitee check for this, maybe something for the QA Hackathon. But you could also look at CPAN::Critic::Module::Abstract from the prolific SHARYANTO.

comments powered by Disqus