logo       
Google Custom Search
    AddThis Social Bookmark Button
-->

Re: [Module::Build] Bug #7241 Module::Build and version causing issues: msg#00020

Subject: Re: [Module::Build] Bug #7241 Module::Build and version causing issues

On Aug 4, 2004, at 12:42 PM, Yitzchak Scott-Thoennes wrote:

On Wed, Aug 04, 2004 at 12:13:17PM -0500, Ken Williams <ken@xxxxxxxxxxxxx> wrote:
But I don't see any breakage at all, unless you count an extra warning
under -w as breakage:

  % perl -le '$Foo::VERSION="2.03_01"; Foo->VERSION(2.03); print "Got
here"'
  Got here
  % perl -le '$Foo::VERSION="2.03_01"; Foo->VERSION(2.04); print "Got
here"'
Foo version 2.04 required--this is only version 2.03_01 at -e line 1.

Looks fine, no?  Is there some other "breakage", besides the warning,
that I'm not aware of?

Yes! "2.03_01" in numeric context is 2.03, and that's what version
will be checked against, leading to this:

Yes, you're right, of course. If I had done things correctly, I should have had the 'eval' line in M::B, and I'll make this correction for future beta versions (assuming I remember...).

Note, however, that like PAUSE and MakeMaker, M::B also has to deal with a bunch of other people's $VERSION variables, and only parse the *first* line mentioning it. So in these cases we will indeed be using bona-fide strings, potentially with underscores and other junk in them, as versions. This is a different issue than the ones we've been discussing, but since we've opened the whole versioning can of worms, and since (I think) this is the issue that originally led Trevor to find problems in what M::B does, I thought I'd mention it.

Perhaps I'll have to give up and use version.pm to do the version parsing/comparing, but I really want to avoid that, since it would be the first non-core-5.6 module M::B requires.

 -Ken



-------------------------------------------------------
This SF.Net email is sponsored by OSTG. Have you noticed the changes on
Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now,
one more big change to announce. We are now OSTG- Open Source Technology
Group. Come see the changes on the new OSTG site. www.ostg.com


<Prev in Thread] Current Thread [Next in Thread>