Upgrade CPAN::Meta from version 2.132510 to 2.132620
authorSteve Hay <steve.m.hay@googlemail.com>
Thu, 19 Sep 2013 15:47:45 +0000 (16:47 +0100)
committerSteve Hay <steve.m.hay@googlemail.com>
Thu, 19 Sep 2013 15:47:45 +0000 (16:47 +0100)
13 files changed:
META.json
META.yml
Porting/Maintainers.pl
cpan/CPAN-Meta/Changes
cpan/CPAN-Meta/lib/CPAN/Meta.pm
cpan/CPAN-Meta/lib/CPAN/Meta/Converter.pm
cpan/CPAN-Meta/lib/CPAN/Meta/Feature.pm
cpan/CPAN-Meta/lib/CPAN/Meta/History.pm
cpan/CPAN-Meta/lib/CPAN/Meta/Prereqs.pm
cpan/CPAN-Meta/lib/CPAN/Meta/Spec.pm
cpan/CPAN-Meta/lib/CPAN/Meta/Validator.pm
cpan/CPAN-Meta/t/no-index.t
pod/perldelta.pod

index 53054fc..7169e62 100644 (file)
--- a/META.json
+++ b/META.json
@@ -4,7 +4,7 @@
       "perl5-porters@perl.org"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "CPAN::Meta version 2.132510",
+   "generated_by" : "CPAN::Meta version 2.132620",
    "license" : [
       "perl_5"
    ],
index 7326bc9..b1169ba 100644 (file)
--- a/META.yml
+++ b/META.yml
@@ -4,7 +4,7 @@ author:
   - perl5-porters@perl.org
 build_requires: {}
 dynamic_config: 1
-generated_by: 'CPAN::Meta version 2.132510, CPAN::Meta::Converter version 2.132510'
+generated_by: 'CPAN::Meta version 2.132620, CPAN::Meta::Converter version 2.132620'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
index 5d1d76d..45da8fe 100755 (executable)
@@ -456,7 +456,7 @@ use File::Glob qw(:case);
     # perl -Icpan/CPAN-Meta/lib Porting/makemeta
     'CPAN::Meta' => {
         'MAINTAINER'   => 'dagolden',
-        'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-2.132510.tar.gz',
+        'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-2.132620.tar.gz',
         'FILES'        => q[cpan/CPAN-Meta],
         'EXCLUDED'     => [
             qw(t/00-compile.t),
index 82e1560..5b557aa 100644 (file)
@@ -1,5 +1,14 @@
 Revision history for CPAN-Meta
 
+2.132620  2013-09-19 11:18:33 America/New_York
+
+  [CHANGED]
+
+  - META validation used to allow a scalar value when a list (i.e. array
+    reference) was required for a field. This has been tightened and
+    validation will now fail if a scalar value is given.  Conversion will
+    continue to turn scalars into an array reference as it previously did.
+
 2.132510  2013-09-08 10:17:29 America/New_York
 
   [FIXED]
index cdaf829..28ceaa7 100644 (file)
@@ -2,7 +2,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 
 use Carp qw(carp croak);
@@ -348,7 +348,7 @@ CPAN::Meta - the distribution metadata for a CPAN dist
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 SYNOPSIS
 
index 413d4eb..66acc1a 100644 (file)
@@ -2,7 +2,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta::Converter;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 
 use CPAN::Meta::Validator;
@@ -1280,7 +1280,7 @@ CPAN::Meta::Converter - Convert CPAN distribution metadata structures
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 SYNOPSIS
 
index 16737a2..4b6a408 100644 (file)
@@ -2,7 +2,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta::Feature;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 use CPAN::Meta::Prereqs;
 
@@ -44,7 +44,7 @@ CPAN::Meta::Feature - an optional feature provided by a CPAN distribution
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 DESCRIPTION
 
index 1c31f14..a20c66d 100644 (file)
@@ -3,7 +3,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta::History;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 1;
 
@@ -21,7 +21,7 @@ CPAN::Meta::History - history of CPAN Meta Spec changes
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 DESCRIPTION
 
index 2a4fdf8..daf13ba 100644 (file)
@@ -2,7 +2,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta::Prereqs;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 
 use Carp qw(confess);
@@ -151,7 +151,7 @@ CPAN::Meta::Prereqs - a set of distribution prerequisites by phase and type
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 DESCRIPTION
 
index a0e3a08..7de3074 100644 (file)
@@ -7,7 +7,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta::Spec;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 1;
 
@@ -28,7 +28,7 @@ CPAN::Meta::Spec - specification for CPAN distribution metadata
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 SYNOPSIS
 
index 1c8ce04..43c8228 100644 (file)
@@ -2,7 +2,7 @@ use 5.006;
 use strict;
 use warnings;
 package CPAN::Meta::Validator;
-our $VERSION = '2.132510'; # VERSION
+our $VERSION = '2.132620'; # VERSION
 
 
 #--------------------------------------------------------------------------#
@@ -78,10 +78,10 @@ my %definitions = (
   '2' => {
     # REQUIRED
     'abstract'            => { mandatory => 1, value => \&string  },
-    'author'              => { mandatory => 1, lazylist => { value => \&string } },
+    'author'              => { mandatory => 1, list => { value => \&string } },
     'dynamic_config'      => { mandatory => 1, value => \&boolean },
     'generated_by'        => { mandatory => 1, value => \&string  },
-    'license'             => { mandatory => 1, lazylist => { value => \&license } },
+    'license'             => { mandatory => 1, list => { value => \&license } },
     'meta-spec' => {
       mandatory => 1,
       'map' => {
@@ -96,7 +96,7 @@ my %definitions = (
 
     # OPTIONAL
     'description' => { value => \&string },
-    'keywords'    => { lazylist => { value => \&string } },
+    'keywords'    => { list => { value => \&string } },
     'no_index'    => $no_index_2,
     'optional_features'   => {
       'map'       => {
@@ -125,7 +125,7 @@ my %definitions = (
     },
     'resources'   => {
       'map'       => {
-        license    => { lazylist => { value => \&url } },
+        license    => { list => { value => \&url } },
         homepage   => { value => \&url },
         bugtracker => {
           'map' => {
@@ -452,7 +452,7 @@ sub errors {
 
 
 my $spec_error = "Missing validation action in specification. "
-  . "Must be one of 'map', 'list', 'lazylist', or 'value'";
+  . "Must be one of 'map', 'list', or 'value'";
 
 sub check_map {
     my ($self,$spec,$data) = @_;
@@ -484,8 +484,6 @@ sub check_map {
                 $self->check_map($spec->{$key}{'map'},$data->{$key});
             } elsif($spec->{$key}{'list'}) {
                 $self->check_list($spec->{$key}{'list'},$data->{$key});
-            } elsif($spec->{$key}{'lazylist'}) {
-                $self->check_lazylist($spec->{$key}{'lazylist'},$data->{$key});
             } else {
                 $self->_error( "$spec_error for '$key'" );
             }
@@ -498,8 +496,6 @@ sub check_map {
                 $self->check_map($spec->{':key'}{'map'},$data->{$key});
             } elsif($spec->{':key'}{'list'}) {
                 $self->check_list($spec->{':key'}{'list'},$data->{$key});
-            } elsif($spec->{':key'}{'lazylist'}) {
-                $self->check_lazylist($spec->{':key'}{'lazylist'},$data->{$key});
             } else {
                 $self->_error( "$spec_error for ':key'" );
             }
@@ -512,17 +508,6 @@ sub check_map {
     }
 }
 
-# if it's a string, make it into a list and check the list
-sub check_lazylist {
-    my ($self,$spec,$data) = @_;
-
-    if ( defined $data && ! ref($data) ) {
-      $data = [ $data ];
-    }
-
-    $self->check_list($spec,$data);
-}
-
 sub check_list {
     my ($self,$spec,$data) = @_;
 
@@ -545,8 +530,6 @@ sub check_list {
             $self->check_map($spec->{'map'},$value);
         } elsif(defined $spec->{'list'}) {
             $self->check_list($spec->{'list'},$value);
-        } elsif(defined $spec->{'lazylist'}) {
-            $self->check_lazylist($spec->{'lazylist'},$value);
         } elsif ($spec->{':key'}) {
             $self->check_map($spec,$value);
         } else {
@@ -840,7 +823,7 @@ CPAN::Meta::Validator - validate CPAN distribution metadata structures
 
 =head1 VERSION
 
-version 2.132510
+version 2.132620
 
 =head1 SYNOPSIS
 
@@ -904,10 +887,6 @@ the appropriate specification definition.
 
 =item *
 
-check_lazylist($spec,$data)
-
-Checks whether a list conforms, but converts strings to a single-element list
-
 =back
 
 =head2 Validator Methods
@@ -1016,7 +995,7 @@ Validates that a given key is in an acceptable module name format, e.g.
 
 =end :internals
 
-=for Pod::Coverage anything boolean check_lazylist check_list custom_1 custom_2 exversion file
+=for Pod::Coverage anything boolean check_list custom_1 custom_2 exversion file
 identifier license module phase relation release_status string string_or_undef
 url urlspec version header check_map
 
index b151680..456633a 100644 (file)
@@ -10,9 +10,9 @@ my %distmeta = (
   name     => 'Module-Billed',
   abstract => 'inscrutable',
   version  => '1',
-  author   => 'Joe',
+  author   => [ 'Joe' ],
   release_status => 'stable',
-  license  => 'perl_5',
+  license  => [ 'perl_5' ],
   'meta-spec' => {
     version => '2',
     url     => 'http://search.cpan.org/perldoc?CPAN::Meta::Spec',
index 86c1471..09da3fb 100644 (file)
@@ -228,10 +228,10 @@ full details.
 
 =item *
 
-L<CPAN::Meta> has been upgraded from version 2.132140 to 2.132510.
+L<CPAN::Meta> has been upgraded from version 2.132140 to 2.132620.
 
-No changes have been made to the installed code other than the version bump to
-keep in sync with the latest CPAN release.
+META validation no longer allows a scalar value when a list was required for a
+field.
 
 =item *