Skip Menu |

This queue is for tickets about the Moose CPAN distribution.

Report information
The Basics
Id: 74328
Status: resolved
Priority: 0/
Queue: Moose

People
Owner: Nobody in particular
Requestors: w.phillip.moore [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 2.0401
Fixed in: (no value)



Subject: Missing build_recommends metadata
I have a rather complex perl5 build environment, and I just started analyzing my builds to look for missing optional dependencies. The goal was to make sure that the test suite coverage was as complete as possible, and I'm collecting missing dependency information and reporting it to authors, in the hopes that it will be defined in the distributions (so I don't have to maintain this separately). It ain't rocket science -- my code just scans the test suite output for lines like: skipped: Test requires module 'Foo' but it's not found In this particular case, I see that Moose distros are build with distzilla (sorry, I'm still using Module::Install), so I am not sure how to get these dependencies defined. Here's the config from my build system that adds the missing stuff to META.yml dynamically: [cpan/build_recommends] Data::Visitor = 0 DateTime::Format::MySQL = 0 Declare::Constraints::Simple = 0 IO::String = 0 Module::Refresh = 0 SUPER = 0 Test::Deep = 0 Test::LeakTrace = 0 Test::Output = 0 I see all of those modules listed in the dist.ini file in the Prereqs/DevelopRequires section, but they don't end up getting added to build_recommends, even though the test suite uses them. Tactically, I have a simple means, via my own build system, of adding the missing dependencies, so that my Moose test suite coverage is better, but I am not sure how to get distzilla to do this, or even if that's desired. I'm assuming here that having these dependencies defined would be considered a good thing, so that toolchains like mine, which try to install the recommends as well as the requires, will provide better test coverage.
On Tue Jan 24 11:52:08 2012, WPMOORE wrote: Show quoted text
> I have a rather complex perl5 build environment, and I just started > analyzing my builds to > look for missing optional dependencies. The goal was to make sure > that the test suite > coverage was as complete as possible, and I'm collecting missing > dependency information > and reporting it to authors, in the hopes that it will be defined in > the distributions (so I don't > have to maintain this separately). > > It ain't rocket science -- my code just scans the test suite output > for lines like: > > skipped: Test requires module 'Foo' but it's not found > > In this particular case, I see that Moose distros are build with > distzilla (sorry, I'm still using > Module::Install), so I am not sure how to get these dependencies > defined. Here's the config > from my build system that adds the missing stuff to META.yml > dynamically: > > [cpan/build_recommends] > Data::Visitor = 0 > DateTime::Format::MySQL = 0 > Declare::Constraints::Simple = 0 > IO::String = 0 > Module::Refresh = 0 > SUPER = 0 > Test::Deep = 0 > Test::LeakTrace = 0 > Test::Output = 0 > > I see all of those modules listed in the dist.ini file in the > Prereqs/DevelopRequires section, but > they don't end up getting added to build_recommends, even though the > test suite uses them. > > Tactically, I have a simple means, via my own build system, of adding > the missing > dependencies, so that my Moose test suite coverage is better, but I am > not sure how to get > distzilla to do this, or even if that's desired. > > I'm assuming here that having these dependencies defined would be > considered a good thing, > so that toolchains like mine, which try to install the recommends as > well as the requires, will > provide better test coverage.
These modules are already listed in our dist.ini as developer requirements. This is the correct definition, not build_recommends, and this data is available from the shipped META.json file. I'm going to close this ticket.