Kwalitee Issues

has_buildtool

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.

has_changelog

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

has_manifest

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

has_meta_yml

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

has_readme

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

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: Cannot find MANIFEST in dist.

package_version_matches_dist_version

Fix the version(s).

portable_filenames

Rename those files with alphanumerical characters, or maybe remove them because in many cases they are automatically generated for local installation.

Error:

  • man3/IO::Moose.3
  • man3/IO::Moose::File.3
  • man3/IO::Moose::Handle.3
  • man3/IO::Moose::Seekable.3
  • man3/MooseX::Types::CanonOpenModeStr.3
  • man3/MooseX::Types::OpenModeStr.3
  • man3/MooseX::Types::OpenModeWithLayerStr.3
  • man3/MooseX::Types::PerlIOLayerStr.3

prereq_matches_use

List all used modules in META.yml requires

Error:

  • Class::MOP
  • Exception::Argument
  • Exception::Fatal
  • File::Stat::Moose
  • File::Temp
  • Moose
  • Moose::Util::TypeConstraints
  • Scalar::Util
  • Test::Assert
  • constant::boolean
  • namespace::clean

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!

meta_yml_has_license

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.

has_separate_license_file

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