Subject: | enforce dep versions |
Date: | Mon, 12 Dec 2011 11:46:35 +0000 |
To: | bug-MooseX-Types-DateTime-MoreCoercions [...] rt.cpan.org |
From: | Zefram <zefram [...] fysh.org> |
MX:T:DT::MC's Makefile.PL declares a bunch of prerequisite versions, such
as Time::Duration::Parse 0.06, which MX/T/DT/MC.pm then doesn't enforce
at runtime. The result is that if a prerequisite upgrade fails then an
installer such as CPAN.pm may go on and try to run MX:T:DT:MC anyway,
and the module won't necessarily complain about the missing prereq.
It won't actually notice a problem unless the test suite happens to run
into whatever way the older version of the prereq is inadequate, and in
that case the error message won't make the nature of the problem clear.
The "use" lines should always enforce version requirements. Makefile.PL
should then declare what the "use" lines require. These two are not
substitutes for each other.
-zefram