Kwalitee Issues

extracts_nicely

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.

Error: More than one top directories are found: ::-lib-ExtUtils-t-MM_Win32:t;::-ext-DB_File-t-db-recno:t;::-ext-DB_File-t-db-hash:t;::-ext-Storable-t-downgrade:t;::-ext-Storable-t-malice:t;op-regexp_noamp:t;::-ext-Storable-t-utf8hash:t;::-lib-Net-t-ftp:t;::-ext-B-t-xref:t;::-ext-IPC-SysV-t-msg:t;::-lib-blib:t;::-lib-vars:t;::-lib-Memoize-t-tie:t;::-ext-GDBM_File-gdbm:t;::-ext-IPC-SysV-t-sem:t;::-lib-Term-ReadLine:t;op-subst:t;::-ext-Opcode-ops:t;::-lib-Memoize-t-tie_ndbm:t;::-ext-Storable-t-utf8:t;::-lib-ExtUtils-t-MM_Cygwin:t;op-hashassign:t;::-lib-IPC-SysV:t;op-utfhash:t;::-lib-Net-t-require:t;::-lib-utf8:t;::-ext-Storable-t-croak:t;::-ext-NDBM_File-ndbm:t;::-ext-DB_File-t-db-btree:t;op-regexp:t;op-oct:t;::-ext-Socket-socketpair:t;::-lib-ExtUtils-t-MM_BeOS:t;op-exists_sub:t;::-lib-AnyDBM_File:t;op-local:t;op-regmesg:t;::-lib-ExtUtils-t-MM_VMS:t;op-pat:t;::-lib-CPAN-t-Nox:t;op-magic:t;op-taint:t;::-lib-Memoize-t-tie_gdbm:t;comp-proto:t;::-lib-Memoize-t-errors:t;comp-colon:t;op-eval:t;::-ext-IPC-SysV-ipcsysv:t;::-ext-Storable-t-restrict:t

has_readme

Add a README to the distribution. It should contain a quick description of your module and how to install it.

has_manifest

Add a MANIFEST to the distribution. Your buildtool should be able to autogenerate it (eg "make manifest" or "./Build manifest")

has_meta_yml

Add a META.yml to the distribution. Your buildtool should be able to autogenerate it.

has_buildtool

Add a Makefile.PL (for ExtUtils::MakeMaker/Module::Install) or a Build.PL (for Module::Build and its friends), or use a distribution builder such as Dist::Zilla, Dist::Milla, Minilla.

has_changelog

Add a Changelog (best named 'Changes') to the distribution. It should list at least major changes implemented in newer versions.

has_tests

Add tests!

has_version

Add a version number to the packed distribution. Or use a buildtool ('make dist' or 'Build dist')

has_proper_version

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'

portable_filenames

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

Error:

  • ::-ext-B-t-xref:t
  • ::-ext-DB_File-t-db-btree:t
  • ::-ext-DB_File-t-db-hash:t
  • ::-ext-DB_File-t-db-recno:t
  • ::-ext-GDBM_File-gdbm:t
  • ::-ext-IPC-SysV-ipcsysv:t
  • ::-ext-IPC-SysV-t-msg:t
  • ::-ext-IPC-SysV-t-sem:t
  • ::-ext-NDBM_File-ndbm:t
  • ::-ext-Opcode-ops:t
  • ::-ext-Socket-socketpair:t
  • ::-ext-Storable-t-croak:t
  • ::-ext-Storable-t-downgrade:t
  • ::-ext-Storable-t-malice:t
  • ::-ext-Storable-t-restrict:t
  • ::-ext-Storable-t-utf8:t
  • ::-ext-Storable-t-utf8hash:t
  • ::-lib-AnyDBM_File:t
  • ::-lib-CPAN-t-Nox:t
  • ::-lib-ExtUtils-t-MM_BeOS:t
  • ::-lib-ExtUtils-t-MM_Cygwin:t
  • ::-lib-ExtUtils-t-MM_VMS:t
  • ::-lib-ExtUtils-t-MM_Win32:t
  • ::-lib-IPC-SysV:t
  • ::-lib-Memoize-t-errors:t
  • ::-lib-Memoize-t-tie:t
  • ::-lib-Memoize-t-tie_gdbm:t
  • ::-lib-Memoize-t-tie_ndbm:t
  • ::-lib-Net-t-ftp:t
  • ::-lib-Net-t-require:t
  • ::-lib-Term-ReadLine:t
  • ::-lib-blib:t
  • ::-lib-utf8:t
  • ::-lib-vars:t
  • comp-colon:t
  • comp-proto:t
  • op-eval:t
  • op-exists_sub:t
  • op-hashassign:t
  • op-local:t
  • op-magic:t
  • op-oct:t
  • op-pat:t
  • op-regexp:t
  • op-regexp_noamp:t
  • op-regmesg:t
  • op-subst:t
  • op-taint:t
  • op-utfhash:t

has_human_readable_license

Add a section called "LICENSE" to the documentation, or add a file named LICENSE to the distribution.

has_license_in_source_file

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

manifest_matches_dist

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.

Error: Cannot find MANIFEST in dist.

has_abstract_in_pod

Provide a short description in the NAME section of the pod (after the module name followed by a hyphen) at least for the main module of this distribution.

main_module_version_matches_dist_version

Make sure that the main module name and version are the same of the distribution.

has_meta_json

Add a META.json to the distribution. Your buildtool should be able to autogenerate it.

has_tests_in_t_dir

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

meta_yml_has_license

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

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

has_separate_license_file

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