>>>>> On Sat, 09 Nov 2002 23:43:36 +0800, Stas Bekman <[EMAIL PROTECTED]> said:
> Andreas J. Koenig wrote:
>>>>>>> On Thu, 05 Sep 2002 09:41:35 +0800, Stas Bekman <[EMAIL PROTECTED]> said:
>>>>>>
>> > when it tries to eval:
>> > $File::Spec::VERSION=undef; do {
>> > unless ($File::Spec::VERSION >= $min_version) {
>> > };
>> > it certainly fails. And this is a bug in makemaker, not my code.
>> > Moreover this bug doesn't exist in MM 6.03, but does exist in 6.05 and
>> > versions prior to 6.00.
>> It has always been decreed that the $VERSION line ***must*** be
>> written in a single self-containing line. You need to change your
>> $VERSION line.
>> If 6.03 parses this right, it was a bug in MM 6.03.
> [ returning from a long vacation... ]
I hope it was an enjoyable vacation...
> Andreas, this is not the $VERSION line that I'm talking about. This is
> some code that checks the version of a different module:
> unless ($File::Spec::VERSION >= $min_version) {
> I beg your pardon, but I can't see what this has to do with the
> $VERSION line.
I see. Sorry, I missed the point of your mail.
The point was, that a third party module doesn't contain a $VERSION
line of its own but does deal with $VERSION stuff within the module.
Whenever MakeMaker tries to parse the version, it fails miserably.
I'd say there is one very easy fix: ask the author of the module to
include a $VERSION line near the top of the file, at least before he
starts himself to deal with VERSION stuff.
Did I get it right this time?
A solution that involves MakeMaker's parse_version directly will be
hard to find and will probably break existing code. I wouldn't go up
this steep path.
Asking an author to include a $VERSION is a fair request.
$VERSION-less scripts and modules are a major PITA, no matter if it's
for MakeMaker or for somebody else.
--
andreas