Adam Kennedy wrote:
To give you some more data points, imagine the automated testing additions applied only on Win32. How would you then specify the deps?

#187 on the TODO list for M::B is to implement the dEx[1] (Dependency EXpression) language for inserting complicated requirements in META.yml.

1. <http://svn.versiondude.net/randys/dEx/trunk/lib/dEx.pm>

I'm not completely convinced it's a good idea, but it's one possible way of handling more complex dependency specifications.

Apart from optional features, which apply across platforms, and across all installation/testing modes, I think adding more conditional logic to the META.yml should be considered bad.

I'm on the fence. Ideally, META.yml should be a simple declarative specification for a module, but with the myriad of runtime environments that modules (or libraries of any kind) are used in nowadays it seems necessary. The idea with dEx and its companion CPAN::Metadata is that they will be the de facto method of reading & writing META.yml, much like Test::Harness is for TAP.

But that is all theoretical at this point, and subject to much debate before becoming anything. Specifically, PAUSE/CPAN.pm/CPANPLUS would have accept it or fall-back on the current method of specification.

Randy.

Reply via email to