Fun with App::Prove::Plugin
Andy Armstrong
andy at hexten.net
Tue Feb 3 12:29:16 GMT 2009
On 3 Feb 2009, at 08:23, Steve Purkis wrote:
> This would make it possible to set whatever you like on the app before
> TAP::Harness ever gets called. IE: a lot of flexibility for one lazy
> line of code. Of course, that would break current plugin API... but
> then, I can only see 1 other module on CPAN that uses it.
>
> Thoughts?
Well it'd certainly be nice to do something with the plugin
architecture :)
I'm slightly conflicted over the idea of having plugins expose first-
class command line switches. It's cute and it saves typing - but runs
the risk of namespace clashes. And I'm not sure it's a good UI. Having
new options automagically appear when a plugin is installed hurts
discoverability.
On machine A I discover that prove supports the --foo option - so I
got to machine B and try the same thing - but --foo is rejected. So I
update App::Prove since I obviously have an out of date version - but
--foo still doesn't work. What do I do next?
Perl's -M/m/d switch is a good interface from that point of view -
because it makes it explicit that you're loading a module.
--
Andy Armstrong, Hexten
More information about the tapx-dev
mailing list