Solve the version problem once and for all by applying the version number
sprout [Thu, 28 Jan 2010 06:37:49 +0000 (22:37 -0800)]
to every module in META.yml, under the ‘provides’ key.

Build.PL

index acd11e4..3f769a1 100644 (file)
--- a/Build.PL
+++ b/Build.PL
@@ -1,8 +1,18 @@
-use Module::Build;
+use Module::Build 0.28; # prepare_metadata
 
 use strict;
 
-my $build = Module::Build->new(
+my $build = Module::Build->subclass(
+    class => 'Any::Thing',
+    code => '
+        sub prepare_metadata {
+            my $node = shift->SUPER::prepare_metadata(@_);
+            my $ver = $node->{version};
+            $_->{version} = $ver for values %{$node->{provides}};
+            $node;
+        }
+   ',
+)->new(
     module_name => 'DBM::Deep',
     license => 'perl',
     requires => {