Kwalitee Issues


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


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


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


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


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.


  • MANIFEST (26) does not match dist (29):
  • Missing in MANIFEST: README, YMSG/, example/


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

Error: Net-YMSG-1.2/ -- Around line 863: =cut found outside a pod block. Skipping to next block.Around line 873: Unknown directive: =COPYRIGHT


List all used modules in META.yml requires


  • Crypt::PasswdMD5


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: Net::YMSG::ChangeState, Net::YMSG::ChatRoomLogoff, Net::YMSG::ChatRoomLogon, Net::YMSG::ChatRoomReceive, Net::YMSG::NewFriendAlert, Net::YMSG::ReceiveMessage, Net::YMSG::SendMessage


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

Error: 0.02,1.2


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


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


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.


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: Net::YMSG, Net::YMSG::Buddy, Net::YMSG::CRAM, Net::YMSG::ChallengeStart, Net::YMSG::ChangeState, Net::YMSG::ChatRoomLogoff, Net::YMSG::ChatRoomLogon, Net::YMSG::ChatRoomReceive, Net::YMSG::Event, Net::YMSG::EventFactory, Net::YMSG::EventHandler, Net::YMSG::GoesOffline, Net::YMSG::GoesOnline, Net::YMSG::InvalidLogin, Net::YMSG::Login, Net::YMSG::NewFriendAlert, Net::YMSG::NullEvent, Net::YMSG::ReceiveBuddyList, Net::YMSG::ReceiveMessage, Net::YMSG::SendMessage, Net::YMSG::ServerIsAlive, Net::YMSG::UnImplementEvent


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


Name Abstract Version View
Net::YMSG Interface to the Yahoo! Messenger IM protocol 1.2 metacpan
Net::YMSG::Buddy metacpan
Net::YMSG::CRAM Yahoo Messenger Challenge-Response Authentication Mechanism. 0.02 metacpan
Net::YMSG::ChallengeStart metacpan
Net::YMSG::ChangeState metacpan
Net::YMSG::ChatRoomLogoff metacpan
Net::YMSG::ChatRoomLogon metacpan
Net::YMSG::ChatRoomReceive metacpan
Net::YMSG::Event metacpan
Net::YMSG::EventFactory metacpan
Net::YMSG::EventHandler metacpan
Net::YMSG::GoesOffline metacpan
Net::YMSG::GoesOnline metacpan
Net::YMSG::InvalidLogin metacpan
Net::YMSG::Login metacpan
Net::YMSG::NewFriendAlert metacpan
Net::YMSG::NullEvent metacpan
Net::YMSG::ReceiveBuddyList metacpan
Net::YMSG::ReceiveMessage metacpan
Net::YMSG::SendMessage metacpan
Net::YMSG::ServerIsAlive metacpan
Net::YMSG::UnImplementEvent metacpan

Other Files

MANIFEST metacpan
Makefile.PL metacpan
README metacpan