Kwalitee Issues

no_generated_files

Remove the offending files/directories!

Error: Makefile

no_mymeta_files

Update MANIFEST.SKIP to exclude MYMETA files. If you are lazy, add "#!install_default" in your MANIFEST.SKIP and update your ExtUtils::Manifest if necessary, then some of the most common files will be excluded.

use_strict

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.

Error: Perlito5, Perlito5::AST, Perlito5::Dumper, Perlito5::Emitter::Token, Perlito5::Eval, Perlito5::Grammar, Perlito5::Grammar, Perlito5::Grammar::Attribute, Perlito5::Grammar::Attribute, Perlito5::Grammar::Expression, Perlito5::Grammar::Expression, Perlito5::Grammar::Precedence, Perlito5::Grammar::Precedence, Perlito5::Grammar::Regex6, Perlito5::Grammar::Regex6, Perlito5::Grammar::Sigil, Perlito5::Grammar::Sigil, Perlito5::Grammar::Space, Perlito5::Grammar::Space, Perlito5::Grammar::Statement, Perlito5::Grammar::Statement, Perlito5::Grammar::String, Perlito5::Grammar::String, Perlito5::JSON, Perlito5::Java::Emitter, Perlito5::Java::Runtime, Perlito5::Javascript2::Array, Perlito5::Javascript2::CORE, Perlito5::Javascript2::Emitter, Perlito5::Javascript2::IO, Perlito5::Javascript2::Runtime, Perlito5::Javascript2::Sprintf, Perlito5::Javascript3::CORE, Perlito5::Javascript3::Emitter, Perlito5::Javascript3::IO, Perlito5::Javascript3::Runtime, Perlito5::Javascript3::Sprintf, Perlito5::Match, Perlito5::Perl5::Runtime, Perlito5::Test, Perlito5::XS::Emitter, Perlito5X::Carp, Perlito5X::Dumper, Perlito5X::bytes, Perlito5X::encoding, Perlito5X::feature, Perlito5X::strict, Perlito5X::utf8, Perlito5X::warnings

no_pod_errors

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

Error: Perlito5-9.001/lib/Perlito5/AST.pm -- Around line 204: =begin without a target? Around line 227: '=end' without a target? Perlito5-9.001/lib/Perlito5/Emitter/Token.pm -- Around line 321: =begin without a target? Around line 349: '=end' without a target? Perlito5-9.001/lib/Perlito5/Eval.pm -- Around line 240: =begin without a target? Around line 274: '=end' without a target? Perlito5-9.001/lib/Perlito5/Grammar/Precedence.pm -- Around line 381: =begin without a target? Around line 418: '=end' without a target? Perlito5-9.001/lib/Perlito5/Grammar/Sigil.pm -- Around line 372: =begin without a target? Around line 398: '=end' without a target? Perlito5-9.001/lib/Perlito5/Java/Emitter.pm -- Around line 3972: =begin without a target? Around line 4000: '=end' without a target? Perlito5-9.001/lib/Perlito5/Javascript2/Emitter.pm -- Around line 3297: =begin without a target? Around line 3325: '=end' without a target? Perlito5-9.001/lib/Perlito5/Javascript3/Emitter.pm -- Around line 2142: =begin without a target? Around line 2170: '=end' without a target? Perlito5-9.001/lib/Perlito5/Macro.pm -- Around line 123: =begin without a target? Around line 157: '=end' without a target? Perlito5-9.001/lib/Perlito5/Match.pm -- Around line 14: =begin without a target? Around line 33: '=end' without a target? Perlito5-9.001/lib/Perlito5/Perl5/Emitter.pm -- Around line 473: =begin without a target? Around line 507: '=end' without a target? Perlito5-9.001/lib/Perlito5/Perl6/Emitter.pm -- Around line 741: =begin without a target? Around line 775: '=end' without a target? Perlito5-9.001/lib/Perlito5/Perl6/Runtime.pm -- Around line 34: =begin without a target? Around line 57: '=end' without a target? Perlito5-9.001/lib/Perlito5/XS/Emitter.pm -- Around line 688: =begin without a target? Around line 722: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Bareword.pm -- Around line 683: =begin without a target? Around line 711: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Block.pm -- Around line 306: =begin without a target? Around line 334: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Control.pm -- Around line 227: =begin without a target? Around line 262: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Expression.pm -- Around line 779: =begin without a target? Around line 807: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Number.pm -- Around line 106: =begin without a target? Around line 134: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Precedence.pm -- Around line 381: =begin without a target? Around line 418: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Print.pm -- Around line 212: =begin without a target? Around line 240: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Regex5.pm -- Around line 251: =begin without a target? Around line 279: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Regex6.pm -- Around line 161: =begin without a target? Around line 196: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Sigil.pm -- Around line 372: =begin without a target? Around line 398: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Space.pm -- Around line 172: =begin without a target? Around line 197: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Statement.pm -- Around line 330: =begin without a target? Around line 358: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar/Use.pm -- Around line 372: =begin without a target? Around line 400: '=end' without a target? Perlito5-9.001/src/Perlito5/Grammar.pm -- Around line 159: =begin without a target? Around line 194: '=end' without a target?

proper_libs

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.

Error: src/Perlito5/Grammar/Control.pm, src/Perlito5/Grammar.pm, src/Perlito5/Grammar/Attribute.pm, src/Perlito5/Grammar/Bareword.pm, src/Perlito5/Grammar/Block.pm, src/Perlito5/Grammar/Expression.pm, src/Perlito5/Grammar/Map.pm, src/Perlito5/Grammar/Number.pm, src/Perlito5/Grammar/Precedence.pm, src/Perlito5/Grammar/Print.pm, src/Perlito5/Grammar/Regex5.pm, src/Perlito5/Grammar/Regex6.pm, src/Perlito5/Grammar/Scope.pm, src/Perlito5/Grammar/Sigil.pm, src/Perlito5/Grammar/Space.pm, src/Perlito5/Grammar/Statement.pm, src/Perlito5/Grammar/String.pm, src/Perlito5/Grammar/Use.pm

use_warnings

Add 'use warnings' (or its equivalents) to all modules, or convince us that your favorite module is well-known enough and people can easily see the modules warn when something bad happens.

Error: Perlito5, Perlito5::AST, Perlito5::Dumper, Perlito5::Emitter::Token, Perlito5::Eval, Perlito5::Grammar, Perlito5::Grammar, Perlito5::Grammar, Perlito5::Grammar::Attribute, Perlito5::Grammar::Attribute, Perlito5::Grammar::Bareword, Perlito5::Grammar::Bareword, Perlito5::Grammar::Block, Perlito5::Grammar::Block, Perlito5::Grammar::Control, Perlito5::Grammar::Expression, Perlito5::Grammar::Expression, Perlito5::Grammar::Map, Perlito5::Grammar::Map, Perlito5::Grammar::Number, Perlito5::Grammar::Number, Perlito5::Grammar::Precedence, Perlito5::Grammar::Precedence, Perlito5::Grammar::Print, Perlito5::Grammar::Print, Perlito5::Grammar::Regex6, Perlito5::Grammar::Regex6, Perlito5::Grammar::Scope, Perlito5::Grammar::Scope, Perlito5::Grammar::Sigil, Perlito5::Grammar::Sigil, Perlito5::Grammar::Space, Perlito5::Grammar::Space, Perlito5::Grammar::Statement, Perlito5::Grammar::Statement, Perlito5::Grammar::String, Perlito5::Grammar::String, Perlito5::Grammar::Use, Perlito5::Grammar::Use, Perlito5::JSON, Perlito5::Java::Emitter, Perlito5::Java::Runtime, Perlito5::Javascript2::Array, Perlito5::Javascript2::CORE, Perlito5::Javascript2::Emitter, Perlito5::Javascript2::IO, Perlito5::Javascript2::Runtime, Perlito5::Javascript2::Sprintf, Perlito5::Javascript3::CORE, Perlito5::Javascript3::Emitter, Perlito5::Javascript3::IO, Perlito5::Javascript3::Runtime, Perlito5::Javascript3::Sprintf, Perlito5::Macro, Perlito5::Match, Perlito5::Perl5::Emitter, Perlito5::Perl5::Runtime, Perlito5::Perl6::Emitter, Perlito5::Perl6::TreeGrammar, Perlito5::Runtime, Perlito5::Test, Perlito5::TreeGrammar, Perlito5::XS::Emitter, Perlito5X::Carp, Perlito5X::Class::Data::Inheritable, Perlito5X::Dumper, Perlito5X::Exporter, Perlito5X::bytes, Perlito5X::encoding, Perlito5X::feature, Perlito5X::strict, Perlito5X::utf8, Perlito5X::warnings

no_unauthorized_packages

Ask the owner of the distribution (the one who released it first, or the one who is designated in x_authority) to give you a (co-)maintainer's permission.

Error:

  • Carp
  • Class::Data::Inheritable
  • Data::Dumper
  • Exception::Class::Base
  • Exporter
  • bytes
  • encoding
  • feature
  • strict
  • utf8
  • warnings

consistent_version

Split the distribution, or fix the version numbers to make them consistent (use the highest version number to avoid version downgrade).

Error: 0.08,1.38,5.64_03,9.001

meta_yml_has_provides

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

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 is not a critical issue. Currently mainly informative for the CPANTS authors. It might be removed later.

has_security_doc

Add SECURITY(.pod|md). See Software::Security::Policy.

security_doc_contains_contact

Add SECURITY(.pod|md) and add a contact address. See Software::Security::Policy.

has_contributing_doc

Add CONTRIBUTING(.pod|md). See https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors.

Modules

Name Abstract Version View
Perlito5 9.001 metacpan
Perlito5::Compiler Perl 5 compiler for Perlito5 metacpan
Perlito5::Dumper metacpan
Perlito5::Grammar Grammar for Perlito metacpan
Perlito5::Grammar::Attribute metacpan
Perlito5::Grammar::Bareword Parser and AST generator for Perlito metacpan
Perlito5::Grammar::Block Parser and AST generator for Perlito metacpan
Perlito5::Grammar::Expression Parser and AST generator for Perlito metacpan
Perlito5::Grammar::Map metacpan
Perlito5::Grammar::Number Parser and AST generator for Perlito metacpan
Perlito5::Grammar::Precedence precedence parser for Perlito metacpan
Perlito5::Grammar::Print Parser and AST generator for Perlito metacpan
Perlito5::Grammar::Regex5 Grammar for Perl5 regex metacpan
Perlito5::Grammar::Regex6 Grammar for Perlito Grammar metacpan
Perlito5::Grammar::Scope metacpan
Perlito5::Grammar::Sigil Parser module for Perlito metacpan
Perlito5::Grammar::Space Grammar for Perlito5 "whitespace" metacpan
Perlito5::Grammar::Statement Parser and AST generator for Perlito metacpan
Perlito5::Grammar::String metacpan
Perlito5::Grammar::Use Parser and AST generator for Perlito metacpan
Perlito5::JSON metacpan
Perlito5::Java::Runtime metacpan
Perlito5::Javascript2::Array metacpan
Perlito5::Javascript2::CORE metacpan
Perlito5::Javascript2::IO metacpan
Perlito5::Javascript2::PrettyPrinter metacpan
Perlito5::Javascript2::Runtime metacpan
Perlito5::Javascript2::Sprintf metacpan
Perlito5::Javascript3::CORE metacpan
Perlito5::Javascript3::IO metacpan
Perlito5::Javascript3::Runtime metacpan
Perlito5::Javascript3::Sprintf metacpan
Perlito5::Macro Ast macros for Perlito metacpan
Perlito5::Match Runtime for Perlito Perl5-in-Javascript grammars metacpan
Perlito5::Perl5::PrettyPrinter metacpan
Perlito5::Perl5::Runtime metacpan
Perlito5::Perl6::PrettyPrinter metacpan
Perlito5::Perl6::TreeGrammar metacpan
Perlito5::Test metacpan
Perlito5::TreeGrammar metacpan
Perlito5::X64::Assembler x64 code generator for Perlito metacpan

Provides

Name File View
Carp lib/Perlito5X/Carp.pm metacpan
Class::Data::Inheritable lib/Perlito5X/Class/Data/Inheritable.pm metacpan
Data::Dumper lib/Perlito5X/Dumper.pm metacpan
Exception::Class::Base lib/Perlito5X/Exception/Class/Base.pm metacpan
Exporter lib/Perlito5X/Exporter.pm metacpan
Perlito5::AST::Apply lib/Perlito5/AST.pm metacpan
Perlito5::AST::Block lib/Perlito5/AST.pm metacpan
Perlito5::AST::Buf lib/Perlito5/AST.pm metacpan
Perlito5::AST::Call lib/Perlito5/AST.pm metacpan
Perlito5::AST::CompUnit lib/Perlito5/AST.pm metacpan
Perlito5::AST::Decl lib/Perlito5/AST.pm metacpan
Perlito5::AST::For lib/Perlito5/AST.pm metacpan
Perlito5::AST::Given lib/Perlito5/AST.pm metacpan
Perlito5::AST::If lib/Perlito5/AST.pm metacpan
Perlito5::AST::Index lib/Perlito5/AST.pm metacpan
Perlito5::AST::Int lib/Perlito5/AST.pm metacpan
Perlito5::AST::Lookup lib/Perlito5/AST.pm metacpan
Perlito5::AST::Num lib/Perlito5/AST.pm metacpan
Perlito5::AST::Sub lib/Perlito5/AST.pm metacpan
Perlito5::AST::Use lib/Perlito5/AST.pm metacpan
Perlito5::AST::Var lib/Perlito5/AST.pm metacpan
Perlito5::AST::When lib/Perlito5/AST.pm metacpan
Perlito5::AST::While lib/Perlito5/AST.pm metacpan
Perlito5::Java lib/Perlito5/Java/Emitter.pm metacpan
Perlito5::Java::LexicalBlock lib/Perlito5/Java/Emitter.pm metacpan
Perlito5::Javascript2 lib/Perlito5/Javascript2/Emitter.pm metacpan
Perlito5::Javascript2::LexicalBlock lib/Perlito5/Javascript2/Emitter.pm metacpan
Perlito5::Javascript3 lib/Perlito5/Javascript3/Emitter.pm metacpan
Perlito5::Javascript3::LexicalBlock lib/Perlito5/Javascript3/Emitter.pm metacpan
Perlito5::Perl5 lib/Perlito5/Perl5/Emitter.pm metacpan
Perlito5::Perl6 lib/Perlito5/Perl6/Emitter.pm metacpan
Perlito5::Rul lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Before lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Block lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Concat lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Constant lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Dot lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::NotBefore lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Or lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Quantifier lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::SpecialChar lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::Rul::Subrule lib/Perlito5/Emitter/Token.pm metacpan
Perlito5::X64::Immediate lib/Perlito5/X64/Assembler.pm metacpan
Perlito5::X64::Label lib/Perlito5/X64/Assembler.pm metacpan
Perlito5::X64::Operand lib/Perlito5/X64/Assembler.pm metacpan
Perlito5::X64::Register lib/Perlito5/X64/Assembler.pm metacpan
Perlito5::XS lib/Perlito5/XS/Emitter.pm metacpan
When lib/Perlito5/Eval.pm metacpan
bytes lib/Perlito5X/bytes.pm metacpan
encoding lib/Perlito5X/encoding.pm metacpan
feature lib/Perlito5X/feature.pm metacpan
strict lib/Perlito5X/strict.pm metacpan
utf8 lib/Perlito5X/utf8.pm metacpan
warnings lib/Perlito5X/warnings.pm metacpan

Other Files

Changes metacpan
MANIFEST metacpan
META.json metacpan
META.yml metacpan
Makefile.PL metacpan
README metacpan