Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

sigzero (5768)

sigzero
  (email not shown publicly)

I am the proverbial "accidental" programmer. I have found that I really like Perl and programming so I am pursuing that route now. I am the Debian systems administrator and junior Perl programmer for a company called Inspire.

Journal of sigzero (5768)

Tuesday July 10, 2007
07:39 AM

Config::JSON dependencies

[ #33769 ]

This may be just me and if it is correct me please. I was looking at Config::JSON and thinking "this looks good". Then I look at its dependencies:

        Test::Perl::Critic
        Test::Pod::Coverage
        version
        JSON
        Test::Deep
        Test::Pod

JSON and version I can understand but why do I "have to have" those "Test::" modules to install the dang thing without forcing it?

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Report it as a bug -- most people seem willing to fix this issue.
  • Generally I think I'm being extra nice if I make test dependencies optional. I only do that when I'm really feeling magnanimous. I would suppose other people might feel even less charitable toward the idea of optional testing prerequisites.
    • Shouldn't most of that "testing" by on the author's side of the house anyway and not on the users? I could care less if the authors POD is correct but to make that a dependency is not good. The same with Test::Perl::Critic...the end user shouldn't care a hoot about that.
      • The set of tests that need modules might include the set of tests that are only important on the author's box but in my experience frequently cover things that are important to users.

        That is, if you're using one of my modules. Shrug. You really oughta install the tests. Or I suppose you could just skip all tests but that sucks.
        • I don't mind running the tests except when I have to install Test:: modules that I really shouldn't need to. I don't think a user would need Test::Perl::Critic at all. I guess mileage varies but I don't think an author should force something like that.
  • Tests that do not impact on functionality should always be optional, for two reasons.

    Firstly, there's the issue of code bloat.

    Test::Perl::Critic in particular has fairly serious dependencies (since it needs to install PPI).

    But secondly, it results in false-positive failures.

    That is, by making a test script for say POD checking, you are essentially saying that the POD for a module is SO important, if for some unknown reason there's a single small bug in the POD, you as the author would rather have them not u
    • Tests that do not impact on functionality should always be optional, for two reasons.

      OK, make that THREE reasons.
      Nobody expects the CPANish imposition! :)
  • To be honest, I really didn't think about the tests having an impact on users. I think tests are highly important, so I included them.

    Anyway, I've moved all the author related tests out of the t folder so that they won't impact users installing Config::JSON from CPAN.