This distribution doesn't create a directory and extracts its content into this directory. Instead, it creates more than one directories (some of which are probably system-specific hidden files/directories), or it spews its content into the current directory, making it really hard/annoying to remove the unpacked package.
Pack the distribution with a proper command such as "make dist" and "./Build dist", or use a distribution builder such as Dist::Zilla, Dist::Milla, Minilla.
|meta yml is parsable||
The META.yml file of this distribution could not be parsed by the version of CPAN::Meta::YAML.pm CPANTS is using.
If you don't have one, add a META.yml file. Else, upgrade your YAML generator so it produces valid YAML.
|meta yml conforms to known spec||
META.yml does not conform to any recognised META.yml Spec.
Take a look at the META.yml Spec at http://module-build.sourceforge.net/META-spec-v1.4.html (for version 1.4) or http://search.cpan.org/perldoc?CPAN::Meta::Spec (for version 2), and change your META.yml accordingly.
The file "README" is missing from this distribution. The README provides some basic information to users prior to downloading and unpacking the distribution.
Add a README to the distribution. It should contain a quick description of your module and how to install it.
|has meta yml||
The file "META.yml" is missing from this distribution. META.yml is needed by people maintaining module collections (like CPAN), for people writing installation tools, or just people who want to know some stuff about a distribution before downloading it.
Add a META.yml to the distribution. Your buildtool should be able to autogenerate it.
The distribution hasn't got a Changelog (named something like m/^chang(es?|log)|history$/i. A Changelog helps people decide if they want to upgrade to a new version.
Add a Changelog (best named 'Changes') to the distribution. It should list at least major changes implemented in newer versions.
|has proper version||
The version number isn't a number. It probably contains letter besides a leading 'v', which it shouldn't
Remove all letters from the version number. If you want to mark a release as a developer release, use the scheme 'Module-1.00_01'
|no broken module install||
This distribution uses an obsolete version of Module::Install. Versions of Module::Install prior to 0.61 might not work on some systems at all. Additionally if your Makefile.PL uses the 'auto_install()' feature, you need at least version 0.64. Also, 1.04 is known to be broken.
Upgrade the bundled version of Module::Install to the most current release. Alternatively, you can switch to another build system / installer that does not suffer from this problem. (ExtUtils::MakeMaker, Module::Build both of which have their own set of problems.)
|no broken auto install||
This distribution uses an old version of Module::Install. Versions of Module::Install prior to 0.89 do not detect correcty that CPAN/CPANPLUS shell is used.
Upgrade the bundled version of Module::Install to at least 0.89, but preferably to the most current release. Alternatively, you can switch to another build system / installer that does not suffer from this problem. (ExtUtils::MakeMaker, Module::Build both of which have their own set of problems.)
This distribution does not 'use strict;' (or its equivalents) in all of its modules. Note that this is not about the actual strictness of the modules. It's bad if nobody can tell whether the modules are strictly written or not, without reading the source code of your favorite clever module that actually enforces strictness. In other words, it's bad if someone feels the need to add 'use strict' to your modules.
Add 'use strict' (or its equivalents) to all modules, or convince us that your favorite module is well-known enough and people can easily see the modules are strictly written.
|prereq matches use||
This distribution uses a module or a dist that's not listed as a prerequisite.
List all used modules in META.yml requires
This distribution has .pm files with inconsistent versions.
Split the distribution, or fix the version numbers to make them consistent (use the highest version number to avoid version downgrade).
|package version matches dist version||
None of the package versions in this distribution matches the distribution version.
Fix the version(s).
|meta yml declares perl version||
This distribution does not declare the minimum perl version in META.yml.
There is more than one .pm file in the base dir, or the .pm files are not in lib/ directory.
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'.
|meta yml has license||
This distribution does not have a license defined in META.yml.
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.
This distribution does not 'use warnings;' (or its equivalents) in all of its modules. Note that this is not about that your modules actually warn when something bad happens. It's bad if nobody can tell if a module warns or not, without reading the source code of your favorite module that actually enforces warnings. In other words, it's bad if someone feels the need to add 'use warnings' to your modules.
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.
This distribution is not required by another distribution by another author.
Convince / force / bribe another CPAN author to use this distribution.
These fails are not serious and don't affect your Kwalitee scores at all.
|meta yml has provides||
This distribution does not have a list of provided modules defined in META.yml.
|meta yml has repository resource||
This distribution does not have a link to a repository in META.yml.
Add a 'repository' resource to the META.yml via 'meta_add' accessor (for Module::Build) or META_ADD parameter (for ExtUtils::MakeMaker).
|fits fedora license||
Fits the licensing requirements of Fedora (Acceptable licenses: (perl, apache, artistic_2, gpl, lgpl, mit, mozilla)).
Replace the license or convince Fedora to accept this license as well.
|easily repackageable by fedora||
It is easy to repackage this module by Fedora.
Fix each one of the metrics this depends on.