On 07/01/2008, Yitzchak Scott-Thoennes <[EMAIL PROTECTED]> wrote:
> On Sun, January 6, 2008 4:54 pm, demerphq wrote:
> > So we are told the way to mark a module as development is to use an
> > underbar in the version number:
> >
> > $VERSION= "1.23_01";
> >
> >
> > but this will produce warnings if you assert a required version number, as
> > the version isn't numeric.
> >
> > So the standard response is to do
> >
> > $VERSION= eval $VERSION;
> >
> > on the next line. This means that MakeMaker sees "1.23_01" but Perl
> > internal code for doing version checks sees "1.2301". This is all fine and
> > dandy with pure perl modules.
> >
> > BUT, if the module is "bog standard" and uses XS this is a recipe for
> > a fatal error. XS_BOOT_VERSIONCHECK will compare "1.23_01" to "1.2301" and
> > decide that they are different versions and die.
>
> See perlmodstyle:
> > If you want to release a 'beta' or 'alpha' version of a module but
> > don't want CPAN.pm to list it as most recent use an '_' after the
> > regular version number followed by at least 2 digits, eg. 1.20_01. If
> > you do this, the following idiom is recommended:
> >
> >   $VERSION = "1.12_01";
> >   $XS_VERSION = $VERSION; # only needed if you have XS code
> >   $VERSION = eval $VERSION;

im not convinced this actually does anything. ISTR i had to roll my
own "parse out the $XS_VERSION code" thingee for DDS.

Yves

-- 
perl -Mre=debug -e "/just|another|perl|hacker/"

Reply via email to