Subject: | MakeMaker Fails to Recognize v-string Versions |
Date: | Mon, 1 Jul 2013 13:49:12 +0200 |
To: | bug-extutils-makemaker [...] rt.cpan.org |
From: | "David E. Wheeler" <dwheeler [...] cpan.org> |
Given this Makefile.PL:
use ExtUtils::MakeMaker;
WriteMakefile(
'NAME' => 'Foo',
'VERSION_FROM' => 'Foo.pm',
);
And this Foo.pm:
package Foo;
our $VERSION = v0.10.3;
The output of `perl Makefile.PL` is:
Can't parse version '
'
Writing Makefile for Foo
Can't parse version '
'
Writing MYMETA.yml and MYMETA.json
And the resulting Makefile has lines like this (binary bytes
replaced with visible characters as presented in Emacs):
VERSION = ^@
^C
Module::Build is able to parse vstring versions okay, FWIW.
The workaround for EU::MM is to quote the version, instead:
package Foo;
our $VERSION = 'v0.10.3';
But I think EU::MM probably ought to be able to recognize vstrings.