develooper Front page | perl.module-authors | Postings from November 2016

Declaring optional dependencies

Thread Next
David Cantrell
November 9, 2016 14:07
Declaring optional dependencies
Message ID:
I recently broke Catalyst::Devel when I uploaded a dodgy version of 
Devel::CheckOS. Personally I don't like Catalyst and consider this to 
have been a service to humanity, but I understand that some people 
differ on this :-)

Thing is, my code doesn't show up as a dependency in CPANdeps. Turns out 
that it's because it's a dependency of MooseX::Daemonize, which is in 
turn an *optional* dependency of Cataylst::Devel. MooseX::Daemonize 
doesn't show up in the META.{yml,json} files, and so CPANdeps doesn't 
spot it. Instead it's in Makefile.PL thus:

   if (!$Module::Install::AUTHOR && $^O ne 'MSWin32') {
     requires 'MooseX::Daemonize'; # Optional in scripts
     requires 'Starman'; # Optional in scripts

Seeing that we've gone down the route of having eleventy different 
*_requires for build-time requirements, test requirements, and so on, I 
think it makes sense to also put optional dependencies like this in 
META.*. Any comments?

David Cantrell | Minister for Arbitrary Justice

There are two kinds of security, the one that keeps your sister
out, the one that keeps the government out and the one that
keeps Bruce Schneier out.

Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About