>>>>> On Wed, 02 May 2007 21:32:13 -0400, John Peacock <[EMAIL PROTECTED]> said:
> I'd have to know what release of CPAN you are using, since those two version
> objects are equivalent.
I know that you believe that they are equivalent but this is not the
question. CPAN.pm honours the string representation of $VERSION and to
be equal, the string representation must be string-equal. Otherwise
CPAN.pm honours the difference. This has worked out well for a long
time but is now a bit broken. As I said in a previous posting, CPAN.pm
will switch to version.pm some time soon but as long as there are
changes going on, I prefer to wait.
>> If it compares a version object to your META.yml, I think that should be
>> good. If it is doing a string-compare, I think all bets are off.
> Andreas has been very good about making sure that CPAN and PAUSE work with
> version objects, so I suspect it is actually a back-versioned CPAN rather
than
> Module::Build.
There were no relevant changes to CPAN.pm. I take the full blame. (I'm
sorry for Julian.)
>> Aside: I'm thinking of changing most of my modules to simply say
>> "$VERSION = v0.1.2" just to see what breaks. So far, it appears to be
>> less of an issue than the version.pm docs imply, at least back to 5.6.2
>> or so.
> Well, since 'use version' replaces UNIVERSAL::VERSION with version-aware
code,
> you will find that now that code will actually work most of the time. The
one
> problem you will have is that you won't be able to print the $VERSION scalar
> because it will be a v-string. And I don't know how well the PAUSE indexer
will
> cope...
The PAUSE indexer is nowadays less often involved because people send
META.yml and if that contains the provides attribute (as Mail-SPF
does), then its content is indexed.
Witness:
provides:
Mail::SPF:
file: lib/Mail/SPF.pm
version: 2.004000
Gratuitous trailing zeroes again.
--
andreas