Hello community,

here is the log from the commit of package perl-MooseX-Types-Stringlike for 
openSUSE:Factory checked in at 2014-07-26 09:42:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-MooseX-Types-Stringlike (Old)
 and      /work/SRC/openSUSE:Factory/.perl-MooseX-Types-Stringlike.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-MooseX-Types-Stringlike"

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/perl-MooseX-Types-Stringlike/perl-MooseX-Types-Stringlike.changes
        2013-11-26 19:27:09.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-MooseX-Types-Stringlike.new/perl-MooseX-Types-Stringlike.changes
   2014-07-26 09:42:20.000000000 +0200
@@ -1,0 +2,9 @@
+Fri Jul 25 09:32:03 UTC 2014 - [email protected]
+
+- updated to 0.003
+     [Added]
+ 
+     - new ArrayRefOfStringlike, ArrayRefOfStringable types to facilitate
+       coercion of lists
+
+-------------------------------------------------------------------

Old:
----
  MooseX-Types-Stringlike-0.002.tar.gz

New:
----
  MooseX-Types-Stringlike-0.003.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-MooseX-Types-Stringlike.spec ++++++
--- /var/tmp/diff_new_pack.udA2Wb/_old  2014-07-26 09:42:21.000000000 +0200
+++ /var/tmp/diff_new_pack.udA2Wb/_new  2014-07-26 09:42:21.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-MooseX-Types-Stringlike
 #
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           perl-MooseX-Types-Stringlike
-Version:        0.002
+Version:        0.003
 Release:        0
 %define cpan_name MooseX-Types-Stringlike
 Summary:        Moose type constraints for strings or string-like objects
@@ -33,9 +33,7 @@
 BuildRequires:  perl(MooseX::Types)
 BuildRequires:  perl(MooseX::Types::Moose)
 BuildRequires:  perl(Test::More) >= 0.96
-#BuildRequires: perl(MooseX::Types::Stringlike)
-#BuildRequires: perl(Pod::Wordlist)
-#BuildRequires: perl(Test::Spelling) >= 0.12
+BuildRequires:  perl(version)
 Requires:       perl(MooseX::Types)
 Requires:       perl(MooseX::Types::Moose)
 %{perl_requires}

++++++ MooseX-Types-Stringlike-0.002.tar.gz -> 
MooseX-Types-Stringlike-0.003.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/CONTRIBUTING 
new/MooseX-Types-Stringlike-0.003/CONTRIBUTING
--- old/MooseX-Types-Stringlike-0.002/CONTRIBUTING      2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/CONTRIBUTING      2014-04-17 
13:06:10.000000000 +0200
@@ -4,8 +4,12 @@
 contains instructions that will help you work with the source code.
 
 The distribution is managed with Dist::Zilla.  This means than many of the
-usual files you might expect are not in the repository, but are generated
-at release time (e.g. Makefile.PL).
+usual files you might expect are not in the repository, but are generated at
+release time (e.g. Makefile.PL).
+
+Generally, **you do not need Dist::Zilla to contribute patches**.  You do need
+Dist::Zilla to create a tarball and/or install from the repository.  See below
+for guidance.
 
 ### Getting dependencies
 
@@ -27,8 +31,8 @@
     $ prove -l
     $ prove -lv t/some_test_file.t
 
-For most distributions, `prove` is entirely sufficent for you to test any
-patches you have.
+For most of my distributions, `prove` is entirely sufficient for you to test 
any
+patches you have. I use `prove` for 99% of my testing during development.
 
 ### Code style and tidying
 
@@ -40,9 +44,9 @@
 
 ### Patching documentation
 
-Much of the documentation Pod is generated at release time.
-Depending on the distribution, some documentation may be written in a Pod
-dialect called WikiDoc. (See Pod::WikiDoc on CPAN.)
+Much of the documentation Pod is generated at release time.  Depending on the
+distribution, some of my documentation may be written in a Pod dialect called
+WikiDoc. (See Pod::WikiDoc on CPAN.)
 
 If you would like to submit a documentation edit, please limit yourself to the
 documentation you see.
@@ -50,12 +54,34 @@
 If you see typos or documentation issues in the generated docs, please
 email or open a bug ticket instead of patching.
 
-### Learning Dist::Zilla
+### Installing from the repository
+
+If you want to install directly from the repository, you need to have
+Dist::Zilla installed (see below).  If this is a burden to you, I welcome
+patches against a CPAN tarball instead of the repository.
+
+### Installing and using Dist::Zilla
+
+Dist::Zilla is a very powerful authoring tool, optimized for maintaining a
+large number of distributions with a high degree of automation, but it has a
+large dependency chain, a bit of a learning curve and requires a number of
+author-specific plugins.
+
+To install it from CPAN, I recommend one of the following approaches for
+the quickest installation:
 
-Dist::Zilla is a very powerful authoring tool, but requires a number of
-author-specific plugins.  If you would like to use it for contributing,
-install it from CPAN, then run one of the following commands, depending on
-your CPAN client:
+    # using CPAN.pm, but bypassing non-functional pod tests
+    $ cpan TAP::Harness::Restricted
+    $ PERL_MM_USE_DEFAULT=1 HARNESS_CLASS=TAP::Harness::Restricted cpan 
Dist::Zilla
+
+    # using cpanm, bypassing *all* tests
+    $ cpanm -n Dist::Zilla
+
+In either case, it's probably going to take about 10 minutes.  Go for a walk,
+go get a cup of your favorite beverage, take a bathroom break, or whatever.
+When you get back, Dist::Zilla should be ready for you.
+
+Then you need to install any plugins specific to this distribution:
 
     $ cpan `dzil authordeps`
     $ dzil authordeps | cpanm
@@ -66,5 +92,9 @@
     $ dzil test
     $ dzil xtest
 
+To install from the repository, use:
+
+    $ dzil install
+
 You can learn more about Dist::Zilla at http://dzil.org/
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/Changes 
new/MooseX-Types-Stringlike-0.003/Changes
--- old/MooseX-Types-Stringlike-0.002/Changes   2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/Changes   2014-04-17 13:06:10.000000000 
+0200
@@ -1,8 +1,15 @@
 Revision history for MooseX-Types-Stringable
 
+0.003     2014-04-17 07:06:08-04:00 America/New_York
+
+    [Added]
+
+    - new ArrayRefOfStringlike, ArrayRefOfStringable types to facilitate
+      coercion of lists
+
 0.002     2013-11-02 21:42:57 America/New_York
 
-    [DOCUMENTATION]
+    [Documentation]
 
     - Fixed missing =encoding command
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/MANIFEST 
new/MooseX-Types-Stringlike-0.003/MANIFEST
--- old/MooseX-Types-Stringlike-0.002/MANIFEST  2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/MANIFEST  2014-04-17 13:06:10.000000000 
+0200
@@ -1,3 +1,4 @@
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v5.015.
 CONTRIBUTING
 Changes
 LICENSE
@@ -11,6 +12,7 @@
 lib/MooseX/Types/Stringlike.pm
 perlcritic.rc
 t/00-report-prereqs.t
+t/arrayrefs.t
 t/stringable.t
 tidyall.ini
 xt/author/00-compile.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/META.json 
new/MooseX-Types-Stringlike-0.003/META.json
--- old/MooseX-Types-Stringlike-0.002/META.json 2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/META.json 2014-04-17 13:06:10.000000000 
+0200
@@ -4,7 +4,7 @@
       "David Golden <[email protected]>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 5.003, CPAN::Meta::Converter version 
2.132830",
+   "generated_by" : "Dist::Zilla version 5.015, CPAN::Meta::Converter version 
2.140640",
    "license" : [
       "apache_2_0"
    ],
@@ -32,6 +32,8 @@
       },
       "develop" : {
          "requires" : {
+            "Dist::Zilla" : "5.015",
+            "Dist::Zilla::PluginBundle::DAGOLDEN" : "0.060",
             "File::Spec" : "0",
             "File::Temp" : "0",
             "IO::Handle" : "0",
@@ -56,21 +58,22 @@
       "test" : {
          "recommends" : {
             "CPAN::Meta" : "0",
-            "CPAN::Meta::Requirements" : "0"
+            "CPAN::Meta::Requirements" : "2.120900"
          },
          "requires" : {
             "ExtUtils::MakeMaker" : "0",
             "File::Spec::Functions" : "0",
             "List::Util" : "0",
             "Moose" : "0",
-            "Test::More" : "0.96"
+            "Test::More" : "0.96",
+            "version" : "0"
          }
       }
    },
    "provides" : {
       "MooseX::Types::Stringlike" : {
          "file" : "lib/MooseX/Types/Stringlike.pm",
-         "version" : "0.002"
+         "version" : "0.003"
       }
    },
    "release_status" : "stable",
@@ -85,7 +88,10 @@
          "web" : "https://github.com/dagolden/MooseX-Types-Stringlike";
       }
    },
-   "version" : "0.002",
-   "x_authority" : "cpan:DAGOLDEN"
+   "version" : "0.003",
+   "x_authority" : "cpan:DAGOLDEN",
+   "x_contributors" : [
+      "Karen Etheridge <[email protected]>"
+   ]
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/META.yml 
new/MooseX-Types-Stringlike-0.003/META.yml
--- old/MooseX-Types-Stringlike-0.002/META.yml  2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/META.yml  2014-04-17 13:06:10.000000000 
+0200
@@ -3,19 +3,20 @@
 author:
   - 'David Golden <[email protected]>'
 build_requires:
-  ExtUtils::MakeMaker: 0
-  File::Spec::Functions: 0
-  List::Util: 0
-  Moose: 0
-  Test::More: 0.96
+  ExtUtils::MakeMaker: '0'
+  File::Spec::Functions: '0'
+  List::Util: '0'
+  Moose: '0'
+  Test::More: '0.96'
+  version: '0'
 configure_requires:
-  ExtUtils::MakeMaker: 6.17
+  ExtUtils::MakeMaker: '6.17'
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.003, CPAN::Meta::Converter version 
2.132830'
+generated_by: 'Dist::Zilla version 5.015, CPAN::Meta::Converter version 
2.140640'
 license: apache
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
-  version: 1.4
+  version: '1.4'
 name: MooseX-Types-Stringlike
 no_index:
   directory:
@@ -28,17 +29,19 @@
 provides:
   MooseX::Types::Stringlike:
     file: lib/MooseX/Types/Stringlike.pm
-    version: 0.002
+    version: '0.003'
 requires:
-  MooseX::Types: 0
-  MooseX::Types::Moose: 0
-  overload: 0
-  perl: 5.008001
-  strict: 0
-  warnings: 0
+  MooseX::Types: '0'
+  MooseX::Types::Moose: '0'
+  overload: '0'
+  perl: '5.008001'
+  strict: '0'
+  warnings: '0'
 resources:
   bugtracker: https://github.com/dagolden/MooseX-Types-Stringlike/issues
   homepage: https://github.com/dagolden/MooseX-Types-Stringlike
   repository: https://github.com/dagolden/MooseX-Types-Stringlike.git
-version: 0.002
+version: '0.003'
 x_authority: cpan:DAGOLDEN
+x_contributors:
+  - 'Karen Etheridge <[email protected]>'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/Makefile.PL 
new/MooseX-Types-Stringlike-0.003/Makefile.PL
--- old/MooseX-Types-Stringlike-0.002/Makefile.PL       2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/Makefile.PL       2014-04-17 
13:06:10.000000000 +0200
@@ -1,4 +1,5 @@
 
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker 
v5.015.
 use strict;
 use warnings;
 
@@ -31,9 +32,10 @@
     "File::Spec::Functions" => 0,
     "List::Util" => 0,
     "Moose" => 0,
-    "Test::More" => "0.96"
+    "Test::More" => "0.96",
+    "version" => 0
   },
-  "VERSION" => "0.002",
+  "VERSION" => "0.003",
   "test" => {
     "TESTS" => "t/*.t"
   }
@@ -50,6 +52,7 @@
   "Test::More" => "0.96",
   "overload" => 0,
   "strict" => 0,
+  "version" => 0,
   "warnings" => 0
 );
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/README 
new/MooseX-Types-Stringlike-0.003/README
--- old/MooseX-Types-Stringlike-0.002/README    2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/README    2014-04-17 13:06:10.000000000 
+0200
@@ -3,14 +3,14 @@
     string-like objects
 
 VERSION
-    version 0.002
+    version 0.003
 
 SYNOPSIS
       package Foo;
       use Moose;
-      use MooseX::Types::Stringlike qw/Stringlike Stringable/;
-  
-      has path => ( 
+      use MooseX::Types::Stringlike qw/Stringlike Stringable 
ArrayRefOfStringlike ArrayRefOfStringable/;
+
+      has path => (
         is => 'ro',
         isa => Stringlike,
         coerce => 1
@@ -21,6 +21,17 @@
         isa => Stringable,
       );
 
+      has paths => (
+        is => 'ro',
+        isa => ArrayRefOfStringlike,
+        coerce => 1
+      );
+
+      has stringable_objects => (
+        is => 'ro',
+        isa => ArrayRefOfStringable,
+      );
+
 DESCRIPTION
     This module provides a more general version of the "Str" type. If
     coercions are enabled, it will accepts objects that overload
@@ -37,11 +48,21 @@
     "Stringable" is a subtype of "Object" where the object has overloaded
     stringification.
 
+  ArrayRefOfStringlike
+    "ArrayRefStringlike" is a subtype of "ArrayRef[Str]". It can coerce
+    "ArrayRefOfStringable" objects into an arrayref of strings.
+
+  ArrayRefOfStringable
+    "ArrayRefOfStringable" is a subtype of "ArrayRef[Object]" where the
+    objects have overloaded stringification.
+
 SEE ALSO
     *   Moose::Manual::Types
 
     *   MooseX::Types
 
+    *   MooseX::Types::Moose
+
 ACKNOWLEDGMENTS
     Thank you to Dagfinn Ilmari Mannsåker for the idea on IRC that led to
     this module.
@@ -63,6 +84,9 @@
 AUTHOR
     David Golden <[email protected]>
 
+CONTRIBUTOR
+    Karen Etheridge <[email protected]>
+
 COPYRIGHT AND LICENSE
     This software is Copyright (c) 2012 by David Golden.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/cpanfile 
new/MooseX-Types-Stringlike-0.003/cpanfile
--- old/MooseX-Types-Stringlike-0.002/cpanfile  2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/cpanfile  2014-04-17 13:06:10.000000000 
+0200
@@ -11,11 +11,12 @@
   requires "List::Util" => "0";
   requires "Moose" => "0";
   requires "Test::More" => "0.96";
+  requires "version" => "0";
 };
 
 on 'test' => sub {
   recommends "CPAN::Meta" => "0";
-  recommends "CPAN::Meta::Requirements" => "0";
+  recommends "CPAN::Meta::Requirements" => "2.120900";
 };
 
 on 'configure' => sub {
@@ -23,6 +24,8 @@
 };
 
 on 'develop' => sub {
+  requires "Dist::Zilla" => "5.015";
+  requires "Dist::Zilla::PluginBundle::DAGOLDEN" => "0.060";
   requires "File::Spec" => "0";
   requires "File::Temp" => "0";
   requires "IO::Handle" => "0";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/dist.ini 
new/MooseX-Types-Stringlike-0.003/dist.ini
--- old/MooseX-Types-Stringlike-0.002/dist.ini  2013-11-03 02:43:00.000000000 
+0100
+++ new/MooseX-Types-Stringlike-0.003/dist.ini  2014-04-17 13:06:10.000000000 
+0200
@@ -5,8 +5,10 @@
 copyright_year   = 2012
 
 [@DAGOLDEN]
-:version = 0.056
+:version = 0.060
 stopwords = Stringable
+stopwords = ArrayRefOfStringable
+stopwords = ArrayRefOfStringlike
 stopwords = Dagfinn
 stopwords = Ilmari
 stopwords = Mannsåker
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/MooseX-Types-Stringlike-0.002/lib/MooseX/Types/Stringlike.pm 
new/MooseX-Types-Stringlike-0.003/lib/MooseX/Types/Stringlike.pm
--- old/MooseX-Types-Stringlike-0.002/lib/MooseX/Types/Stringlike.pm    
2013-11-03 02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/lib/MooseX/Types/Stringlike.pm    
2014-04-17 13:06:10.000000000 +0200
@@ -4,10 +4,10 @@
 
 package MooseX::Types::Stringlike;
 # ABSTRACT: Moose type constraints for strings or string-like objects
-our $VERSION = '0.002'; # VERSION
+our $VERSION = '0.003'; # VERSION
 
-use MooseX::Types -declare => [ qw/Stringable Stringlike/ ];
-use MooseX::Types::Moose qw/Str Object/;
+use MooseX::Types -declare => [ qw/Stringable Stringlike ArrayRefOfStringable 
ArrayRefOfStringlike / ];
+use MooseX::Types::Moose qw/Str Object ArrayRef/;
 use overload ();
 
 # Thanks ilmari for suggesting something like this
@@ -22,6 +22,17 @@
   from Stringable,
   via { "$_" };
 
+
+subtype ArrayRefOfStringable,
+  as ArrayRef[Stringable];
+
+subtype ArrayRefOfStringlike,
+  as ArrayRef[Stringlike];
+
+coerce ArrayRefOfStringlike,
+  from ArrayRefOfStringable,
+  via { [ map { "$_" } @$_ ] };
+
 1;
 
 
@@ -39,15 +50,15 @@
 
 =head1 VERSION
 
-version 0.002
+version 0.003
 
 =head1 SYNOPSIS
 
   package Foo;
   use Moose;
-  use MooseX::Types::Stringlike qw/Stringlike Stringable/;
-  
-  has path => ( 
+  use MooseX::Types::Stringlike qw/Stringlike Stringable ArrayRefOfStringlike 
ArrayRefOfStringable/;
+
+  has path => (
     is => 'ro',
     isa => Stringlike,
     coerce => 1
@@ -58,6 +69,17 @@
     isa => Stringable,
   );
 
+  has paths => (
+    is => 'ro',
+    isa => ArrayRefOfStringlike,
+    coerce => 1
+  );
+
+  has stringable_objects => (
+    is => 'ro',
+    isa => ArrayRefOfStringable,
+  );
+
 =head1 DESCRIPTION
 
 This module provides a more general version of the C<Str> type.  If coercions
@@ -79,6 +101,15 @@
 
 C<Stringable> is a subtype of C<Object> where the object has overloaded 
stringification.
 
+=head2 ArrayRefOfStringlike
+
+C<ArrayRefStringlike> is a subtype of C<ArrayRef[Str]>.  It can coerce 
C<ArrayRefOfStringable> objects into
+an arrayref of strings.
+
+=head2 ArrayRefOfStringable
+
+C<ArrayRefOfStringable> is a subtype of C<ArrayRef[Object]> where the objects 
have overloaded stringification.
+
 =head1 SEE ALSO
 
 =over 4
@@ -91,6 +122,10 @@
 
 L<MooseX::Types>
 
+=item *
+
+L<MooseX::Types::Moose>
+
 =back
 
 =head1 ACKNOWLEDGMENTS
@@ -120,6 +155,10 @@
 
 David Golden <[email protected]>
 
+=head1 CONTRIBUTOR
+
+Karen Etheridge <[email protected]>
+
 =head1 COPYRIGHT AND LICENSE
 
 This software is Copyright (c) 2012 by David Golden.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/perlcritic.rc 
new/MooseX-Types-Stringlike-0.003/perlcritic.rc
--- old/MooseX-Types-Stringlike-0.002/perlcritic.rc     2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/perlcritic.rc     2014-04-17 
13:06:10.000000000 +0200
@@ -7,6 +7,9 @@
 [TestingAndDebugging::ProhibitNoStrict]
 allow = refs
 
+[Variables::ProhibitEvilVariables]
+variables = $DB::single
+
 # Turn these off
 [-BuiltinFunctions::ProhibitStringyEval]
 [-ControlStructures::ProhibitPostfixControls]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/t/00-report-prereqs.t 
new/MooseX-Types-Stringlike-0.003/t/00-report-prereqs.t
--- old/MooseX-Types-Stringlike-0.002/t/00-report-prereqs.t     2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/t/00-report-prereqs.t     2014-04-17 
13:06:10.000000000 +0200
@@ -3,67 +3,123 @@
 use strict;
 use warnings;
 
-# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.010
+# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.013
 
 use Test::More tests => 1;
 
 use ExtUtils::MakeMaker;
 use File::Spec::Functions;
 use List::Util qw/max/;
+use version;
+
+# hide optional CPAN::Meta modules from prereq scanner
+# and check if they are available
+my $cpan_meta = "CPAN::Meta";
+my $cpan_meta_req = "CPAN::Meta::Requirements";
+my $HAS_CPAN_META = eval "require $cpan_meta"; ## no critic
+my $HAS_CPAN_META_REQ = eval "require $cpan_meta_req; 
$cpan_meta_req->VERSION('2.120900')";
+
+# Verify requirements?
+my $DO_VERIFY_PREREQS = 1;
+
+sub _merge_requires {
+    my ($collector, $prereqs) = @_;
+    for my $phase ( qw/configure build test runtime develop/ ) {
+        next unless exists $prereqs->{$phase};
+        if ( my $req = $prereqs->{$phase}{'requires'} ) {
+            my $cmr = CPAN::Meta::Requirements->from_string_hash( $req );
+            $collector->add_requirements( $cmr );
+        }
+    }
+}
+
+my %include = map {; $_ => 1 } qw(
 
-my @modules = qw(
-  CPAN::Meta
-  CPAN::Meta::Requirements
-  ExtUtils::MakeMaker
-  File::Spec::Functions
-  List::Util
-  Moose
-  MooseX::Types
-  MooseX::Types::Moose
-  Test::More
-  overload
-  perl
-  strict
-  warnings
 );
 
 my %exclude = map {; $_ => 1 } qw(
 
 );
 
-my ($source) = grep { -f $_ } qw/MYMETA.json MYMETA.yml META.json/;
-$source = "META.yml" unless defined $source;
+# Add static prereqs to the included modules list
+my $static_prereqs = do { my $x = {
+       'configure' => {
+                        'requires' => {
+                                        'ExtUtils::MakeMaker' => '6.17'
+                                      }
+                      },
+       'develop' => {
+                      'requires' => {
+                                      'Dist::Zilla' => '5.015',
+                                      'Dist::Zilla::PluginBundle::DAGOLDEN' => 
'0.060',
+                                      'File::Spec' => '0',
+                                      'File::Temp' => '0',
+                                      'IO::Handle' => '0',
+                                      'IPC::Open3' => '0',
+                                      'Pod::Coverage::TrustPod' => '0',
+                                      'Test::CPAN::Meta' => '0',
+                                      'Test::More' => '0',
+                                      'Test::Pod' => '1.41',
+                                      'Test::Pod::Coverage' => '1.08'
+                                    }
+                    },
+       'runtime' => {
+                      'requires' => {
+                                      'MooseX::Types' => '0',
+                                      'MooseX::Types::Moose' => '0',
+                                      'overload' => '0',
+                                      'perl' => '5.008001',
+                                      'strict' => '0',
+                                      'warnings' => '0'
+                                    }
+                    },
+       'test' => {
+                   'recommends' => {
+                                     'CPAN::Meta' => '0',
+                                     'CPAN::Meta::Requirements' => '2.120900'
+                                   },
+                   'requires' => {
+                                   'ExtUtils::MakeMaker' => '0',
+                                   'File::Spec::Functions' => '0',
+                                   'List::Util' => '0',
+                                   'Moose' => '0',
+                                   'Test::More' => '0.96',
+                                   'version' => '0'
+                                 }
+                 }
+     };
+  $x;
+ };
 
-# replace modules with dynamic results from MYMETA.json if we can
-# (hide CPAN::Meta from prereq scanner)
-my $cpan_meta = "CPAN::Meta";
-my $cpan_meta_req = "CPAN::Meta::Requirements";
+delete $static_prereqs->{develop} if not $ENV{AUTHOR_TESTING};
+$include{$_} = 1 for map { keys %$_ } map { values %$_ } values 
%$static_prereqs;
+
+# Merge requirements for major phases (if we can)
 my $all_requires;
-if ( -f $source && eval "require $cpan_meta" ) { ## no critic
+if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META_REQ ) {
+    $all_requires = $cpan_meta_req->new;
+    _merge_requires($all_requires, $static_prereqs);
+}
+
+
+# Add dynamic prereqs to the included modules list (if we can)
+my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
+if ( $source && $HAS_CPAN_META ) {
   if ( my $meta = eval { CPAN::Meta->load_file($source) } ) {
+    my $dynamic_prereqs = $meta->prereqs;
+    delete $dynamic_prereqs->{develop} if not $ENV{AUTHOR_TESTING};
+    $include{$_} = 1 for map { keys %$_ } map { values %$_ } values 
%$dynamic_prereqs;
 
-    # Get ALL modules mentioned in META (any phase/type)
-    my $prereqs = $meta->prereqs;
-    delete $prereqs->{develop} if not $ENV{AUTHOR_TESTING};
-    my %uniq = map {$_ => 1} map { keys %$_ } map { values %$_ } values 
%$prereqs;
-    $uniq{$_} = 1 for @modules; # don't lose any static ones
-    @modules = sort grep { ! $exclude{$_} } keys %uniq;
-
-    # If verifying, merge 'requires' only for major phases
-    if ( 1 ) {
-      $prereqs = $meta->effective_prereqs; # get the object, not the hash
-      if (eval "require $cpan_meta_req; 1") { ## no critic
-        $all_requires = $cpan_meta_req->new;
-        for my $phase ( qw/configure build test runtime/ ) {
-          $all_requires->add_requirements(
-            $prereqs->requirements_for($phase, 'requires')
-          );
-        }
-      }
+    if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META_REQ ) {
+        _merge_requires($all_requires, $dynamic_prereqs);
     }
   }
 }
+else {
+  $source = 'static metadata';
+}
 
+my @modules = sort grep { ! $exclude{$_} } keys %include;
 my @reports = [qw/Version Module/];
 my @dep_errors;
 my $req_hash = defined($all_requires) ? $all_requires->as_string_hash : {};
@@ -79,7 +135,7 @@
     $ver = "undef" unless defined $ver; # Newer MM should do this anyway
     push @reports, [$ver, $mod];
 
-    if ( 1 && $all_requires ) {
+    if ( $DO_VERIFY_PREREQS && $all_requires ) {
       my $req = $req_hash->{$mod};
       if ( defined $req && length $req ) {
         if ( ! defined eval { version->parse($ver) } ) {
@@ -95,7 +151,7 @@
   else {
     push @reports, ["missing", $mod];
 
-    if ( 1 && $all_requires ) {
+    if ( $DO_VERIFY_PREREQS && $all_requires ) {
       my $req = $req_hash->{$mod};
       if ( defined $req && length $req ) {
         push @dep_errors, "$mod is not installed (version '$req' required)";
@@ -123,4 +179,4 @@
 
 pass;
 
-# vim: ts=2 sts=2 sw=2 et:
+# vim: ts=4 sts=4 sw=4 et:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/t/arrayrefs.t 
new/MooseX-Types-Stringlike-0.003/t/arrayrefs.t
--- old/MooseX-Types-Stringlike-0.002/t/arrayrefs.t     1970-01-01 
01:00:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/t/arrayrefs.t     2014-04-17 
13:06:10.000000000 +0200
@@ -0,0 +1,22 @@
+use 5.006;
+use strict;
+use warnings;
+use Test::More 0.96;
+
+use MooseX::Types::Stringlike qw/Stringable Stringlike ArrayRefOfStringable 
ArrayRefOfStringlike/;
+
+{
+  package BlessedPath;
+  use overload q{""} => sub { "${$_[0]}" };
+  sub new { my ($class, $path) = @_; return bless \$path, $class; }
+}
+
+my $stringable = [ map { BlessedPath->new($_) } ('./t', './xt') ];
+
+ok(is_ArrayRefOfStringable($stringable), 'arrayref of stringable things is a 
ArrayRefOfStringable');
+
+my $stringlike = to_ArrayRefOfStringlike($stringable);
+ok(is_ArrayRefOfStringlike($stringlike), 'can coerce ArrayRefOfStringable to 
ArrayRefOfStringlike');
+is_deeply($stringlike, [ './t', './xt' ], 'ArrayRefOfStringable properly 
coerced to ArrayRefOfStringlike');
+
+done_testing;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/xt/author/00-compile.t 
new/MooseX-Types-Stringlike-0.003/xt/author/00-compile.t
--- old/MooseX-Types-Stringlike-0.002/xt/author/00-compile.t    2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/xt/author/00-compile.t    2014-04-17 
13:06:10.000000000 +0200
@@ -1,7 +1,8 @@
+use 5.006;
 use strict;
 use warnings;
 
-# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.037
+# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.040
 
 use Test::More  tests => 1 + ($ENV{AUTHOR_TESTING} ? 1 : 0);
 
@@ -24,11 +25,12 @@
 use IPC::Open3;
 use IO::Handle;
 
+open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!";
+
 my @warnings;
 for my $lib (@module_files)
 {
     # see L<perlfaq8/How can I capture STDERR from an external command?>
-    open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!";
     my $stderr = IO::Handle->new;
 
     my $pid = open3($stdin, '>&STDERR', $stderr, $^X, $inc_switch, '-e', 
"require q[$lib]");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/xt/author/pod-spell.t 
new/MooseX-Types-Stringlike-0.003/xt/author/pod-spell.t
--- old/MooseX-Types-Stringlike-0.002/xt/author/pod-spell.t     2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/xt/author/pod-spell.t     2014-04-17 
13:06:10.000000000 +0200
@@ -2,7 +2,7 @@
 use warnings;
 use Test::More;
 
-# generated by Dist::Zilla::Plugin::Test::PodSpelling 2.006001
+# generated by Dist::Zilla::Plugin::Test::PodSpelling 2.006007
 use Test::Spelling 0.12;
 use Pod::Wordlist;
 
@@ -11,12 +11,17 @@
 all_pod_files_spelling_ok( qw( bin lib  ) );
 __DATA__
 Stringable
+ArrayRefOfStringable
+ArrayRefOfStringlike
 Dagfinn
 Ilmari
 Mannsåker
 David
 Golden
 dagolden
+Karen
+Etheridge
+ether
 lib
 MooseX
 Types
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/MooseX-Types-Stringlike-0.002/xt/release/distmeta.t 
new/MooseX-Types-Stringlike-0.003/xt/release/distmeta.t
--- old/MooseX-Types-Stringlike-0.002/xt/release/distmeta.t     2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/xt/release/distmeta.t     2014-04-17 
13:06:10.000000000 +0200
@@ -1,7 +1,6 @@
 #!perl
+# This file was automatically generated by Dist::Zilla::Plugin::MetaTests.
 
-use Test::More;
+use Test::CPAN::Meta;
 
-eval "use Test::CPAN::Meta";
-plan skip_all => "Test::CPAN::Meta required for testing META.yml" if $@;
 meta_yaml_ok();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/MooseX-Types-Stringlike-0.002/xt/release/pod-coverage.t 
new/MooseX-Types-Stringlike-0.003/xt/release/pod-coverage.t
--- old/MooseX-Types-Stringlike-0.002/xt/release/pod-coverage.t 2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/xt/release/pod-coverage.t 2014-04-17 
13:06:10.000000000 +0200
@@ -1,13 +1,7 @@
 #!perl
+# This file was automatically generated by 
Dist::Zilla::Plugin::PodCoverageTests.
 
-use Test::More;
-
-eval "use Test::Pod::Coverage 1.08";
-plan skip_all => "Test::Pod::Coverage 1.08 required for testing POD coverage"
-  if $@;
-
-eval "use Pod::Coverage::TrustPod";
-plan skip_all => "Pod::Coverage::TrustPod required for testing POD coverage"
-  if $@;
+use Test::Pod::Coverage 1.08;
+use Pod::Coverage::TrustPod;
 
 all_pod_coverage_ok({ coverage_class => 'Pod::Coverage::TrustPod' });
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/MooseX-Types-Stringlike-0.002/xt/release/pod-syntax.t 
new/MooseX-Types-Stringlike-0.003/xt/release/pod-syntax.t
--- old/MooseX-Types-Stringlike-0.002/xt/release/pod-syntax.t   2013-11-03 
02:43:00.000000000 +0100
+++ new/MooseX-Types-Stringlike-0.003/xt/release/pod-syntax.t   2014-04-17 
13:06:10.000000000 +0200
@@ -1,7 +1,6 @@
 #!perl
+# This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests.
 use Test::More;
-
-eval "use Test::Pod 1.41";
-plan skip_all => "Test::Pod 1.41 required for testing POD" if $@;
+use Test::Pod 1.41;
 
 all_pod_files_ok();

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to