Thomas Klausner wrote:
The metric will be called prereq_matches_use and shall check if all the
modules used in a dist are also listed as a prereq. (prereq is either
gatherd directly from Meta.YMLs 'requires', by parsing Build.PL or
Makefile.PL)
As you might know this is quite tricky, because some modules live in
strange dists (e.g. HTTP::Request -> libwww-perl) and some modules are in
Core (I'll check this with Module::CoreList).
The first implementation 'simply' selects all distinct dists from all
modules (of which CPANTS know which dist they are in..) used in a dist,
and compares this with the distinct dists from all listed prereqs.
I have just looked at the latest CPANTS results. I see that all my
modules fail this metric... but I am unsure as to why. Consider:
http://cpants.perl.org/dist/prereq/Integer-Partition
I agree, it's probably best to list Carp, but do I really declare
pragmas like 'strict' and 'vars'? How many ISPs remove *them*?
Does the metric include modules used in the test suite? I write my test
suites to deal gracefully with missing Test modules.
David