Kwalitee Issues


Add a Makefile.PL (for ExtUtils::MakeMaker/Module::Install) or a Build.PL (for Module::Build and its friends), or use a distribution builder such as Dist::Zilla, Dist::Milla, Minilla.


Add a Changelog (best named 'Changes') to the distribution. It should list at least major changes implemented in newer versions.


Add =head1 LICENSE and the text of the license to the main module in your code.


Add a MANIFEST to the distribution. Your buildtool should be able to autogenerate it (eg "make manifest" or "./Build manifest")


Add a META.yml to the distribution. Your buildtool should be able to autogenerate it.


Add tests!


Run a proper command ("make manifest" or "./Build manifest", maybe with a force option), or use a distribution builder to generate the MANIFEST. Or update MANIFEST manually.

Error: Cannot find MANIFEST in dist.


Remove the POD errors. You can check for POD errors automatically by including Test::Pod to your test suite.

Error: ConfigReader-0.5/ Around line 43: Unterminated C<...> sequenceAround line 80: Unterminated C<...> sequence


Add =head1 LICENSE and/or the proper text of the well-known license to the main module in your code.


Add a META.json to the distribution. Your buildtool should be able to autogenerate it.


Add tests or move to the t/ directory!


Define the license if you are using in Build.PL. If you are using MakeMaker (Makefile.PL) you should upgrade to ExtUtils::MakeMaker version 6.31.


Move your *.pm files in a directory named 'lib'. The directory structure should look like 'lib/Your/' for a module named 'Your::Module'. If you need to provide additional files, e.g. for testing, that should not be considered for Kwalitee, then you should look at the 'provides' map in META.yml to limit the files scanned; or use the 'no_index' map to exclude parts of the distribution.



Add 'use warnings' (or its equivalents) to all modules (this will require perl > 5.6), or convince us that your favorite module is well-known enough and people can easily see the modules warn when something bad happens.

Error: ConfigReader::DirectiveStyle, ConfigReader::Spec, ConfigReader::Values


Name Abstract Version View
ConfigReader::DirectiveStyle 0.5 metacpan
ConfigReader::Spec 0.5 metacpan
ConfigReader::Values stores a set of configuration values 0.5 metacpan

Other Files

README metacpan