Hello community,

here is the log from the commit of package perl-CPAN-Mini for openSUSE:Factory 
checked in at 2013-06-06 12:19:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-CPAN-Mini (Old)
 and      /work/SRC/openSUSE:Factory/.perl-CPAN-Mini.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-CPAN-Mini"

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-CPAN-Mini/perl-CPAN-Mini.changes    
2012-02-16 10:06:51.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.perl-CPAN-Mini.new/perl-CPAN-Mini.changes       
2013-06-06 12:19:57.000000000 +0200
@@ -1,0 +2,30 @@
+Mon Jun  3 11:48:38 UTC 2013 - co...@suse.com
+
+- updated to 1.111013
+          make www.cpan.org the default remote!
+
+          link to the list of mirrors, too (thanks, SYSMON!)
+
+          pass all options from command line, not just known ones (thanks,
+          Jeffrey Thalhammer, who waited a very very long time for me to apply
+          this!)
+
+          add --remote-from option to get remote from CPAN or CPANPLUS config
+          (thanks, Jeff Bisbee, who also waited a long time)
+
+          expand leading "~" in config file name (suggested by justincase)
+
+          die if local target isn't writable (suggested by SARGIE)
+
+          when testing, mock my_home harder (thanks, David Golden!)
+
+          check that the received 02packages seems at least remotely plausible
+
+          fix the old ->trace method, broken in 1.111004
+
+          config options that once had to be specified as multiple entries
+          on one line may now be given as repeated entries; these are
+          also_mirror, module_filters, and path_filters
+
+
+-------------------------------------------------------------------

Old:
----
  CPAN-Mini-1.111008.tar.gz

New:
----
  CPAN-Mini-1.111013.tar.gz

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

Other differences:
------------------
++++++ perl-CPAN-Mini.spec ++++++
--- /var/tmp/diff_new_pack.f1EmRL/_old  2013-06-06 12:19:57.000000000 +0200
+++ /var/tmp/diff_new_pack.f1EmRL/_new  2013-06-06 12:19:57.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-CPAN-Mini
 #
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2013 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-CPAN-Mini
-Version:        1.111008
+Version:        1.111013
 Release:        0
 %define cpan_name CPAN-Mini
 Summary:        create a minimal mirror of CPAN
@@ -29,6 +29,7 @@
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  perl
 BuildRequires:  perl-macros
+BuildRequires:  perl(CPANPLUS::Backend)
 BuildRequires:  perl(Compress::Zlib) >= 1.20
 BuildRequires:  perl(File::HomeDir) >= 0.57
 BuildRequires:  perl(File::Path) >= 2.04
@@ -38,6 +39,7 @@
 #BuildRequires: perl(CPAN::Mini)
 #BuildRequires: perl(CPAN::Mini::App)
 #BuildRequires: perl(File::Find::Rule)
+Requires:       perl(CPANPLUS::Backend)
 Requires:       perl(Compress::Zlib) >= 1.20
 Requires:       perl(File::HomeDir) >= 0.57
 Requires:       perl(File::Path) >= 2.04

++++++ CPAN-Mini-1.111008.tar.gz -> CPAN-Mini-1.111013.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/Changes 
new/CPAN-Mini-1.111013/Changes
--- old/CPAN-Mini-1.111008/Changes      2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/Changes      2013-04-13 15:03:01.000000000 +0200
@@ -1,5 +1,35 @@
 Revision history for CPAN-Mini
 
+1.111013  2013-04-13 14:02:58 Europe/London
+          make www.cpan.org the default remote!
+
+          link to the list of mirrors, too (thanks, SYSMON!)
+
+          pass all options from command line, not just known ones (thanks,
+          Jeffrey Thalhammer, who waited a very very long time for me to apply
+          this!)
+
+          add --remote-from option to get remote from CPAN or CPANPLUS config
+          (thanks, Jeff Bisbee, who also waited a long time)
+
+          expand leading "~" in config file name (suggested by justincase)
+
+          die if local target isn't writable (suggested by SARGIE)
+
+1.111012  2013-03-28 16:32:58 America/New_York
+          when testing, mock my_home harder (thanks, David Golden!)
+
+1.111011  2013-02-07 16:40:23 America/New_York
+          check that the received 02packages seems at least remotely plausible
+
+1.111010  2012-10-24 10:46:35 America/New_York
+          fix the old ->trace method, broken in 1.111004
+
+1.111009  2012-08-27 21:32:39 America/New_York
+          config options that once had to be specified as multiple entries
+          on one line may now be given as repeated entries; these are
+          also_mirror, module_filters, and path_filters
+
 1.111008  2011-12-23 13:36:41 America/New_York
           don't fail tests when the outside env has set CPAN_MINI_CONFIG
           (thanks, Stephen Thirwall!)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/MANIFEST 
new/CPAN-Mini-1.111013/MANIFEST
--- old/CPAN-Mini-1.111008/MANIFEST     2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/MANIFEST     2013-04-13 15:03:01.000000000 +0200
@@ -10,9 +10,12 @@
 dist.ini
 lib/CPAN/Mini.pm
 lib/CPAN/Mini/App.pm
+t/00-compile.t
 t/00-load.t
+t/000-report-versions-tiny.t
 t/app.t
 t/config-file.t
 t/filter.t
-t/release-pod-syntax.t
 xt/fake.t
+xt/release/changes_has_content.t
+xt/release/pod-syntax.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/META.json 
new/CPAN-Mini-1.111013/META.json
--- old/CPAN-Mini-1.111008/META.json    2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/META.json    2013-04-13 15:03:01.000000000 +0200
@@ -5,7 +5,7 @@
       "Randal Schwartz <mer...@stonehenge.com>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 4.300005, CPAN::Meta::Converter 
version 2.112621",
+   "generated_by" : "Dist::Zilla version 4.300033, CPAN::Meta::Converter 
version 2.130880",
    "license" : [
       "perl_5"
    ],
@@ -20,24 +20,32 @@
             "ExtUtils::MakeMaker" : "6.30"
          }
       },
+      "develop" : {
+         "requires" : {
+            "Test::Pod" : "1.41",
+            "version" : "0.9901"
+         }
+      },
       "runtime" : {
          "requires" : {
-            "Carp" : 0,
+            "CPAN" : "0",
+            "CPANPLUS::Backend" : "0",
+            "Carp" : "0",
             "Compress::Zlib" : "1.20",
-            "File::Basename" : 0,
-            "File::Copy" : 0,
-            "File::Find" : 0,
+            "File::Basename" : "0",
+            "File::Copy" : "0",
+            "File::Find" : "0",
             "File::HomeDir" : "0.57",
             "File::Path" : "2.04",
-            "File::Spec" : 0,
-            "File::Temp" : 0,
-            "Getopt::Long" : 0,
+            "File::Spec" : "0",
+            "File::Temp" : "0",
+            "Getopt::Long" : "0",
             "LWP::UserAgent" : "5",
             "Pod::Usage" : "1.00",
             "URI" : "1",
             "perl" : "5.006",
-            "strict" : 0,
-            "warnings" : 0
+            "strict" : "0",
+            "warnings" : "0"
          }
       },
       "test" : {
@@ -55,123 +63,136 @@
          "web" : "https://github.com/rjbs/cpan-mini";
       }
    },
-   "version" : "1.111008",
+   "version" : "1.111013",
    "x_Dist_Zilla" : {
+      "perl" : {
+         "version" : "5.017010"
+      },
       "plugins" : [
          {
+            "class" : "Dist::Zilla::Plugin::Git::GatherDir",
+            "name" : "@RJBS/Git::GatherDir",
+            "version" : "2.012"
+         },
+         {
             "class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed",
             "name" : "@RJBS/CheckPrereqsIndexed",
-            "version" : "0.007"
+            "version" : "0.008"
          },
          {
-            "class" : "Dist::Zilla::Plugin::GatherDir",
-            "name" : "@RJBS/@Basic/GatherDir",
-            "version" : "4.300005"
+            "class" : "Dist::Zilla::Plugin::CheckExtraTests",
+            "name" : "@RJBS/CheckExtraTests",
+            "version" : "0.011"
          },
          {
             "class" : "Dist::Zilla::Plugin::PruneCruft",
-            "name" : "@RJBS/@Basic/PruneCruft",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/PruneCruft",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::ManifestSkip",
-            "name" : "@RJBS/@Basic/ManifestSkip",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/ManifestSkip",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaYAML",
-            "name" : "@RJBS/@Basic/MetaYAML",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/MetaYAML",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::License",
-            "name" : "@RJBS/@Basic/License",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/License",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::Readme",
-            "name" : "@RJBS/@Basic/Readme",
-            "version" : "4.300005"
-         },
-         {
-            "class" : "Dist::Zilla::Plugin::ExtraTests",
-            "name" : "@RJBS/@Basic/ExtraTests",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/Readme",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::ExecDir",
-            "name" : "@RJBS/@Basic/ExecDir",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/ExecDir",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::ShareDir",
-            "name" : "@RJBS/@Basic/ShareDir",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/ShareDir",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::MakeMaker",
-            "name" : "@RJBS/@Basic/MakeMaker",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/MakeMaker",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::Manifest",
-            "name" : "@RJBS/@Basic/Manifest",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/Manifest",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::TestRelease",
-            "name" : "@RJBS/@Basic/TestRelease",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/TestRelease",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::ConfirmRelease",
-            "name" : "@RJBS/@Basic/ConfirmRelease",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/ConfirmRelease",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::UploadToCPAN",
-            "name" : "@RJBS/@Basic/UploadToCPAN",
-            "version" : "4.300005"
+            "name" : "@RJBS/@Filter/UploadToCPAN",
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::AutoPrereqs",
             "name" : "@RJBS/AutoPrereqs",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::NextVersion",
             "name" : "@RJBS/Git::NextVersion",
-            "version" : "1.113560"
+            "version" : "2.012"
          },
          {
             "class" : "Dist::Zilla::Plugin::PkgVersion",
             "name" : "@RJBS/PkgVersion",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaConfig",
             "name" : "@RJBS/MetaConfig",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaJSON",
             "name" : "@RJBS/MetaJSON",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::NextRelease",
             "name" : "@RJBS/NextRelease",
-            "version" : "4.300005"
+            "version" : "4.300033"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Test::ChangesHasContent",
+            "name" : "@RJBS/Test::ChangesHasContent",
+            "version" : "0.006"
          },
          {
             "class" : "Dist::Zilla::Plugin::PodSyntaxTests",
             "name" : "@RJBS/PodSyntaxTests",
-            "version" : "4.300005"
+            "version" : "4.300033"
+         },
+         {
+            "class" : "Dist::Zilla::Plugin::Test::Compile",
+            "name" : "@RJBS/Test::Compile",
+            "version" : "2.001"
          },
          {
-            "class" : "Dist::Zilla::Plugin::Repository",
-            "name" : "@RJBS/Repository",
-            "version" : "0.18"
+            "class" : "Dist::Zilla::Plugin::ReportVersions::Tiny",
+            "name" : "@RJBS/ReportVersions::Tiny",
+            "version" : "1.08"
          },
          {
             "class" : "Dist::Zilla::Plugin::Prereqs",
@@ -182,7 +203,7 @@
                }
             },
             "name" : "@RJBS/TestMoreWithSubtests",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::PodWeaver",
@@ -197,52 +218,52 @@
          {
             "class" : "Dist::Zilla::Plugin::Git::Check",
             "name" : "@RJBS/@Git/Check",
-            "version" : "1.113560"
+            "version" : "2.012"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Commit",
             "name" : "@RJBS/@Git/Commit",
-            "version" : "1.113560"
+            "version" : "2.012"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Tag",
             "name" : "@RJBS/@Git/Tag",
-            "version" : "1.113560"
+            "version" : "2.012"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Push",
             "name" : "@RJBS/@Git/Push",
-            "version" : "1.113560"
+            "version" : "2.012"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":InstallModules",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":IncModules",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":TestFiles",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":ExecFiles",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":ShareFiles",
-            "version" : "4.300005"
+            "version" : "4.300033"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":MainModule",
-            "version" : "4.300005"
+            "version" : "4.300033"
          }
       ],
       "zilla" : {
@@ -250,7 +271,7 @@
          "config" : {
             "is_trial" : "0"
          },
-         "version" : "4.300005"
+         "version" : "4.300033"
       }
    }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/META.yml 
new/CPAN-Mini-1.111013/META.yml
--- old/CPAN-Mini-1.111008/META.yml     2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/META.yml     2013-04-13 15:03:01.000000000 +0200
@@ -8,13 +8,15 @@
 configure_requires:
   ExtUtils::MakeMaker: 6.30
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 4.300005, CPAN::Meta::Converter version 
2.112621'
+generated_by: 'Dist::Zilla version 4.300033, CPAN::Meta::Converter version 
2.130880'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
   version: 1.4
 name: CPAN-Mini
 requires:
+  CPAN: 0
+  CPANPLUS::Backend: 0
   Carp: 0
   Compress::Zlib: 1.20
   File::Basename: 0
@@ -34,101 +36,111 @@
 resources:
   homepage: https://github.com/rjbs/cpan-mini
   repository: https://github.com/rjbs/cpan-mini.git
-version: 1.111008
+version: 1.111013
 x_Dist_Zilla:
+  perl:
+    version: 5.017010
   plugins:
     -
+      class: Dist::Zilla::Plugin::Git::GatherDir
+      name: '@RJBS/Git::GatherDir'
+      version: 2.012
+    -
       class: Dist::Zilla::Plugin::CheckPrereqsIndexed
       name: '@RJBS/CheckPrereqsIndexed'
-      version: 0.007
+      version: 0.008
     -
-      class: Dist::Zilla::Plugin::GatherDir
-      name: '@RJBS/@Basic/GatherDir'
-      version: 4.300005
+      class: Dist::Zilla::Plugin::CheckExtraTests
+      name: '@RJBS/CheckExtraTests'
+      version: 0.011
     -
       class: Dist::Zilla::Plugin::PruneCruft
-      name: '@RJBS/@Basic/PruneCruft'
-      version: 4.300005
+      name: '@RJBS/@Filter/PruneCruft'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::ManifestSkip
-      name: '@RJBS/@Basic/ManifestSkip'
-      version: 4.300005
+      name: '@RJBS/@Filter/ManifestSkip'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::MetaYAML
-      name: '@RJBS/@Basic/MetaYAML'
-      version: 4.300005
+      name: '@RJBS/@Filter/MetaYAML'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::License
-      name: '@RJBS/@Basic/License'
-      version: 4.300005
+      name: '@RJBS/@Filter/License'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::Readme
-      name: '@RJBS/@Basic/Readme'
-      version: 4.300005
-    -
-      class: Dist::Zilla::Plugin::ExtraTests
-      name: '@RJBS/@Basic/ExtraTests'
-      version: 4.300005
+      name: '@RJBS/@Filter/Readme'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::ExecDir
-      name: '@RJBS/@Basic/ExecDir'
-      version: 4.300005
+      name: '@RJBS/@Filter/ExecDir'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::ShareDir
-      name: '@RJBS/@Basic/ShareDir'
-      version: 4.300005
+      name: '@RJBS/@Filter/ShareDir'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::MakeMaker
-      name: '@RJBS/@Basic/MakeMaker'
-      version: 4.300005
+      name: '@RJBS/@Filter/MakeMaker'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::Manifest
-      name: '@RJBS/@Basic/Manifest'
-      version: 4.300005
+      name: '@RJBS/@Filter/Manifest'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::TestRelease
-      name: '@RJBS/@Basic/TestRelease'
-      version: 4.300005
+      name: '@RJBS/@Filter/TestRelease'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::ConfirmRelease
-      name: '@RJBS/@Basic/ConfirmRelease'
-      version: 4.300005
+      name: '@RJBS/@Filter/ConfirmRelease'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::UploadToCPAN
-      name: '@RJBS/@Basic/UploadToCPAN'
-      version: 4.300005
+      name: '@RJBS/@Filter/UploadToCPAN'
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::AutoPrereqs
       name: '@RJBS/AutoPrereqs'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::Git::NextVersion
       name: '@RJBS/Git::NextVersion'
-      version: 1.113560
+      version: 2.012
     -
       class: Dist::Zilla::Plugin::PkgVersion
       name: '@RJBS/PkgVersion'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::MetaConfig
       name: '@RJBS/MetaConfig'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::MetaJSON
       name: '@RJBS/MetaJSON'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::NextRelease
       name: '@RJBS/NextRelease'
-      version: 4.300005
+      version: 4.300033
+    -
+      class: Dist::Zilla::Plugin::Test::ChangesHasContent
+      name: '@RJBS/Test::ChangesHasContent'
+      version: 0.006
     -
       class: Dist::Zilla::Plugin::PodSyntaxTests
       name: '@RJBS/PodSyntaxTests'
-      version: 4.300005
+      version: 4.300033
     -
-      class: Dist::Zilla::Plugin::Repository
-      name: '@RJBS/Repository'
-      version: 0.18
+      class: Dist::Zilla::Plugin::Test::Compile
+      name: '@RJBS/Test::Compile'
+      version: 2.001
+    -
+      class: Dist::Zilla::Plugin::ReportVersions::Tiny
+      name: '@RJBS/ReportVersions::Tiny'
+      version: 1.08
     -
       class: Dist::Zilla::Plugin::Prereqs
       config:
@@ -136,7 +148,7 @@
           phase: test
           type: requires
       name: '@RJBS/TestMoreWithSubtests'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::PodWeaver
       name: '@RJBS/PodWeaver'
@@ -148,45 +160,45 @@
     -
       class: Dist::Zilla::Plugin::Git::Check
       name: '@RJBS/@Git/Check'
-      version: 1.113560
+      version: 2.012
     -
       class: Dist::Zilla::Plugin::Git::Commit
       name: '@RJBS/@Git/Commit'
-      version: 1.113560
+      version: 2.012
     -
       class: Dist::Zilla::Plugin::Git::Tag
       name: '@RJBS/@Git/Tag'
-      version: 1.113560
+      version: 2.012
     -
       class: Dist::Zilla::Plugin::Git::Push
       name: '@RJBS/@Git/Push'
-      version: 1.113560
+      version: 2.012
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':InstallModules'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':IncModules'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':TestFiles'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':ExecFiles'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':ShareFiles'
-      version: 4.300005
+      version: 4.300033
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':MainModule'
-      version: 4.300005
+      version: 4.300033
   zilla:
     class: Dist::Zilla::Dist::Builder
     config:
       is_trial: 0
-    version: 4.300005
+    version: 4.300033
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/Makefile.PL 
new/CPAN-Mini-1.111013/Makefile.PL
--- old/CPAN-Mini-1.111008/Makefile.PL  2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/Makefile.PL  2013-04-13 15:03:01.000000000 +0200
@@ -11,9 +11,7 @@
 my %WriteMakefileArgs = (
   "ABSTRACT" => "create a minimal mirror of CPAN",
   "AUTHOR" => "Ricardo SIGNES <rjbs\@cpan.org>, Randal Schwartz 
<merlyn\@stonehenge.com>",
-  "BUILD_REQUIRES" => {
-    "Test::More" => "0.96"
-  },
+  "BUILD_REQUIRES" => {},
   "CONFIGURE_REQUIRES" => {
     "ExtUtils::MakeMaker" => "6.30"
   },
@@ -24,6 +22,8 @@
   "LICENSE" => "perl",
   "NAME" => "CPAN::Mini",
   "PREREQ_PM" => {
+    "CPAN" => 0,
+    "CPANPLUS::Backend" => 0,
     "Carp" => 0,
     "Compress::Zlib" => "1.20",
     "File::Basename" => 0,
@@ -40,13 +40,29 @@
     "strict" => 0,
     "warnings" => 0
   },
-  "VERSION" => "1.111008",
+  "TEST_REQUIRES" => {
+    "Test::More" => "0.96"
+  },
+  "VERSION" => "1.111013",
   "test" => {
     "TESTS" => "t/*.t"
   }
 );
 
 
+unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) {
+  my $tr = delete $WriteMakefileArgs{TEST_REQUIRES};
+  my $br = $WriteMakefileArgs{BUILD_REQUIRES};
+  for my $mod ( keys %$tr ) {
+    if ( exists $br->{$mod} ) {
+      $br->{$mod} = $tr->{$mod} if $tr->{$mod} > $br->{$mod};
+    }
+    else {
+      $br->{$mod} = $tr->{$mod};
+    }
+  }
+}
+
 unless ( eval { ExtUtils::MakeMaker->VERSION(6.56) } ) {
   my $br = delete $WriteMakefileArgs{BUILD_REQUIRES};
   my $pp = $WriteMakefileArgs{PREREQ_PM};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/README 
new/CPAN-Mini-1.111013/README
--- old/CPAN-Mini-1.111008/README       2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/README       2013-04-13 15:03:01.000000000 +0200
@@ -1,7 +1,7 @@
 
 
 This archive contains the distribution CPAN-Mini,
-version 1.111008:
+version 1.111013:
 
   create a minimal mirror of CPAN
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/bin/minicpan 
new/CPAN-Mini-1.111013/bin/minicpan
--- old/CPAN-Mini-1.111008/bin/minicpan 2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/bin/minicpan 2013-04-13 15:03:01.000000000 +0200
@@ -7,7 +7,7 @@
 # PODNAME: minicpan
 # ABSTRACT: uses CPAN::Mini to create or update a local mirror
 
-
+__END__
 
 =pod
 
@@ -17,7 +17,7 @@
 
 =head1 VERSION
 
-version 1.111008
+version 1.111013
 
 =head1 SYNOPSIS
 
@@ -40,6 +40,7 @@
    -t SEC      - timeout in sec. Defaults to 180 sec
    --offline   - operate in offline mode (generally: do nothing)
    --log-level - provide a log level; instead of --debug, -q, or -qq
+   --remote-from TYPE - cpan remote from 'cpan' or 'cpanplus' configs
 
 =head1 DESCRIPTION
 
@@ -109,7 +110,3 @@
 the same terms as the Perl 5 programming language system itself.
 
 =cut
-
-
-__END__
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/lib/CPAN/Mini/App.pm 
new/CPAN-Mini-1.111013/lib/CPAN/Mini/App.pm
--- old/CPAN-Mini-1.111008/lib/CPAN/Mini/App.pm 2011-12-23 19:36:47.000000000 
+0100
+++ new/CPAN-Mini-1.111013/lib/CPAN/Mini/App.pm 2013-04-13 15:03:01.000000000 
+0200
@@ -3,7 +3,7 @@
 
 package CPAN::Mini::App;
 {
-  $CPAN::Mini::App::VERSION = '1.111008';
+  $CPAN::Mini::App::VERSION = '1.111013';
 }
 
 # ABSTRACT: the guts of the minicpan command
@@ -46,38 +46,22 @@
 
   my %commandline;
 
-  my ($quiet, $debug, $log_level);
+  my @option_spec = $class->_option_spec();
+  GetOptions(\%commandline, @option_spec) or pod2usage(2);
 
-  GetOptions(
-    'c|class=s'   => \$commandline{class},
-
-    # These two options will cause the program to exit before finishing ->run
-    'h|help'      => sub { pod2usage(1); },
-    'v|version'   => sub { $version = 1 },
-
-    # How noisy should we be?
-    'quiet|q+'    => \$quiet,
-    'qq'          => sub { $quiet = 2 },
-    'debug'       => \$debug,
-    'log-level=s' => \$log_level,
-
-    'l|local=s'   => \$commandline{local},
-    'r|remote=s'  => \$commandline{remote},
-
-    'd|dirmode=s' => \$commandline{dirmode},
-    'offline'     => \$commandline{offline},
-    'f'           => \$commandline{force},
-    'p'           => \$commandline{perl},
-    'x'           => \$commandline{exact_mirror},
-    't|timeout=i' => \$commandline{timeout},
-
-    # Where to look for config not provided on the command line:
-    'C|config=s'  => \$commandline{config_file},
-  ) or pod2usage(2);
+  # These two options will cause the program to exit before finishing ->run
+  pod2usage(1) if $commandline{help};
+  $version = 1 if $commandline{version};
+
+  # How noisy should we be?
+  my $debug     = $commandline{debug};
+  my $log_level = $commandline{log_level};
+  my $quiet     = $commandline{qq} ? 2 : $commandline{quiet};
 
   die "can't mix --debug, --log-level, and --debug\n"
     if defined($quiet) + defined($debug) + defined($log_level) > 1;
 
+  # Set log_level accordingly
   $quiet ||= 0;
   $log_level = $debug      ? 'debug'
              : $quiet == 1 ? 'warn'
@@ -85,8 +69,6 @@
              : $log_level  ? $log_level
              :               undef;
 
-  $class->_validate_log_level($log_level) if defined $log_level;
-
   my %config = CPAN::Mini->read_config({
     log_level => 'info',
     %commandline
@@ -94,46 +76,67 @@
 
   $config{class} ||= 'CPAN::Mini';
 
-  foreach my $key (keys %commandline) {
-    $config{$key} = $commandline{$key} if defined $commandline{$key};
-  }
+  # Override config with commandline options
+  %config = (%config, %commandline);
 
   $config{log_level} = $log_level || $config{log_level} || 'info';
-
   $class->_validate_log_level($config{log_level});
 
   eval "require $config{class}";
   die $@ if $@;
 
   _display_version($config{class}) if $version;
+
+  if ($config{remote_from} && ! $config{remote}) {
+    $config{remote} = $config{class}->remote_from(
+      $config{remote_from},
+      $config{remote},
+      $config{quiet},
+    );
+  }
+
+  $config{remote} ||= 'http://www.cpan.org/';
+
   pod2usage(2) unless $config{local} and $config{remote};
 
   $|++;
-  $config{dirmode} &&= oct($config{dirmode});
 
-  return $config{class}->new(
-    remote         => $config{remote},
-    local          => $config{local},
-    force          => $config{force},
-    offline        => $config{offline},
-    also_mirror    => $config{also_mirror},
-    exact_mirror   => $config{exact_mirror},
-    module_filters => $config{module_filters},
-    path_filters   => $config{path_filters},
-    skip_cleanup   => $config{skip_cleanup},
-    skip_perl      => (not $config{perl}),
-    timeout        => $config{timeout},
-    ignore_source_control => $config{ignore_source_control},
-    (defined $config{dirmode} ? (dirmode => $config{dirmode}) : ()),
+  # Convert dirmode string to a real octal value, if given
+  $config{dirmode} = oct $config{dirmode} if $config{dirmode};
+
+  # Turn the 'perl' option into 'skip_perl', for backward compatibility
+  $config{skip_perl} = not delete $config{perl};
+
+  return $config{class}->new(%config);
+}
 
-    log_level      => $config{log_level},
-  );
+sub _option_spec {
+  return qw<
+    class|c=s
+    help|h
+    version|v
+    quiet|q+
+    qq
+    debug
+    log_level|log-level=s
+    local|l=s
+    remote|r=s
+    dirmode|d=s
+    offline
+    force|f
+    perl
+    exact_mirror|x
+    timeout|t=i
+    config_file|config|C=s
+    remote-from=s
+  >;
 }
 
 
 1;
 
 __END__
+
 =pod
 
 =head1 NAME
@@ -142,7 +145,7 @@
 
 =head1 VERSION
 
-version 1.111008
+version 1.111013
 
 =head1 SYNOPSIS
 
@@ -157,7 +160,7 @@
 This method is called by F<minicpan> to do all the work.  Don't rely on what it
 does just yet.
 
-=head1 SEE ALSO 
+=head1 SEE ALSO
 
 Randal Schwartz's original article, which can be found here:
 
@@ -185,4 +188,3 @@
 the same terms as the Perl 5 programming language system itself.
 
 =cut
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/lib/CPAN/Mini.pm 
new/CPAN-Mini-1.111013/lib/CPAN/Mini.pm
--- old/CPAN-Mini-1.111008/lib/CPAN/Mini.pm     2011-12-23 19:36:47.000000000 
+0100
+++ new/CPAN-Mini-1.111013/lib/CPAN/Mini.pm     2013-04-13 15:03:01.000000000 
+0200
@@ -4,7 +4,7 @@
 
 package CPAN::Mini;
 {
-  $CPAN::Mini::VERSION = '1.111008';
+  $CPAN::Mini::VERSION = '1.111013';
 }
 
 # ABSTRACT: create a minimal mirror of CPAN
@@ -33,10 +33,14 @@
   $self = $self->new(@_) unless ref $self;
 
   unless ($self->{offline}) {
-    $self->log("Updating $self->{local}");
+    my $local = $self->{local};
+
+    $self->log("Updating $local");
     $self->log("Mirroring from $self->{remote}");
     $self->log("=" x 63);
 
+    die "local mirror target $local is not writable" unless -w $local;
+
     # mirrored tracks the already done, keyed by filename
     # 1 = local-checked, 2 = remote-mirrored
     $self->mirror_indices;
@@ -92,12 +96,24 @@
     or die "Cannot open details: $Compress::Zlib::gzerrno";
 
   my $inheader = 1;
+  my $file_ok  = 0;
   while ($gz->gzreadline($_) > 0) {
     if ($inheader) {
-      $inheader = 0 unless /\S/;
+      if (/\S/) {
+        my ($header, $value) = split /:\s*/, $_, 2;
+        chomp $value;
+        $file_ok = 1 if $header eq 'File'
+                    and $value eq '02packages.details.txt';
+      } else {
+        $inheader = 0;
+      }
+
       next;
     }
 
+    die "02packages.details.txt file is not a valid index\n"
+      unless $file_ok;
+
     my ($module, $version, $path) = split;
     next if $self->_filter_module({
       module  => $module,
@@ -330,6 +346,7 @@
     for (@$filter) {
       return 1 if $self->__do_filter($_, $file);
     }
+    return;
   }
 
   if (ref($filter) eq 'CODE') {
@@ -434,7 +451,10 @@
   $_[0]->log_unconditionally($_[1], $_[2]);
 }
 
-sub trace { my $self = shift; $self->log_info(@_); }
+sub trace {
+  my $self = shift;
+  $self->log(@_);
+}
 
 sub log_debug {
   my ($self, @rest) = @_;
@@ -478,24 +498,45 @@
   $class->log("Using config from $config_file")
     if ($options->{log_level}||'info') =~ /\A(?:warn|fatal)\z/;
 
+  substr($config_file, 0, 1, $class->__homedir)
+    if substr($config_file, 0, 1) eq q{~};
+
   return unless -e $config_file;
 
   open my $config_fh, '<', $config_file
     or die "couldn't open config file $config_file: $!";
 
   my %config;
+  my %is_multivalue = map {; $_ => 1 }
+                      qw(also_mirror module_filters path_filters);
+
+  $config{$_} = [] for keys %is_multivalue;
+
   while (<$config_fh>) {
     chomp;
     next if /\A\s*\Z/sm;
-    if (/\A(\w+):\s*(\S.*?)\s*\Z/sm) { $config{$1} = $2; }
+
+    if (/\A(\w+):\s*(\S.*?)\s*\Z/sm) {
+      my ($key, $value) = ($1, $2);
+
+      if ($is_multivalue{ $key }) {
+        push @{ $config{$key} }, split /\s+/, $value;
+      } else {
+        $config{ $key } = $value;
+      }
+    }
   }
 
   for (qw(also_mirror)) {
-    $config{$_} = [ grep { length } split /\s+/, $config{$_} ] if $config{$_};
+    $config{$_} = [ grep { length } @{ $config{$_} } ];
   }
 
   for (qw(module_filters path_filters)) {
-    $config{$_} = [ map { qr/$_/ } split /\s+/, $config{$_} ] if $config{$_};
+    $config{$_} = [ map { qr/$_/ } @{ $config{$_} } ];
+  }
+
+  for (keys %is_multivalue) {
+    delete $config{$_} unless @{ $config{$_} };
   }
 
   return %config;
@@ -527,9 +568,65 @@
 }
 
 
+sub remote_from {
+  my ( $class, $remote_from, $orig_remote, $quiet ) = @_;
+
+  my $method = lc "remote_from_" . $remote_from;
+
+  Carp::croak "unknown remote_from value: $remote_from"
+    unless $class->can($method);
+
+  my $new_remote = $class->$method;
+
+  warn "overriding '$orig_remote' with '$new_remote' via $method\n"
+    if !$quiet && $orig_remote;
+
+  return $new_remote;
+}
+
+
+sub remote_from_cpan {
+  my ($self) = @_;
+
+  Carp::croak "unable find a CPAN, maybe you need to install it"
+    unless eval { require CPAN; 1 };
+
+  CPAN::HandleConfig::require_myconfig_or_config();
+
+  Carp::croak "unable to find mirror list in your CPAN config"
+    unless exists $CPAN::Config->{urllist};
+
+  Carp::croak "unable to find first mirror url in your CPAN config"
+    unless ref( $CPAN::Config->{urllist} ) eq 'ARRAY' && 
$CPAN::Config->{urllist}[0];
+
+  return $CPAN::Config->{urllist}[0];
+}
+
+
+sub remote_from_cpanplus {
+  my ($self) = @_;
+
+  Carp::croak "unable find a CPANPLUS, maybe you need to install it"
+    unless eval { require CPANPLUS::Backend };
+
+  my $cb = CPANPLUS::Backend->new;
+  my $hosts = $cb->configure_object->get_conf('hosts');
+
+  Carp::croak "unable to find mirror list in your CPANPLUS config"
+    unless $hosts;
+
+  Carp::croak "unable to find first mirror in your CPANPLUS config"
+    unless ref($hosts) eq 'ARRAY' && $hosts->[0];
+
+  my $url_parts = $hosts->[0];
+  return $url_parts->{scheme} . "://" . $url_parts->{host} . ( 
$url_parts->{path} || '' );
+}
+
+
 1;
 
 __END__
+
 =pod
 
 =head1 NAME
@@ -538,7 +635,7 @@
 
 =head1 VERSION
 
-version 1.111008
+version 1.111013
 
 =head1 SYNOPSIS
 
@@ -591,7 +688,7 @@
   );
 
 This is the only method that need be called from outside this module.  It will
-update the local mirror with the files from the remote mirror.   
+update the local mirror with the files from the remote mirror.
 
 If called as a class method, C<update_mirror> creates an ephemeral CPAN::Mini
 object on which other methods are called.  That object is used to store mirror
@@ -605,6 +702,20 @@
 
 =item *
 
+C<local>
+
+This is the local file path where the mirror will be written or updated.
+
+=item *
+
+C<remote>
+
+This is the URL of the CPAN mirror from which to work.  A reasonable default
+will be picked by default.  A list of CPAN mirrors can be found at
+L<http://www.cpan.org/SITES.html>
+
+=item *
+
 C<dirmode>
 
 Generally an octal number, this option sets the permissions of created
@@ -742,7 +853,7 @@
 
 This method looks through the local mirror's files.  If it finds a file that
 neither belongs in the mirror nor is allowed (see the C<file_allowed> method),
-C<clean_file> is called on the file. 
+C<clean_file> is called on the file.
 
 If you set C<ignore_source_control> to a true value, then this doesn't clean
 up files that belong to source control systems. Currently this ignores:
@@ -784,15 +895,15 @@
 
 =head2 config_file
 
-  my %config = CPAN::Mini->config_file( { options } );
+  my $config_file = CPAN::Mini->config_file( { options } );
 
 This routine returns the config file name. It first looks at for the
 C<config_file> setting, then the C<CPAN_MINI_CONFIG> environment
 variable, then the default F<~/.minicpanrc>, and finally the
 F<CPAN/Mini/minicpan.conf>. It uses the first defined value it finds.
-If the filename it selects does not exist, it returns the empty list.
+If the filename it selects does not exist, it returns false.
 
-OPTIONS is an optional hash reference of the C<CPAN::Mini> config hash. 
+OPTIONS is an optional hash reference of the C<CPAN::Mini> config hash.
 
 =begin devel
 
@@ -810,6 +921,33 @@
 
 =end devel
 
+=head2 remote_from
+
+  my $remote = CPAN::Mini->remote_from( $remote_from, $orig_remote, $quiet );
+
+This routine take an string argument and turn it into a method
+call to handle to retrieve the a cpan mirror url from a source.
+Currently supported methods:
+
+    cpan     - fetch the first mirror from your CPAN.pm config
+    cpanplus - fetch the first mirror from your CPANPLUS.pm config
+
+=head2 remote_from_cpan
+
+  my $remote = CPAN::Mini->remote_from_cpan;
+
+This routine loads your CPAN.pm config and returns the first mirror in mirror
+list.  You can set this as your default by setting remote_from:cpan in your
+F<.minicpanrc> file.
+
+=head2 remote_from_cpanplus
+
+  my $remote = CPAN::Mini->remote_from_cpanplus;
+
+This routine loads your CPANPLUS.pm config and returns the first mirror in
+mirror list.  You can set this as your default by setting remote_from:cpanplus
+in your F<.minicpanrc> file.
+
 =head1 SEE ALSO
 
 Randal Schwartz's original article on minicpan, here:
@@ -860,4 +998,3 @@
 the same terms as the Perl 5 programming language system itself.
 
 =cut
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/t/00-compile.t 
new/CPAN-Mini-1.111013/t/00-compile.t
--- old/CPAN-Mini-1.111008/t/00-compile.t       1970-01-01 01:00:00.000000000 
+0100
+++ new/CPAN-Mini-1.111013/t/00-compile.t       2013-04-13 15:03:01.000000000 
+0200
@@ -0,0 +1,74 @@
+#!perl
+
+use strict;
+use warnings;
+
+use Test::More;
+
+
+
+use File::Find;
+use File::Temp qw{ tempdir };
+
+my @modules;
+find(
+  sub {
+    return if $File::Find::name !~ /\.pm\z/;
+    my $found = $File::Find::name;
+    $found =~ s{^lib/}{};
+    $found =~ s{[/\\]}{::}g;
+    $found =~ s/\.pm$//;
+    # nothing to skip
+    push @modules, $found;
+  },
+  'lib',
+);
+
+sub _find_scripts {
+    my $dir = shift @_;
+
+    my @found_scripts = ();
+    find(
+      sub {
+        return unless -f;
+        my $found = $File::Find::name;
+        # nothing to skip
+        open my $FH, '<', $_ or do {
+          note( "Unable to open $found in ( $! ), skipping" );
+          return;
+        };
+        my $shebang = <$FH>;
+        return unless $shebang =~ /^#!.*?\bperl\b\s*$/;
+        push @found_scripts, $found;
+      },
+      $dir,
+    );
+
+    return @found_scripts;
+}
+
+my @scripts;
+do { push @scripts, _find_scripts($_) if -d $_ }
+    for qw{ bin script scripts };
+
+my $plan = scalar(@modules) + scalar(@scripts);
+$plan ? (plan tests => $plan) : (plan skip_all => "no tests to run");
+
+{
+    # fake home for cpan-testers
+    # no fake requested ## local $ENV{HOME} = tempdir( CLEANUP => 1 );
+
+    like( qx{ $^X -Ilib -e "require $_; print '$_ ok'" }, qr/^\s*$_ ok/s, "$_ 
loaded ok" )
+        for sort @modules;
+
+    SKIP: {
+        eval "use Test::Script 1.05; 1;";
+        skip "Test::Script needed to test script compilation", 
scalar(@scripts) if $@;
+        foreach my $file ( @scripts ) {
+            my $script = $file;
+            $script =~ s!.*/!!;
+            script_compiles( $file, "$script script compiles" );
+        }
+    }
+
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/t/00-load.t 
new/CPAN-Mini-1.111013/t/00-load.t
--- old/CPAN-Mini-1.111008/t/00-load.t  2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/t/00-load.t  2013-04-13 15:03:01.000000000 +0200
@@ -1,4 +1,4 @@
-#!perl -T
+#!perl
 
 use Test::More tests => 1;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/t/000-report-versions-tiny.t 
new/CPAN-Mini-1.111013/t/000-report-versions-tiny.t
--- old/CPAN-Mini-1.111008/t/000-report-versions-tiny.t 1970-01-01 
01:00:00.000000000 +0100
+++ new/CPAN-Mini-1.111013/t/000-report-versions-tiny.t 2013-04-13 
15:03:01.000000000 +0200
@@ -0,0 +1,90 @@
+use strict;
+use warnings;
+use Test::More 0.88;
+# This is a relatively nice way to avoid Test::NoWarnings breaking our
+# expectations by adding extra tests, without using no_plan.  It also helps
+# avoid any other test module that feels introducing random tests, or even
+# test plans, is a nice idea.
+our $success = 0;
+END { $success && done_testing; }
+
+# List our own version used to generate this
+my $v = "\nGenerated by Dist::Zilla::Plugin::ReportVersions::Tiny v1.08\n";
+
+eval {                     # no excuses!
+    # report our Perl details
+    my $want = '5.006';
+    $v .= "perl: $] (wanted $want) on $^O from $^X\n\n";
+};
+defined($@) and diag("$@");
+
+# Now, our module version dependencies:
+sub pmver {
+    my ($module, $wanted) = @_;
+    $wanted = " (want $wanted)";
+    my $pmver;
+    eval "require $module;";
+    if ($@) {
+        if ($@ =~ m/Can't locate .* in \@INC/) {
+            $pmver = 'module not found.';
+        } else {
+            diag("${module}: $@");
+            $pmver = 'died during require.';
+        }
+    } else {
+        my $version;
+        eval { $version = $module->VERSION; };
+        if ($@) {
+            diag("${module}: $@");
+            $pmver = 'died during VERSION check.';
+        } elsif (defined $version) {
+            $pmver = "$version";
+        } else {
+            $pmver = '<undef>';
+        }
+    }
+
+    # So, we should be good, right?
+    return sprintf('%-45s => %-10s%-15s%s', $module, $pmver, $wanted, "\n");
+}
+
+eval { $v .= pmver('CPAN','any version') };
+eval { $v .= pmver('CPANPLUS::Backend','any version') };
+eval { $v .= pmver('Carp','any version') };
+eval { $v .= pmver('Compress::Zlib','1.20') };
+eval { $v .= pmver('ExtUtils::MakeMaker','6.30') };
+eval { $v .= pmver('File::Basename','any version') };
+eval { $v .= pmver('File::Copy','any version') };
+eval { $v .= pmver('File::Find','any version') };
+eval { $v .= pmver('File::HomeDir','0.57') };
+eval { $v .= pmver('File::Path','2.04') };
+eval { $v .= pmver('File::Spec','any version') };
+eval { $v .= pmver('File::Temp','any version') };
+eval { $v .= pmver('Getopt::Long','any version') };
+eval { $v .= pmver('LWP::UserAgent','5') };
+eval { $v .= pmver('Pod::Usage','1.00') };
+eval { $v .= pmver('Test::More','0.96') };
+eval { $v .= pmver('Test::Pod','1.41') };
+eval { $v .= pmver('URI','1') };
+eval { $v .= pmver('strict','any version') };
+eval { $v .= pmver('version','0.9901') };
+eval { $v .= pmver('warnings','any version') };
+
+
+# All done.
+$v .= <<'EOT';
+
+Thanks for using my code.  I hope it works for you.
+If not, please try and include this output in the bug report.
+That will help me reproduce the issue and solve your problem.
+
+EOT
+
+diag($v);
+ok(1, "we really didn't test anything, just reporting data");
+$success = 1;
+
+# Work around another nasty module on CPAN. :/
+no warnings 'once';
+$Template::Test::NO_FLUSH = 1;
+exit 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/t/app.t 
new/CPAN-Mini-1.111013/t/app.t
--- old/CPAN-Mini-1.111008/t/app.t      2011-12-23 19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/t/app.t      2013-04-13 15:03:01.000000000 +0200
@@ -11,12 +11,17 @@
 
 delete $ENV{CPAN_MINI_CONFIG};
 
+{
+    no warnings 'redefine';
+    *File::HomeDir::my_home = sub { $ENV{HOME} };
+}
+
 sub config_dir {
   my ($config) = @_;
 
   my $tempdir = tempdir(CLEANUP => 1);
 
-  return unless defined $config;
+  return $tempdir unless defined $config;
 
   my $filename = File::Spec->catfile($tempdir, '.minicpanrc');
   open my $config_fh, '>', $filename or die "can't write to $filename: $!";
@@ -105,6 +110,23 @@
   };
 }
 
+
+subtest "-perl switch" => sub {
+
+    local $ENV{HOME} = config_dir;
+    local @ARGV = @LR_ARGS;
+
+    my $minicpan = CPAN::Mini::App->initialize_minicpan;
+    isa_ok($minicpan, 'CPAN::Mini');
+    is($minicpan->{skip_perl}, 1, "'skip_perl' is true without -perl switch");
+
+
+    local @ARGV = ('-perl', @LR_ARGS);
+    $minicpan = CPAN::Mini::App->initialize_minicpan;
+    isa_ok($minicpan, 'CPAN::Mini');
+    is($minicpan->{skip_perl}, q{}, "'skip_perl' is false with -perl switch");
+};
+
 done_testing;
 
 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/t/release-pod-syntax.t 
new/CPAN-Mini-1.111013/t/release-pod-syntax.t
--- old/CPAN-Mini-1.111008/t/release-pod-syntax.t       2011-12-23 
19:36:47.000000000 +0100
+++ new/CPAN-Mini-1.111013/t/release-pod-syntax.t       1970-01-01 
01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-#!perl
-
-BEGIN {
-  unless ($ENV{RELEASE_TESTING}) {
-    require Test::More;
-    Test::More::plan(skip_all => 'these tests are for release candidate 
testing');
-  }
-}
-
-use Test::More;
-
-eval "use Test::Pod 1.41";
-plan skip_all => "Test::Pod 1.41 required for testing POD" if $@;
-
-all_pod_files_ok();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/xt/release/changes_has_content.t 
new/CPAN-Mini-1.111013/xt/release/changes_has_content.t
--- old/CPAN-Mini-1.111008/xt/release/changes_has_content.t     1970-01-01 
01:00:00.000000000 +0100
+++ new/CPAN-Mini-1.111013/xt/release/changes_has_content.t     2013-04-13 
15:03:01.000000000 +0200
@@ -0,0 +1,41 @@
+#!perl
+
+use Test::More tests => 2;
+
+note 'Checking Changes';
+my $changes_file = 'Changes';
+my $newver = '1.111013';
+my $trial_token = '-TRIAL';
+
+SKIP: {
+    ok(-e $changes_file, "$changes_file file exists")
+        or skip 'Changes is missing', 1;
+
+    ok(_get_changes($newver), "$changes_file has content for $newver");
+}
+
+done_testing;
+
+# _get_changes copied and adapted from Dist::Zilla::Plugin::Git::Commit
+# by Jerome Quelin
+sub _get_changes
+{
+    my $newver = shift;
+
+    # parse changelog to find commit message
+    open(my $fh, '<', $changes_file) or die "cannot open $changes_file: $!";
+    my $changelog = join('', <$fh>);
+    close $fh;
+
+    my @content =
+        grep { /^$newver(?:$trial_token)?(?:\s+|$)/ ... /^\S/ } # from newver 
to un-indented
+        split /\n/, $changelog;
+    shift @content; # drop the version line
+
+    # drop unindented last line and trailing blank lines
+    pop @content while ( @content && $content[-1] =~ /^(?:\S|\s*$)/ );
+
+    # return number of non-blank lines
+    return scalar @content;
+}
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CPAN-Mini-1.111008/xt/release/pod-syntax.t 
new/CPAN-Mini-1.111013/xt/release/pod-syntax.t
--- old/CPAN-Mini-1.111008/xt/release/pod-syntax.t      1970-01-01 
01:00:00.000000000 +0100
+++ new/CPAN-Mini-1.111013/xt/release/pod-syntax.t      2013-04-13 
15:03:01.000000000 +0200
@@ -0,0 +1,7 @@
+#!perl
+use Test::More;
+
+eval "use Test::Pod 1.41";
+plan skip_all => "Test::Pod 1.41 required for testing POD" if $@;
+
+all_pod_files_ok();

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to