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.
|no generated files||
This distribution has files/directories that should be generated at build time, not distributed by the author.
Remove the offending files/directories!
|no dot dirs||
This distribution has a dot directory, which most probably derives from a version control system.
Fix MANIFEST (or MANIFEST.SKIP) to exclude dot directories from a distribution. Use an appropriate tool and avoid archiving your working directory by hand. If you switch your version control system, remove old VCS directories after you migrate.
|manifest matches dist||
MANIFEST does not match the contents of this distribution.
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.
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
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'. 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.
|meta yml has license||
This distribution does not have a license defined in META.yml.
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.
|has separate license file||
This distribution does not have a LICENSE or LICENCE file in its root directory.
|build prereq matches use||
This distribution uses a module or a dist in its test suite that's not listed as a build prerequisite.
List all modules used in the test suite in META.yml build_requires