Kwalitee Issues

has_changelog

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

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:

  • MANIFEST (47) does not match dist (46):
  • Missing in Dist: ThreatDetector-0.01.tar

no_pod_errors

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

Error: ThreatDetector-0.02/lib/ThreatDetector/Handlers/HeaderAbuse.pm -- Around line 50: Non-ASCII character seen before =encoding in '—'. Assuming UTF-8

meta_yml_declares_perl_version

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.

no_invalid_versions

Fix the version numbers so that version::is_lax($version) returns true.

Error:

  • lib/ThreatDetector/Classifier.pm: HASH(0x5609d2251728)
  • lib/ThreatDetector/Dispatcher.pm: HASH(0x5609d4b9ea88)
  • lib/ThreatDetector/Handlers/BotFingerprint.pm: HASH(0x5609d4c6e0d0)
  • lib/ThreatDetector/Handlers/ClientError.pm: HASH(0x5609d4be4378)
  • lib/ThreatDetector/Handlers/CommandInjection.pm: HASH(0x5609d4c3f7c8)
  • lib/ThreatDetector/Handlers/DirectoryTraversal.pm: HASH(0x5609d4c3fac8)
  • lib/ThreatDetector/Handlers/EncodedPayload.pm: HASH(0x5609d4d11280)
  • lib/ThreatDetector/Handlers/HeaderAbuse.pm: HASH(0x5609d4cc5548)
  • lib/ThreatDetector/Handlers/LoginBruteForce.pm: HASH(0x5609d4bd4f58)
  • lib/ThreatDetector/Handlers/MethodAbuse.pm: HASH(0x5609d4c22c40)
  • lib/ThreatDetector/Handlers/RateLimiter.pm: HASH(0x5609d4b9ee60)
  • lib/ThreatDetector/Handlers/SQLInjection.pm: HASH(0x5609d4be3e80)
  • lib/ThreatDetector/Handlers/XSS.pm: HASH(0x5609d4bebe18)
  • lib/ThreatDetector/Parser.pm: HASH(0x5609d4bd4fb8)
  • lib/ThreatDetector/Reporter.pm: HASH(0x5609d4c8f990)

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.

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
ThreatDetector::Classifier Threat classification engine for parsed Apache log entries metacpan
ThreatDetector::Dispatcher Routes classified threats to their appropriate handler modules metacpan
ThreatDetector::Handlers::BotFingerprint Handler for scanner and bot user-agent matches metacpan
ThreatDetector::Handlers::ClientError Handler for HTTP 4xx client errors metacpan
ThreatDetector::Handlers::CommandInjection Handler for command injection/RFI/LFI attempts metacpan
ThreatDetector::Handlers::DirectoryTraversal Handler for directory traversal attempts metacpan
ThreatDetector::Handlers::EncodedPayload Handler for encoded payload attempts metacpan
ThreatDetector::Handlers::HeaderAbuse Handler for suspicious or abusive HTTP headers metacpan
ThreatDetector::Handlers::LoginBruteForce Handler for login brute-force attempts metacpan
ThreatDetector::Handlers::MethodAbuse Handler for abuse of uncommon or dangerous HTTP methods metacpan
ThreatDetector::Handlers::RateLimiter Detects rate-based abuse by tracking burst activity metacpan
ThreatDetector::Handlers::SQLInjection Handler for SQL injection attempts metacpan
ThreatDetector::Handlers::XSS Handler for cross-site scripting (XSS) attempts metacpan
ThreatDetector::Parser Apache log parser for threat detection metacpan
ThreatDetector::Reporter Summary report generator for classified threat events metacpan

Provides

Name File View
ThreatDetector lib/ThreatDetector/ThreatDetector.pm metacpan

Other Files

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