diff options
author | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2013-05-24 19:22:44 +0100 |
---|---|---|
committer | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2013-05-24 19:22:44 +0100 |
commit | 7f6e6ca2fce125217f63287b879e5c4b708dffc2 (patch) | |
tree | 66a17c40e153ecde340f5f086c29deb886533156 /cpan | |
parent | e571b8a647f3c46be5f7ac05bec5738a0e0b37bd (diff) | |
download | perl-7f6e6ca2fce125217f63287b879e5c4b708dffc2.tar.gz |
Update CPAN-Meta to CPAN version 2.130880
[DELTA]
2.130880 2013-03-29 09:51:00 America/New_York
[BUGFIX]
- Fix provides 'version' bug introduced in the 2.130870 fix
2.130870 2013-03-28 11:08:50 America/New_York
[BUGFIX]
- Don't add 'version' to 'provides' during conversion if one didn't
exist in the original [Reported by Miyagawa; fixed by David Golden]
Diffstat (limited to 'cpan')
-rw-r--r-- | cpan/CPAN-Meta/Changes | 13 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta.pm | 71 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm | 79 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm | 72 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta/History.pm | 76 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm | 72 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm | 68 | ||||
-rw-r--r-- | cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm | 72 | ||||
-rw-r--r-- | cpan/CPAN-Meta/t/converter.t | 18 | ||||
-rw-r--r-- | cpan/CPAN-Meta/t/data/provides-version-missing.json | 102 |
10 files changed, 583 insertions, 60 deletions
diff --git a/cpan/CPAN-Meta/Changes b/cpan/CPAN-Meta/Changes index e866b7611f..060dd89806 100644 --- a/cpan/CPAN-Meta/Changes +++ b/cpan/CPAN-Meta/Changes @@ -1,5 +1,18 @@ Revision history for CPAN-Meta +2.130880 2013-03-29 09:51:00 America/New_York + + [BUGFIX] + + - Fix provides 'version' bug introduced in the 2.130870 fix + +2.130870 2013-03-28 11:08:50 America/New_York + + [BUGFIX] + + - Don't add 'version' to 'provides' during conversion if one didn't + exist in the original [Reported by Miyagawa; fixed by David Golden] + 2.120921 2012-04-01 15:20:24 Europe/Paris [REMOVED] diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta.pm b/cpan/CPAN-Meta/lib/CPAN/Meta.pm index 19980bd4fc..76ca474281 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta.pm @@ -2,7 +2,7 @@ use 5.006; use strict; use warnings; package CPAN::Meta; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION use Carp qw(carp croak); @@ -336,17 +336,19 @@ sub TO_JSON { # ABSTRACT: the distribution metadata for a CPAN dist - +__END__ =pod +=encoding utf-8 + =head1 NAME CPAN::Meta - the distribution metadata for a CPAN dist =head1 VERSION -version 2.120921 +version 2.130880 =head1 SYNOPSIS @@ -701,6 +703,64 @@ Ricardo Signes <rjbs@cpan.org> =back +=head1 CONTRIBUTORS + +=over 4 + +=item * + +Ansgar Burchardt <ansgar@cpan.org> + +=item * + +Michael G. Schwern <mschwern@cpan.org> + +=item * + +Randy Sims <randys@thepierianspring.org> + +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * + +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2010 by David Golden and Ricardo Signes. @@ -709,8 +769,3 @@ This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut - - -__END__ - - diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm b/cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm index 772d5792b1..fc05d8e6a6 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm @@ -2,7 +2,7 @@ use 5.006; use strict; use warnings; package CPAN::Meta::Converter; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION use CPAN::Meta::Validator; @@ -307,7 +307,7 @@ sub _is_module_name { } sub _clean_version { - my ($element, $key, $meta, $to_version) = @_; + my ($element) = @_; return 0 if ! defined $element; $element =~ s{^\s*}{}; @@ -676,12 +676,12 @@ sub _release_status_from_version { my $provides_spec = { file => \&_keep, - version => \&_clean_version, + version => \&_keep, }; my $provides_spec_2 = { file => \&_keep, - version => \&_clean_version, + version => \&_keep, ':custom' => \&_prefix_custom, }; @@ -692,6 +692,8 @@ sub _provides { my $new_data = {}; for my $k ( keys %$element ) { $new_data->{$k} = _convert($element->{$k}, $spec, $to_version); + $new_data->{$k}{version} = _clean_version($element->{$k}{version}) + if exists $element->{$k}{version}; } return $new_data; } @@ -1260,17 +1262,19 @@ sub convert { # ABSTRACT: Convert CPAN distribution metadata structures - +__END__ =pod +=encoding utf-8 + =head1 NAME CPAN::Meta::Converter - Convert CPAN distribution metadata structures =head1 VERSION -version 2.120921 +version 2.130880 =head1 SYNOPSIS @@ -1378,6 +1382,64 @@ Ricardo Signes <rjbs@cpan.org> =back +=head1 CONTRIBUTORS + +=over 4 + +=item * + +Ansgar Burchardt <ansgar@cpan.org> + +=item * + +Michael G. Schwern <mschwern@cpan.org> + +=item * + +Randy Sims <randys@thepierianspring.org> + +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * + +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2010 by David Golden and Ricardo Signes. @@ -1386,8 +1448,3 @@ This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut - - -__END__ - - diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm b/cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm index 31f4935b17..1960f482f9 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm @@ -2,7 +2,7 @@ use 5.006; use strict; use warnings; package CPAN::Meta::Feature; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION use CPAN::Meta::Prereqs; @@ -32,17 +32,19 @@ sub prereqs { $_[0]{prereqs} } # ABSTRACT: an optional feature provided by a CPAN distribution - +__END__ =pod +=encoding utf-8 + =head1 NAME CPAN::Meta::Feature - an optional feature provided by a CPAN distribution =head1 VERSION -version 2.120921 +version 2.130880 =head1 DESCRIPTION @@ -99,17 +101,69 @@ Ricardo Signes <rjbs@cpan.org> =back -=head1 COPYRIGHT AND LICENSE +=head1 CONTRIBUTORS -This software is copyright (c) 2010 by David Golden and Ricardo Signes. +=over 4 -This is free software; you can redistribute it and/or modify it under -the same terms as the Perl 5 programming language system itself. +=item * -=cut +Ansgar Burchardt <ansgar@cpan.org> +=item * -__END__ +Michael G. Schwern <mschwern@cpan.org> + +=item * +Randy Sims <randys@thepierianspring.org> +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + +=head1 COPYRIGHT AND LICENSE + +This software is copyright (c) 2010 by David Golden and Ricardo Signes. + +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + +=cut diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta/History.pm b/cpan/CPAN-Meta/lib/CPAN/Meta/History.pm index 9e32d56ab5..b793884620 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta/History.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta/History.pm @@ -3,24 +3,25 @@ use 5.006; use strict; use warnings; package CPAN::Meta::History; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION 1; # ABSTRACT: history of CPAN Meta Spec changes - - __END__ + =pod +=encoding utf-8 + =head1 NAME CPAN::Meta::History - history of CPAN Meta Spec changes =head1 VERSION -version 2.120921 +version 2.130880 =head1 DESCRIPTION @@ -174,10 +175,6 @@ November 2006 =item * -Clarified that all prerequisites take version range specifications - -=item * - Added 'no_index' subkey 'directory' and removed 'dir' to match actual usage in the wild @@ -211,6 +208,10 @@ Changed 'license' to be mandatory =item * +Added version range specifications for prerequisites + +=item * + Added required 'abstract' field =item * @@ -304,6 +305,64 @@ Ricardo Signes <rjbs@cpan.org> =back +=head1 CONTRIBUTORS + +=over 4 + +=item * + +Ansgar Burchardt <ansgar@cpan.org> + +=item * + +Michael G. Schwern <mschwern@cpan.org> + +=item * + +Randy Sims <randys@thepierianspring.org> + +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * + +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2010 by David Golden and Ricardo Signes. @@ -312,4 +371,3 @@ This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut - diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm b/cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm index c1c58f0a6a..f5fca200a2 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm @@ -2,7 +2,7 @@ use 5.006; use strict; use warnings; package CPAN::Meta::Prereqs; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION use Carp qw(confess); @@ -139,17 +139,19 @@ sub clone { # ABSTRACT: a set of distribution prerequisites by phase and type - +__END__ =pod +=encoding utf-8 + =head1 NAME CPAN::Meta::Prereqs - a set of distribution prerequisites by phase and type =head1 VERSION -version 2.120921 +version 2.130880 =head1 DESCRIPTION @@ -260,17 +262,69 @@ Ricardo Signes <rjbs@cpan.org> =back -=head1 COPYRIGHT AND LICENSE +=head1 CONTRIBUTORS -This software is copyright (c) 2010 by David Golden and Ricardo Signes. +=over 4 -This is free software; you can redistribute it and/or modify it under -the same terms as the Perl 5 programming language system itself. +=item * -=cut +Ansgar Burchardt <ansgar@cpan.org> +=item * -__END__ +Michael G. Schwern <mschwern@cpan.org> + +=item * +Randy Sims <randys@thepierianspring.org> +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + +=head1 COPYRIGHT AND LICENSE + +This software is copyright (c) 2010 by David Golden and Ricardo Signes. + +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + +=cut diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm b/cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm index 9addfd4360..a7397cd988 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm @@ -3,24 +3,25 @@ use 5.006; use strict; use warnings; package CPAN::Meta::Spec; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION 1; # ABSTRACT: specification for CPAN distribution metadata - - __END__ + =pod +=encoding utf-8 + =head1 NAME CPAN::Meta::Spec - specification for CPAN distribution metadata =head1 VERSION -version 2.120921 +version 2.130880 =head1 SYNOPSIS @@ -1136,6 +1137,64 @@ Ricardo Signes <rjbs@cpan.org> =back +=head1 CONTRIBUTORS + +=over 4 + +=item * + +Ansgar Burchardt <ansgar@cpan.org> + +=item * + +Michael G. Schwern <mschwern@cpan.org> + +=item * + +Randy Sims <randys@thepierianspring.org> + +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * + +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2010 by David Golden and Ricardo Signes. @@ -1144,4 +1203,3 @@ This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut - diff --git a/cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm b/cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm index e35f4c04ec..264658fdd9 100644 --- a/cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm +++ b/cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm @@ -2,7 +2,7 @@ use 5.006; use strict; use warnings; package CPAN::Meta::Validator; -our $VERSION = '2.120921'; # VERSION +our $VERSION = '2.130880'; # VERSION #--------------------------------------------------------------------------# @@ -828,17 +828,19 @@ sub _error { # ABSTRACT: validate CPAN distribution metadata structures - +__END__ =pod +=encoding utf-8 + =head1 NAME CPAN::Meta::Validator - validate CPAN distribution metadata structures =head1 VERSION -version 2.120921 +version 2.130880 =head1 SYNOPSIS @@ -1041,17 +1043,69 @@ Ricardo Signes <rjbs@cpan.org> =back -=head1 COPYRIGHT AND LICENSE +=head1 CONTRIBUTORS -This software is copyright (c) 2010 by David Golden and Ricardo Signes. +=over 4 -This is free software; you can redistribute it and/or modify it under -the same terms as the Perl 5 programming language system itself. +=item * -=cut +Ansgar Burchardt <ansgar@cpan.org> +=item * -__END__ +Michael G. Schwern <mschwern@cpan.org> + +=item * +Randy Sims <randys@thepierianspring.org> +=item * + +Ævar Arnfjörð Bjarmason <avar@cpan.org> + +=item * + +Christopher J. Madsen <cjm@cpan.org> + +=item * + +Cory G Watson <gphat@cpan.org> + +=item * + +Damyan Ivanov <dam@cpan.org> + +=item * +Eric Wilhelm <ewilhelm@cpan.org> + +=item * + +Gregor Hermann <gregoa@debian.org> + +=item * + +Ken Williams <kwilliams@cpan.org> + +=item * + +Lars Dɪᴇᴄᴋᴏᴡ 迪拉斯 <daxim@cpan.org> + +=item * + +Leon Timmermans <leont@cpan.org> + +=item * + +Mark Fowler <markf@cpan.org> + +=back + +=head1 COPYRIGHT AND LICENSE + +This software is copyright (c) 2010 by David Golden and Ricardo Signes. + +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + +=cut diff --git a/cpan/CPAN-Meta/t/converter.t b/cpan/CPAN-Meta/t/converter.t index a4dc56c091..30fe9b3314 100644 --- a/cpan/CPAN-Meta/t/converter.t +++ b/cpan/CPAN-Meta/t/converter.t @@ -225,6 +225,24 @@ for my $f ( reverse sort @files ) { is( $converted->{prereqs}{runtime}{requires}{'File::Path'}, "v1.0.0", "normalize v1.0.0"); } +# specific test for missing provides version +{ + my $path = File::Spec->catfile('t','data','provides-version-missing.json'); + my $original = Parse::CPAN::Meta->load_file( $path ); + ok( $original, "loaded " . basename $path ); + my $cmc = CPAN::Meta::Converter->new( $original ); + my $converted = $cmc->convert( version => 2 ); + is_deeply( $converted->{provides}{"Foo::Bar"}, { file => "lib/Foo/Bar.pm", version => "0.27_02" }, + "Foo::Bar provides correct" + ); + is_deeply( $converted->{provides}{"Foo::Bar::Blah"}, { file => "lib/Foo/Bar/Blah.pm" }, + "Foo::Bar::Blah provides correct" + ); + is_deeply( $converted->{provides}{"Foo::Bar::Baz"}, { file => "lib/Foo/Bar/Baz.pm", version => "0.3" }, + "Foo::Bar provides correct" + ); +} + # CMR standardizes stuff in a way that makes it hard to test original vs final # so we remove spaces and >= to make them compare the same sub _normalize_reqs { diff --git a/cpan/CPAN-Meta/t/data/provides-version-missing.json b/cpan/CPAN-Meta/t/data/provides-version-missing.json new file mode 100644 index 0000000000..2264e92e6b --- /dev/null +++ b/cpan/CPAN-Meta/t/data/provides-version-missing.json @@ -0,0 +1,102 @@ +{ + "resources" : { + "license" : [ + "http://dev.perl.org/licenses/" + ], + "repository" : { + "url" : "svn://repo.example.com/foo-bar#fakeanchor", + "web" : "http://www.example.com" + } + }, + "generated_by" : "Module::Build version 0.36", + "meta-spec" : { + "version" : "2", + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec" + }, + "version" : "0.36", + "name" : "Module-Build", + "dynamic_config" : 1, + "author" : [ + "Ken Williams <kwilliams@cpan.org>", + "Module-Build List <module-build@perl.org>" + ], + "release_status" : "stable", + "license" : [ + "perl_5" + ], + "description" : "Module::Build is a system for building, testing, and installing Perl modules. It is meant to be an alternative to ExtUtils::MakeMaker... blah blah blah", + "keywords" : [ + "toolchain", + "cpan", + "dual-life" + ], + "provides" : { + "Foo::Bar" : { + "file" : "lib/Foo/Bar.pm", + "version" : "0.27_02" + }, + "Foo::Bar::Blah" : { + "file" : "lib/Foo/Bar/Blah.pm" + }, + "Foo::Bar::Baz" : { + "file" : "lib/Foo/Bar/Baz.pm", + "version" : 0.3 + } + }, + "prereqs" : { + "runtime" : { + "requires" : { + "File::Copy" : "0", + "IO::File" : "0", + "Data::Dumper" : "0", + "File::Spec" : "0", + "Config" : "0", + "ExtUtils::Install" : "0", + "perl" : "5.006", + "File::Compare" : "0", + "File::Find" : "0", + "File::Path" : "0", + "File::Basename" : "0", + "Cwd" : "0" + }, + "recommends" : { + "YAML" : "0.35", + "ExtUtils::ParseXS" : "2.02", + "Pod::Text" : "0", + "ExtUtils::Install" : "0.3", + "Archive::Tar" : "1.00" + } + }, + "build" : { + "requires" : { + "Build::Requires": "1.1", + "Test::More" : "0" + } + }, + "test" : { + "requires" : { + "Test::More" : "0.88", + "Test::Requires" : "1.2" + } + } + }, + "optional_features" : { + "domination" : { + "prereqs" : { + "develop" : { + "requires" : { + "Genius::Evil" : "1.234" + } + }, + "runtime" : { + "requires" : { + "Machine::Weather" : "2.0" + } + } + }, + "description" : "Take over the world" + } + }, + "abstract" : "Build and install Perl modules", + "x_whatever" : "Custom key" +} |