Kwalitee Fails

Core metrics

These fails do affect your Kwalitee scores. This distribution may not be installed cleanly, or may have some issues in license or documentation. Please consider fixing them, or tell us if they are false.

metric

remedy

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.

has tests

This distribution doesn't contain either a file called 'test.pl' or a directory called 't'. This indicates that it doesn't contain even the most basic test-suite. This is really BAD!

Add tests!

has license in source file

Does not have license information in any of its source files

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

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

consistent version

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).

Extra metrics

These fails affect your total Kwalitee score, but don't affect the one for the Game. Some of them should be fixed by all means. Others are just matters of taste.

metric

remedy

has tests in t dir

This distribution contains either a file called 'test.pl' (the old test file) or is missing a directory called 't'. This indicates that it uses the old test mechanism or it has no test-suite.

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

proper libs

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.

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 known license in source file

Does not have license information in any of its source files, or the information is not recognized by Software::License

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

use warnings

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.

Experimental metrics

Excellent. Your distribution passes all the experimental metrics.

History

Maintained by Kenichi Ishigaki <ishigaki@cpan.org>. If you find anything, submit it on GitHub.