Kwalitee Issues

has_meta_yml

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

no_files_to_be_skipped

Fix MANIFEST.SKIP or use an authoring tool which respects MANIFEST.SKIP. Note that each entry in MANIFEST.SKIP is a regular expression. You may need to add appropriate meta characters not to ignore necessary stuff.

Error: t/data/whitelists/action.eff.org,t/data/whitelists/amazon_co_uk_ship,t/data/whitelists/amazon_com_ship,t/data/whitelists/cert.org,t/data/whitelists/debian_bts_reassign,t/data/whitelists/linuxplanet,t/data/whitelists/lp.org,t/data/whitelists/media_unspun,t/data/whitelists/mlist_mailman_message,t/data/whitelists/mlist_yahoo_groups_message,t/data/whitelists/mypoints,t/data/whitelists/neat_net_tricks,t/data/whitelists/netcenter-direct_de,t/data/whitelists/oracle_net_techblast,t/data/whitelists/orbitz.com,t/data/whitelists/paypal.com,t/data/whitelists/register.com_password,t/data/whitelists/ryanairmail.com,t/data/whitelists/sf.net,t/data/whitelists/winxpnews.com,t/data/whitelists/yahoo-inc.com,t/rule_tests.t

no_pod_errors

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

Error: *** ERROR: =over without closing =back at line 32 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/AICache.pm *** ERROR: =over without closing =back at line 38 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Conf/LDAP.pm *** ERROR: =over is the last thing in the document?! at line 118 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Conf/Parser.pm *** ERROR: =over without closing =back at line 38 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Conf/SQL.pm *** ERROR: =over without closing =back at line 45 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Message/Metadata.pm *** ERROR: =over without closing =back at line 31 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Message/Node.pm *** ERROR: =over without closing =back at line 95 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Plugin/DKIM.pm *** ERROR: =over without closing =back at line 80 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Plugin/DomainKeys.pm *** ERROR: =over without closing =back at line 50 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Timeout.pm *** ERROR: '=item' outside of any '=over' at line 176 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Util/DependencyInfo.pm *** ERROR: =over without closing =back at line 176 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Util/DependencyInfo.pm *** ERROR: '=item' outside of any '=over' at line 203 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Util/RegistrarBoundaries.pm *** ERROR: =over without closing =back at line 203 in file Mail-SpamAssassin-3.1.7/lib/Mail/SpamAssassin/Util/RegistrarBoundaries.pm *** ERROR: =cut found outside a pod block. Skipping to next block. at line 1 in file Mail-SpamAssassin-3.1.7/lib/spamassassin-run.pod *** ERROR: unresolved internal link 'TAGGING' at line 77 in file Mail-SpamAssassin-3.1.7/lib/spamassassin-run.pod *** ERROR: =cut found outside a pod block. Skipping to next block. at line 1 in file Mail-SpamAssassin-3.1.7/spamc/spamc.pod

prereq_matches_use

List all used modules in META.yml requires

Error:

  • Crypt::OpenSSL::Bignum
  • DBD::Pg
  • DBI
  • Digest::SHA1
  • HTML::Parser
  • Mail::DKIM
  • Mail::DKIM::Verifier
  • Mail::DomainKeys::Message
  • Mail::DomainKeys::Policy

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: Mail::SpamAssassin::Client, Mail::SpamAssassin::Constants

consistent_version

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

Error: 1,3.001007

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_meta_json

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

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.

no_invalid_versions

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

Error:

  • lib/Mail/SpamAssassin/Conf.pm: HASH(0x8a35248)
  • lib/Mail/SpamAssassin/Dns.pm: HASH(0x880cc60)
  • lib/Mail/SpamAssassin/Plugin.pm: HASH(0x8900880)
  • lib/Mail/SpamAssassin/PluginHandler.pm: HASH(0x88b9240)
  • lib/Mail/SpamAssassin/Reporter.pm: HASH(0x8981e98)

test_prereq_matches_use

List all modules used in the test suite in META.yml test_requires

Error:

  • Digest::SHA1

use_warnings

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.

Error: Mail::SpamAssassin::Client, Mail::SpamAssassin::Constants

Modules

Name Abstract Version View
Mail::SpamAssassin Spam detector and markup engine 3.001007 metacpan
Mail::SpamAssassin::AICache provide access to cached information for ArchiveIterator metacpan
Mail::SpamAssassin::ArchiveIterator find and process messages one at a time metacpan
Mail::SpamAssassin::AutoWhitelist auto-whitelist handler for SpamAssassin metacpan
Mail::SpamAssassin::Bayes determine spammishness using a Bayesian classifier metacpan
Mail::SpamAssassin::Bayes::CombineChi 1 metacpan
Mail::SpamAssassin::Bayes::CombineNaiveBayes 1 metacpan
Mail::SpamAssassin::BayesStore Bayesian Storage Module metacpan
Mail::SpamAssassin::BayesStore::DBM metacpan
Mail::SpamAssassin::BayesStore::MySQL MySQL Specific Bayesian Storage Module Implementation metacpan
Mail::SpamAssassin::BayesStore::PgSQL PostgreSQL Specific Bayesian Storage Module Implementation metacpan
Mail::SpamAssassin::BayesStore::SDBM metacpan
Mail::SpamAssassin::BayesStore::SQL SQL Bayesian Storage Module Implementation metacpan
Mail::SpamAssassin::Client Client for spamd Protocol metacpan
Mail::SpamAssassin::Conf SpamAssassin configuration file metacpan
Mail::SpamAssassin::Conf::LDAP load SpamAssassin scores from LDAP database metacpan
Mail::SpamAssassin::Conf::Parser parse SpamAssassin configuration metacpan
Mail::SpamAssassin::Conf::SQL load SpamAssassin scores from SQL database metacpan
Mail::SpamAssassin::Constants metacpan
Mail::SpamAssassin::DBBasedAddrList metacpan
Mail::SpamAssassin::Dns metacpan
Mail::SpamAssassin::DnsResolver DNS resolution engine metacpan
Mail::SpamAssassin::EvalTests metacpan
Mail::SpamAssassin::HTML metacpan
Mail::SpamAssassin::Locales metacpan
Mail::SpamAssassin::Locker metacpan
Mail::SpamAssassin::Locker::Flock metacpan
Mail::SpamAssassin::Locker::UnixNFSSafe metacpan
Mail::SpamAssassin::Locker::Win32 metacpan
Mail::SpamAssassin::Logger SpamAssassin logging module metacpan
Mail::SpamAssassin::Logger::File log to file metacpan
Mail::SpamAssassin::Logger::Stderr log to standard error metacpan
Mail::SpamAssassin::Logger::Syslog log to syslog metacpan
Mail::SpamAssassin::MailingList metacpan
Mail::SpamAssassin::Message decode, render, and hold an RFC-2822 message metacpan
Mail::SpamAssassin::Message::Metadata extract metadata from a message metacpan
Mail::SpamAssassin::Message::Metadata::Received metacpan
Mail::SpamAssassin::Message::Node decode, render, and make available MIME message parts metacpan
Mail::SpamAssassin::NetSet metacpan
Mail::SpamAssassin::PerMsgLearner per-message status (spam or not-spam) metacpan
Mail::SpamAssassin::PerMsgStatus per-message status (spam or not-spam) metacpan
Mail::SpamAssassin::PersistentAddrList persistent address list base class metacpan
Mail::SpamAssassin::Plugin SpamAssassin plugin base class metacpan
Mail::SpamAssassin::Plugin::AWL Normalize scores via auto-whitelist metacpan
Mail::SpamAssassin::Plugin::AccessDB check message against Access Database metacpan
Mail::SpamAssassin::Plugin::AntiVirus metacpan
Mail::SpamAssassin::Plugin::AutoLearnThreshold threshold-based discriminator for Bayes auto-learning metacpan
Mail::SpamAssassin::Plugin::DCC perform DCC check of messages metacpan
Mail::SpamAssassin::Plugin::DKIM perform DKIM verification tests metacpan
Mail::SpamAssassin::Plugin::DomainKeys perform DomainKeys verification tests metacpan
Mail::SpamAssassin::Plugin::Hashcash perform hashcash verification tests metacpan
Mail::SpamAssassin::Plugin::MIMEHeader metacpan
Mail::SpamAssassin::Plugin::Pyzor perform Pyzor check of messages metacpan
Mail::SpamAssassin::Plugin::Razor2 perform Razor check of messages metacpan
Mail::SpamAssassin::Plugin::RelayCountry metacpan
Mail::SpamAssassin::Plugin::ReplaceTags tags for SpamAssassin rules metacpan
Mail::SpamAssassin::Plugin::SPF perform SPF verification tests metacpan
Mail::SpamAssassin::Plugin::SpamCop perform SpamCop reporting of messages metacpan
Mail::SpamAssassin::Plugin::Test metacpan
Mail::SpamAssassin::Plugin::TextCat TextCat language guesser metacpan
Mail::SpamAssassin::Plugin::URIDNSBL metacpan
Mail::SpamAssassin::Plugin::WhiteListSubject whitelist by Subject header metacpan
Mail::SpamAssassin::PluginHandler SpamAssassin plugin handler metacpan
Mail::SpamAssassin::Reporter metacpan
Mail::SpamAssassin::SQLBasedAddrList SpamAssassin SQL Based Auto Whitelist metacpan
Mail::SpamAssassin::SpamdForkScaling metacpan
Mail::SpamAssassin::SubProcBackChannel back-channel for communication between a master and multiple slave processes metacpan
Mail::SpamAssassin::Timeout safe, reliable timeouts in perl metacpan
Mail::SpamAssassin::Util utility functions metacpan
Mail::SpamAssassin::Util::DependencyInfo metacpan
Mail::SpamAssassin::Util::Progress Progress bar support for SpamAssassin metacpan
Mail::SpamAssassin::Util::RegistrarBoundaries metacpan

Provides

Name File View
Mail::SpamAssassin::Bayes::Combine lib/Mail/SpamAssassin/Bayes/CombineChi.pm metacpan

Other Files

Changes metacpan
MANIFEST metacpan
Makefile.PL metacpan
README metacpan