Author: kwilliams
Date: Sat Jul 5 20:55:13 2008
New Revision: 11488
Modified:
Module-Build/trunk/Changes
Module-Build/trunk/lib/Module/Build/ModuleInfo.pm
Log:
Better VERSION parsing
Modified: Module-Build/trunk/Changes
==============================================================================
--- Module-Build/trunk/Changes (original)
+++ Module-Build/trunk/Changes Sat Jul 5 20:55:13 2008
@@ -1,5 +1,9 @@
Revision history for Perl extension Module::Build.
+ - Improved support for parsing qv() in modules' $VERSION
+ declarations, and made $VERSION-parsing errors more verbose. [Jos
+ Boumans]
+
- Integrated an omnibus patch for various VMS fixes. [Craig Berry &
John E. Malmberg]
Modified: Module-Build/trunk/lib/Module/Build/ModuleInfo.pm
==============================================================================
--- Module-Build/trunk/lib/Module/Build/ModuleInfo.pm (original)
+++ Module-Build/trunk/lib/Module/Build/ModuleInfo.pm Sat Jul 5 20:55:13 2008
@@ -304,6 +304,7 @@
$pn++; # everybody gets their own package
my $eval = qq{BEGIN { q# Hide from _packages_inside()
#; package Module::Build::ModuleInfo::_version::p$pn;
+ use Module::Build::Version;
no strict;
local $sigil$var;
@@ -321,7 +322,9 @@
if $@;
(ref($vsub) eq 'CODE') or
die "failed to build version sub for $self->{filename}";
- my $result = $vsub->();
+ my $result = eval { $vsub->() };
+
+ die "Could not get version from $self->{filename} by
executing:\n$eval\n\nThe fatal error was: [EMAIL PROTECTED]" if $@;
# Bless it into our own version class
$result = Module::Build::Version->new($result);