Andrew Savige sent the following bits through the ether:

> I'm an enthusiastic admirer of Schwern's CPANTS kwalitee vision and
> aware of Module::CPANTS but unsure about the current state of play.
> Tips on other stuff I should look at are welcome.

[From a Module::CPANTS perspective...]

Module::CPANTS is a small subset of Schwern's original kwalitee
vision, in so far as it is a bunch of metrics that I can easily
extract without eval-ing the whole of CPAN.

The actual module is a big hash of hashes, but I think shipping an
SQLite database might be a better idea in future. I highly recommend
trying out Thomas' web form, which has some good example queries at
the bottom: http://domm.zsi.at/cpants/search

> 1) Archive nit-picker. Archive::Any's is_impolite/is_naughty is a
>    start. Also test for: "good cross-platform" file names (my
>    original question); "good" Changes, README, t/ directory etc..

I like the is_impolite / is_naughty ideas, and will roll them into the
next version. If you have a simple metric for a good cross-platform
filename, that'd be good.

I'm not sure about how you mean a "good" Changes. For a start, people
call them different things (Changes, CHANGES, ChangeLog etc.), and
format them differently.

What is a good README? To be honest, now that we have web interfaces
to docs on search.cpan.org I don't think that READMEs are terribly
important.

The current version of CPAN reports the number of tests for a
distribution (but only if it's had a FAIL, sigh).
 
> 2) POD tester. Use Test::Pod/Pod::Coverage, say, on all POD in a
>    distribution.

I don't want to eval the whole of CPAN. Maybe we could get the CPAN
Testers to do this?
 
> 3) Static Perl code analyser. I suppose PerlTidy, Module::Info,
>    B::Lint may be helpful. Any others?

To achieve what?
 
> 4) Test suite analyser. How good is the test suite? Use perhaps
>    Devel::Cover to determine how much of the code is covered by
>    the distribution's test suite.

Sure, convince CPAN Testers to do this ;-)
 
> 5) Signature checker.

Sure.

> 6) Prerequisite checker.

What would you check, exactly?

> 7) Version checker.

What would you check, exactly?
 
> Anything else? Does such a module/script already exist?

Module::CPANTS::Generator contains a number of metric finding
functions.

It's great that somebody else thinks that metrics is a good idea. I
thought it was just Schwern, Thomas and I! ;-)

Leon
-- 
Leon Brocard.............................http://www.astray.com/
scribot.................................http://www.scribot.com/

... Hi-ho, hi-ho, it's hand grenades I throw...

Reply via email to