Hi!

On Thu, Nov 22, 2007 at 12:25:49PM +0100, David Landgren wrote:

> 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*?

You don't need to. In fact, you don't need to list Core modules (where 
Core is the Perl Version I'm running CPANTS with, which is currently 
5.8.8)

But: Something seems to be broken. And it's quite hellish to debug, 
because all of the prereq stuff needs a DB with all modules, and the 
dists they are in... So if there is an error in the DB, I have to re-run 
everything, which takes hours.

In general, you should find some explanations on the 'Errors' tab:
http://cpants.perl.org/dist/errors/Integer-Partition

Which lists nothing, which is also broken, because you're using some 
non-core Modules in tests, which you do not build_require. (As Barbie 
suggested in private mail, I should also include 'recommends' to the 
list of predeclared test modules, because it is unclear if something 
like Test::Pod is a Build dependency or an optional (test) feature - 
especially if it's used in the proper way (i.e. eval'ed require & SKIP)

> Does the metric include modules used in the test suite? I write my test 
> suites to deal gracefully with missing Test modules.

That's what build_prereq_matches_use is for. Unfortunantly, I cannot see 
an easy way to figure out if a modules is used conditionally (and with 
the neccesary saftey nets)... So maybe this metric is complete crap 
after all...

Anyway, I'll probably remove both prereq_matches_use and 
build_prereq_matches_use in the next days, and try to enhance them so 
that they actually work...

-- 
#!/usr/bin/perl                              http://domm.plix.at
for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/}

Reply via email to