@@ -1,5 +1,12 @@
Revision history for CPAN-Meta-Requirements
+2.132 2015-01-22 17:09:19-05:00 America/New_York
+
+ [FIXED]
+
+ - Precision of version requirement "0.00" is preserved when merging
+ requirements.
+
2.131 2014-12-23 15:04:19-05:00 America/New_York
[ENHANCEMENTS]
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.029.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.031.
CONTRIBUTING.mkdn
Changes
LICENSE
@@ -5,13 +5,13 @@
"Ricardo Signes <rjbs@cpan.org>"
],
"dynamic_config" : 0,
- "generated_by" : "Dist::Zilla version 5.029, CPAN::Meta::Converter version 2.142690",
+ "generated_by" : "Dist::Zilla version 5.031, CPAN::Meta::Converter version 2.143240",
"license" : [
"perl_5"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
- "version" : "2"
+ "version" : 2
},
"name" : "CPAN-Meta-Requirements",
"no_index" : {
@@ -77,7 +77,7 @@
"provides" : {
"CPAN::Meta::Requirements" : {
"file" : "lib/CPAN/Meta/Requirements.pm",
- "version" : "2.131"
+ "version" : "2.132"
}
},
"release_status" : "stable",
@@ -92,7 +92,7 @@
"web" : "https://github.com/dagolden/CPAN-Meta-Requirements"
}
},
- "version" : "2.131",
+ "version" : "2.132",
"x_authority" : "cpan:DAGOLDEN",
"x_contributors" : [
"Ed J <mohawk2@users.noreply.github.com>",
@@ -13,7 +13,7 @@ configure_requires:
ExtUtils::MakeMaker: '6.17'
perl: '5.006'
dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.029, CPAN::Meta::Converter version 2.142690'
+generated_by: 'Dist::Zilla version 5.031, CPAN::Meta::Converter version 2.143240'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -30,7 +30,7 @@ no_index:
provides:
CPAN::Meta::Requirements:
file: lib/CPAN/Meta/Requirements.pm
- version: '2.131'
+ version: '2.132'
requires:
B: '0'
Carp: '0'
@@ -42,7 +42,7 @@ resources:
bugtracker: https://github.com/dagolden/CPAN-Meta-Requirements/issues
homepage: https://github.com/dagolden/CPAN-Meta-Requirements
repository: https://github.com/dagolden/CPAN-Meta-Requirements.git
-version: '2.131'
+version: '2.132'
x_authority: cpan:DAGOLDEN
x_contributors:
- 'Ed J <mohawk2@users.noreply.github.com>'
@@ -1,5 +1,5 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.029.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.031.
use strict;
use warnings;
@@ -33,7 +33,7 @@ my %WriteMakefileArgs = (
"Test::More" => "0.88",
"version" => "0.88"
},
- "VERSION" => "2.131",
+ "VERSION" => "2.132",
"test" => {
"TESTS" => "t/*.t"
}
@@ -2,7 +2,7 @@ NAME
CPAN::Meta::Requirements - a set of version requirements for a CPAN dist
VERSION
- version 2.131
+ version 2.132
SYNOPSIS
use CPAN::Meta::Requirements;
@@ -3,7 +3,7 @@ use warnings;
package CPAN::Meta::Requirements;
# ABSTRACT: a set of version requirements for a CPAN dist
-our $VERSION = '2.131';
+our $VERSION = '2.132';
#pod =head1 SYNOPSIS
#pod
@@ -119,7 +119,7 @@ sub _version_object {
}
eval {
- if (not defined $version or $version eq '0') {
+ if (not defined $version or (!ref($version) && $version eq '0')) {
$vobj = $V0;
}
elsif ( ref($version) eq 'version' || _isa_version($version) ) {
@@ -229,7 +229,7 @@ BEGIN {
sub add_minimum {
my ($self, $name, $version) = @_;
- if (not defined $version or $version eq '0') {
+ if (not defined $version or (!ref($version) && $version eq '0')) {
return $self if $self->__entry_for($name);
Carp::confess("can't add new requirements to finalized requirements")
if $self->is_finalized;
@@ -787,7 +787,7 @@ CPAN::Meta::Requirements - a set of version requirements for a CPAN dist
=head1 VERSION
-version 2.131
+version 2.132
=head1 SYNOPSIS
@@ -233,4 +233,22 @@ sub foo_1 {
is ( $scalar, undef, "requirements_for_module() returns undef for not found (scalar)" );
}
+{
+ my $req = CPAN::Meta::Requirements->new;
+
+ $req->add_minimum(Foo => "0.00");
+
+ my $req2 = CPAN::Meta::Requirements->new;
+ $req2->add_requirements($req);
+
+ is_deeply(
+ $req2->as_string_hash,
+ {
+ Foo => '0.00'
+ },
+ "0.00 precision preserved",
+ );
+
+}
+
done_testing;
@@ -55,6 +55,21 @@ ok(!$req->accepts_module('A::Tribe::Called' => '1.2'), 'lower version (>=, <=, !
ok(!$req->accepts_module('A::Tribe::Called' => '2.1'), 'higher version (>=, <=, !)');
ok(!$req->accepts_module('A::Tribe::Called' => '1.6'), 'excluded version (>=, <=, !)');
+# Test precision
+{
+ my $req = CPAN::Meta::Requirements->new;
+
+ $req->add_string_requirement(Foo => "0.00");
+
+ is_deeply(
+ $req->as_string_hash,
+ {
+ Foo => '0.00'
+ },
+ "0.00 precision preserved",
+ );
+}
+
# Test fatal errors
dies_ok { $req->add_string_requirement('Foo::Bar', "not really a version") }
qr/Can't convert/,