Christopher H. Laco wrote:
I say that's fine. If it fails and you can't install it, then don't.
Arguments about whether the tests should or shouldn't be run [or
included at all] is irrelevant. Tests failed. Don't install. File RT.
Filing RT requires understand what failed and why. This requires some
level of skill to diagnose problems. You cannot assume that people using
the CPAN shell actually know Perl.
If
the author made a choice to have them run always and piss people off, or
restrict the user base, then that's the authors prerogative.
Now, I won't argue that it would be better if the author put in a skip
check for TEST_AUTHOR or other variants, but that's up to the author and
not something that should be enforced or needs to be regulated.
I'm not proposing we regulate of enforce it. I'm simply proposing that
we discourage it via the Kwalitee mechanism, since it was in part the
Kwalitee mechanism that created this problem in the first place.
> If I
ship a module and test coverage fails, that's still a bug. The end user
still has no documentation on what the hell the 'naked' method is
supposed to do.
In 95%+ of cases, the end user will never ever read the documentation,
and never use the module they are installing, and any problems with
either the POD syntax or the thoroughness of the API will be utterly moot.
Because 95% of modules are installed due to recursive dependencies.
Sure, Test::Pod::Coverage could fail for some reason other than it's
main purpose of checking coverage and finding a naked method, but so
then can Test::More and any other test module.
This is exactly the reason that we discourage dependencies, and that
wherever it is possible to do so, people should only use testing
dependencies for cases where the tests are used to determine that the
module is functionally correct on the host.
Adam K