diff options
author | Tatsuhiko Miyagawa <miyagawa@bulknews.net> | 2016-05-21 20:16:39 -0700 |
---|---|---|
committer | Tatsuhiko Miyagawa <miyagawa@bulknews.net> | 2016-05-21 20:16:39 -0700 |
commit | 311b2daf6c78c790c1136dc54c0fe5e29e42e2dc (patch) | |
tree | e1dacc770dd02eb031fd7e08af0e4f2f8ec6216d | |
parent | 8f5beb62665eb4fa433c59d20a82b842e5b6d080 (diff) | |
download | carton-311b2daf6c78c790c1136dc54c0fe5e29e42e2dc.tar.gz |
Handle undef versions correctly
-rw-r--r-- | lib/Carton/Snapshot/Emitter.pm | 4 | ||||
-rw-r--r-- | lib/Carton/Snapshot/Parser.pm | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/Carton/Snapshot/Emitter.pm b/lib/Carton/Snapshot/Emitter.pm index 9486ba7..c8e9fa8 100644 --- a/lib/Carton/Snapshot/Emitter.pm +++ b/lib/Carton/Snapshot/Emitter.pm @@ -15,7 +15,9 @@ sub emit { $data .= " provides:\n"; for my $package (sort keys %{$dist->provides}) { - $data .= " $package @{[$dist->provides->{$package}{version} || 'undef' ]}\n"; + my $version = $dist->provides->{$package}{version}; + $version = 'undef' unless defined $version; + $data .= " $package $version\n"; } $data .= " requirements:\n"; diff --git a/lib/Carton/Snapshot/Parser.pm b/lib/Carton/Snapshot/Parser.pm index 21aa0c1..68330de 100644 --- a/lib/Carton/Snapshot/Parser.pm +++ b/lib/Carton/Snapshot/Parser.pm @@ -71,7 +71,7 @@ my $machine = { re => qr/^\s{6}([0-9A-Za-z_:]+) ([v0-9\._,=\!<>\s]+|undef)/, code => sub { my($stash, $snapshot, $module, $version) = @_; - + $version = undef if $version eq 'undef'; if ($stash->{property} eq 'provides') { $stash->{dist}->provides->{$module} = { version => $version }; } else { |