Yote

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.

metricremedy
extracts nicely

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.

has changelog

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.

no symlinks

This distribution includes symbolic links (symlinks). This is bad, because there are operating systems that do not handle symlinks.

Remove the symlinks from the distribution.

buildtool not executable

The build tool (Build.PL/Makefile.PL) is executable. This is bad because you should specify which perl you want to use while installing.

Change the permissions of Build.PL/Makefile.PL to not-executable.

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 underscore files

This distribution has dot underscore files which may cause various problems.

If you use Mac OS X, set COPYFILE_DISABLE (for OS 10.5 and better) or COPY_EXTENDED_ATTRIBUTES_DISABLE (for OS 10.4) environmental variable to true to exclude dot underscore files from a distribution.

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.

use strict

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.

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

package version matches dist version

None of the package versions in this distribution matches the distribution version.

Fix the version(s).

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.

metricremedy
meta yml declares perl version

This distribution does not declare the minimum perl version in META.yml.

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.

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.

is prereq

This distribution is not required by another distribution by another author.

Convince / force / bribe another CPAN author to use this distribution.

Experimental metrics

These fails are not serious and don't affect your Kwalitee scores at all.

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

has separate license file

This distribution does not have a LICENSE or LICENCE file in its root directory.

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

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

easily repackageable by debian

It is easy to repackage this module by Debian.

Fix each one of the metrics this depends on.

easily repackageable by fedora

It is easy to repackage this module by Fedora.

Fix each one of the metrics this depends on.

History