Kwalitee Issues

has_readme

Add a README to the distribution. It should contain a quick description of your module and how to install it.

has_changelog

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

has_tests

Add tests!

manifest_matches_dist

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:

  • MANIFEST (40) does not match dist (21):
  • Missing in Dist: Bot-Applebot-0.01/MANIFEST, Bot-Applebot-0.01/Makefile.PL, Bot-Applebot-0.01/bin/applebot, Bot-Applebot-0.01/inc/Module/Install.pm, Bot-Applebot-0.01/inc/Module/Install/Base.pm, Bot-Applebot-0.01/inc/Module/Install/Fetch.pm, Bot-Applebot-0.01/inc/Module/Install/Makefile.pm, Bot-Applebot-0.01/inc/Module/Install/Scripts.pm, Bot-Applebot-0.01/inc/Module/Install/Share.pm, Bot-Applebot-0.01/inc/Module/Install/WriteAll.pm, Bot-Applebot-0.01/lib/Bot/Applebot.pm, Bot-Applebot-0.01/share/adjectives.txt, Bot-Applebot-0.01/share/nouns.txt, SIGNATURE, TODO, inc/Module/Install/Can.pm, inc/Module/Install/Metadata.pm, inc/Module/Install/Win32.pm, lib/Bot/Applebot/Player.pm

meta_yml_declares_perl_version

If you are using Build.PL define the {requires}{perl} = VERSION field. If you are using MakeMaker (Makefile.PL) you should upgrade ExtUtils::MakeMaker to 6.48 and use MIN_PERL_VERSION parameter. Perl::MinimumVersion can help you determine which version of Perl your module needs.

has_meta_json

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

has_tests_in_t_dir

Add tests or move tests.pl to the t/ directory!

proper_libs

Move your *.pm files in a directory named 'lib'. The directory structure should look like 'lib/Your/Module.pm' 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.

Error: Bot-Applebot-0.01/lib/Bot/Applebot/Player.pm, Bot-Applebot-0.01/inc/Module/Install/Can.pm, Bot-Applebot-0.01/inc/Module/Install/Metadata.pm, Bot-Applebot-0.01/inc/Module/Install/Win32.pm

use_warnings

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

Error: Module::Install::Can, Module::Install::Metadata, Module::Install::Win32

no_unauthorized_packages

Ask the owner of the distribution (the one who released it first, or the one who is designated in x_authority) to give you a (co-)maintainer's permission.

Error:

  • Module::Install::Can
  • Module::Install::Metadata
  • Module::Install::Win32

consistent_version

Split the distribution, or fix the version numbers to make them consistent (use the highest version number to avoid version downgrade).

Error: 0.01,0.91

meta_yml_has_provides

Add all modules contained in this distribution to the META.yml field 'provides'. Module::Build or Dist::Zilla::Plugin::MetaProvides do this automatically for you.

has_separate_license_file

This is not a critical issue. Currently mainly informative for the CPANTS authors. It might be removed later.

Modules

Name Abstract Version View
Bot::Applebot Arbiter of the word card-based game Apples to Apples 0.01 metacpan
Bot::Applebot::Player metacpan
Module::Install::Can 0.91 metacpan
Module::Install::Metadata 0.91 metacpan
Module::Install::Win32 0.91 metacpan

Other Files

Bot-Applebot-0.01/META.yml metacpan
MANIFEST metacpan
META.yml metacpan
Makefile.PL metacpan