John Peacock wrote:
> I need to mark the CPAN release of version.pm as being incompatible with
> bleadperl, i.e. 5.9.0 or better, since version.pm is included in bleadperl.  
> All
> existing code is predicated on a minimum release, not a maximum release.  What
> I'm wondering is what shape should my code take to convey this behavior.  I 
> want
> to avoid die'ing, since that will just cause failures to emit from the CPAN
> smokers.  Should I just create a dummy Makefile which has a single ok() test?
> Alternatively, can I create a Makefile that doesn't include *any* of the CPAN
> modules, yet runs the existing test suite (which obviously should pass)?

That's a solution, not a problem.  Let me see if I understand the problem.  
version.pm is a dual-life module as of 5.9?  And how should dual-lifed CPAN 
modules deal with that?

The solution is not "never install the CPAN version over the perl version".  
How else would people get bug fixes and upgrades without having to upgrade all 
of perl?  Then we'd be back to the bad old days before dual-lived modules.

The solution is a simple modification to your WriteMakefile args to ensure that 
the CPAN version overlays the Perl version and is not shadowed by it.

    INSTALLDIRS => ($] >= '5.009' ? 'perl' : 'site')

"If we're installing to perl >= 5.009, install as a core module.  Otherwise, 
install as a CPAN module."

And that's it.

Reply via email to