Jifty

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

portable filenames

This distribution has at least one file with non-portable characters in its filename, which may cause problems under some environments.

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

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.

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

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.

no pod errors

The documentation for this distribution contains syntactic errors in its POD. Note that this metric tests all .pl, .pm and .pod files, even if they are in t/. See 'pod_message' in the dist error view for more info.

Remove the POD errors. You can check for POD errors automatically by including Test::Pod to your test suite.

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

valid signature

This dist failed its Module::Signature verification and does not to install automatically through the CPAN client if Module::Signature is installed. Note: unsigned dists will automatically pass this kwalitee check.

Sign the dist as the last step before creating the archive. Take care not to modify/regenerate dist meta files or the manifest.

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.

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

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

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

metricremedy
meta yml has provides

This distribution does not have a list of provided modules defined in META.yml.

Add all modules contained in this distribution to the META.yml field 'provides'. Module::Build or Dist::Zilla::Plugin::MetaProvides do this automatically for you.

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

History