Hello community,

here is the log from the commit of package perl-Module-Starter for 
openSUSE:Factory checked in at 2020-09-07 21:36:00
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Module-Starter (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Module-Starter.new.3399 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Module-Starter"

Mon Sep  7 21:36:00 2020 rev:16 rq:832734 version:1.77

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Module-Starter/perl-Module-Starter.changes  
2019-03-20 13:18:45.389351638 +0100
+++ 
/work/SRC/openSUSE:Factory/.perl-Module-Starter.new.3399/perl-Module-Starter.changes
        2020-09-07 21:36:12.289404353 +0200
@@ -1,0 +2,6 @@
+Sun Sep  6 03:12:01 UTC 2020 - Tina Müller <timueller+p...@suse.de>
+
+- updated to 1.77
+   see /usr/share/doc/packages/perl-Module-Starter/Changes
+
+-------------------------------------------------------------------

Old:
----
  Module-Starter-1.76.tar.gz

New:
----
  Module-Starter-1.77.tar.gz

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

Other differences:
------------------
++++++ perl-Module-Starter.spec ++++++
--- /var/tmp/diff_new_pack.mv6xIY/_old  2020-09-07 21:36:13.789405048 +0200
+++ /var/tmp/diff_new_pack.mv6xIY/_new  2020-09-07 21:36:13.793405049 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Module-Starter
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,13 +17,13 @@
 
 
 Name:           perl-Module-Starter
-Version:        1.76
+Version:        1.77
 Release:        0
 %define cpan_name Module-Starter
 Summary:        Simple starter kit for any module
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Group:          Development/Libraries/Perl
-Url:            https://metacpan.org/release/%{cpan_name}
+URL:            https://metacpan.org/release/%{cpan_name}
 Source0:        
https://cpan.metacpan.org/authors/id/D/DB/DBOOK/%{cpan_name}-%{version}.tar.gz
 Source1:        cpanspec.yml
 BuildArch:      noarch
@@ -32,10 +32,12 @@
 BuildRequires:  perl-macros
 BuildRequires:  perl(Module::Runtime)
 BuildRequires:  perl(Software::License) >= 0.103005
+BuildRequires:  perl(Test::More) >= 0.94
 BuildRequires:  perl(parent)
 BuildRequires:  perl(version) >= 0.77
 Requires:       perl(Module::Runtime)
 Requires:       perl(Software::License) >= 0.103005
+Requires:       perl(Test::More) >= 0.94
 Requires:       perl(parent)
 Requires:       perl(version) >= 0.77
 %{perl_requires}
@@ -66,7 +68,7 @@
 
 %files -f %{name}.files
 %defattr(-,root,root,755)
-%doc Changes getting-started.html README
+%doc Changes CONTRIBUTING.md getting-started.html prereqs.yml README
 %license LICENSE
 
 %changelog

++++++ Module-Starter-1.76.tar.gz -> Module-Starter-1.77.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/CONTRIBUTING.md 
new/Module-Starter-1.77/CONTRIBUTING.md
--- old/Module-Starter-1.76/CONTRIBUTING.md     1970-01-01 01:00:00.000000000 
+0100
+++ new/Module-Starter-1.77/CONTRIBUTING.md     2020-09-05 23:20:45.000000000 
+0200
@@ -0,0 +1,105 @@
+# HOW TO CONTRIBUTE
+
+Thank you for considering contributing to this distribution.  This file
+contains instructions that will help you work with the source code.
+
+The distribution is managed with 
[Dist::Zilla](https://metacpan.org/pod/Dist::Zilla).
+This means that many of the usual files you might expect are not in the
+repository, but are generated at release time.  Some generated files are kept
+in the repository as a convenience (e.g. Build.PL/Makefile.PL and META.json).
+
+Generally, **you do not need Dist::Zilla to contribute patches**.  You may need
+Dist::Zilla to create a tarball.  See below for guidance.
+
+## Getting dependencies
+
+If you have App::cpanminus 1.6 or later installed, you can use
+[cpanm](https://metacpan.org/pod/cpanm) to satisfy dependencies like this:
+
+    $ cpanm --installdeps --with-develop .
+
+You can also run this command (or any other cpanm command) without installing
+App::cpanminus first, using the fatpacked `cpanm` script via curl or wget:
+
+    $ curl -L https://cpanmin.us | perl - --installdeps --with-develop .
+    $ wget -qO - https://cpanmin.us | perl - --installdeps --with-develop .
+
+Otherwise, look for either a `cpanfile` or `META.json` file for a list of
+dependencies to satisfy.
+
+## Running tests
+
+You can run tests directly using the `prove` tool:
+
+    $ prove -l
+    $ prove -lv t/some_test_file.t
+
+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
+
+Please try to match any existing coding style.  If there is a `.perltidyrc`
+file, please install Perl::Tidy and use perltidy before submitting patches.
+
+## Installing and using Dist::Zilla
+
+[Dist::Zilla](https://metacpan.org/pod/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:
+
+    # 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:
+
+    $ dzil authordeps --missing | cpanm
+
+You can use Dist::Zilla to install the distribution's dependencies if you
+haven't already installed them with cpanm:
+
+    $ dzil listdeps --missing --develop | cpanm
+
+Once everything is installed, here are some dzil commands you might try:
+
+    $ dzil build
+    $ dzil test
+    $ dzil regenerate
+
+You can learn more about Dist::Zilla at http://dzil.org/
+
+## Other notes
+
+This distribution maintains the generated `META.json` and either `Makefile.PL`
+or `Build.PL` in the repository. This allows two things:
+[Travis CI](https://travis-ci.org/) can build and test the distribution without
+requiring Dist::Zilla, and the distribution can be installed directly from
+Github or a local git repository using `cpanm` for testing (again, not
+requiring Dist::Zilla).
+
+    $ cpanm git://github.com/Author/Distribution-Name.git
+    $ cd Distribution-Name; cpanm .
+
+Contributions are preferred in the form of a Github pull request. See
+[Using pull requests](https://help.github.com/articles/using-pull-requests/)
+for further information. You can use the Github issue tracker to report issues
+without an accompanying patch.
+
+# CREDITS
+
+This file was adapted from an initial `CONTRIBUTING.mkdn` file from David
+Golden under the terms of the Apache 2 license, with inspiration from the
+contributing documents from 
[Dist::Zilla::Plugin::Author::KENTNL::CONTRIBUTING](https://metacpan.org/pod/Dist::Zilla::Plugin::Author::KENTNL::CONTRIBUTING)
+and 
[Dist::Zilla::PluginBundle::Author::ETHER](https://metacpan.org/pod/Dist::Zilla::PluginBundle::Author::ETHER).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/Changes 
new/Module-Starter-1.77/Changes
--- old/Module-Starter-1.76/Changes     2019-03-11 19:49:22.000000000 +0100
+++ new/Module-Starter-1.77/Changes     2020-09-05 23:20:45.000000000 +0200
@@ -1,5 +1,11 @@
 Revision history for Perl extension Module::Starter
 
+1.77      2020-09-05 17:20:43 EDT
+        * Replace usage of ExtUtils::Command with File::Path
+        * Clean up test file shebangs and remove pointless -T
+        * GH#76: Remove references to AnnoCPAN from default module templates
+        * GH#72: Convert distribution tooling to Dist::Zilla
+
 1.76    Mon Mar 11 14:49:14 EDT 2019
         * GH#68: Default module templates will now use test_requires where 
appropriate (Dan Book)
         * GH#70: License metadata and blurbs are now handled by 
Software::License (Dan Book)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/LICENSE 
new/Module-Starter-1.77/LICENSE
--- old/Module-Starter-1.76/LICENSE     2017-03-31 18:54:53.000000000 +0200
+++ new/Module-Starter-1.77/LICENSE     2020-09-05 23:20:45.000000000 +0200
@@ -1,3 +1,8 @@
+This software is copyright (c) 2005 by Andy Lester, Ricardo Signes and C.J. 
Adams-Collier.
+
+This is free software; you can redistribute it and/or modify it under
+the same terms as the Perl 5 programming language system itself.
+
 Terms of the Perl programming language system itself
 
 a) the GNU General Public License as published by the Free
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/MANIFEST 
new/Module-Starter-1.77/MANIFEST
--- old/Module-Starter-1.76/MANIFEST    2019-03-11 19:50:37.000000000 +0100
+++ new/Module-Starter-1.77/MANIFEST    2020-09-05 23:20:45.000000000 +0200
@@ -1,5 +1,14 @@
-bin/module-starter
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest 
v6.015.
+CONTRIBUTING.md
 Changes
+LICENSE
+MANIFEST
+META.json
+META.yml
+Makefile.PL
+README
+bin/module-starter
+dist.ini
 getting-started.html
 lib/Module/Starter.pm
 lib/Module/Starter/App.pm
@@ -7,12 +16,10 @@
 lib/Module/Starter/Plugin.pod
 lib/Module/Starter/Plugin/Template.pm
 lib/Module/Starter/Simple.pm
-LICENSE
-Makefile.PL
-MANIFEST
-perlcriticrc
-README
-t/00-load.t
+perlcritic.rc
+prereqs.yml
+t/00-report-prereqs.dd
+t/00-report-prereqs.t
 t/BuilderSet.t
 t/data/templates/Build.PL
 t/data/templates/Changes
@@ -25,8 +32,8 @@
 t/data/templates/t/pod.t
 t/lib/Module/Starter/TestPlugin.pm
 t/module-starter.t
-t/pod-coverage.t
-t/pod.t
 t/test-dist.t
-META.yml                                 Module YAML meta-data (added by 
MakeMaker)
-META.json                                Module JSON meta-data (added by 
MakeMaker)
+xt/author/00-compile.t
+xt/author/critic.t
+xt/author/pod-coverage.t
+xt/author/pod-syntax.t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/META.json 
new/Module-Starter-1.77/META.json
--- old/Module-Starter-1.76/META.json   2019-03-11 19:50:37.000000000 +0100
+++ new/Module-Starter-1.77/META.json   2020-09-05 23:20:45.000000000 +0200
@@ -4,7 +4,7 @@
       "Andy Lester <a...@petdance.com>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter 
version 2.150010",
+   "generated_by" : "Dist::Zilla version 6.015, CPAN::Meta::Converter version 
2.150010",
    "license" : [
       "perl_5"
    ],
@@ -15,35 +15,78 @@
    "name" : "Module-Starter",
    "no_index" : {
       "directory" : [
+         "eg",
+         "examples",
+         "inc",
+         "share",
          "t",
-         "inc"
+         "xt"
       ]
    },
    "prereqs" : {
-      "build" : {
+      "configure" : {
          "requires" : {
             "ExtUtils::MakeMaker" : "0"
          }
       },
-      "configure" : {
+      "develop" : {
          "requires" : {
-            "ExtUtils::MakeMaker" : "0"
+            "File::Spec" : "0",
+            "IO::Handle" : "0",
+            "IPC::Open3" : "0",
+            "Pod::Coverage::TrustPod" : "0",
+            "Test::More" : "0",
+            "Test::Perl::Critic" : "0",
+            "Test::Pod" : "1.41",
+            "Test::Pod::Coverage" : "1.08"
          }
       },
       "runtime" : {
          "requires" : {
-            "ExtUtils::Command" : "0",
+            "File::Path" : "0",
             "File::Spec" : "0",
             "Getopt::Long" : "0",
             "Module::Runtime" : "0",
             "Pod::Usage" : "1.21",
             "Software::License" : "0.103005",
             "Test::Harness" : "0.21",
-            "Test::More" : "0",
+            "Test::More" : "0.94",
             "parent" : "0",
             "perl" : "5.006001",
             "version" : "0.77"
          }
+      },
+      "test" : {
+         "recommends" : {
+            "CPAN::Meta" : "2.120900"
+         },
+         "requires" : {
+            "ExtUtils::MakeMaker" : "0",
+            "File::Spec" : "0",
+            "Test::More" : "0.94"
+         }
+      }
+   },
+   "provides" : {
+      "Module::Starter" : {
+         "file" : "lib/Module/Starter.pm",
+         "version" : "1.77"
+      },
+      "Module::Starter::App" : {
+         "file" : "lib/Module/Starter/App.pm",
+         "version" : "1.77"
+      },
+      "Module::Starter::BuilderSet" : {
+         "file" : "lib/Module/Starter/BuilderSet.pm",
+         "version" : "1.77"
+      },
+      "Module::Starter::Plugin::Template" : {
+         "file" : "lib/Module/Starter/Plugin/Template.pm",
+         "version" : "1.77"
+      },
+      "Module::Starter::Simple" : {
+         "file" : "lib/Module/Starter/Simple.pm",
+         "version" : "1.77"
       }
    },
    "release_status" : "stable",
@@ -59,6 +102,36 @@
       },
       "x_IRC" : "irc://irc.perl.org/#toolchain"
    },
-   "version" : "1.76",
-   "x_serialization_backend" : "JSON::PP version 4.02"
+   "version" : "1.77",
+   "x_contributors" : [
+      "Brendan Byrd <byr...@insightcom.com>",
+      "Brian Manning <c...@xaoc.org>",
+      "Chas. J. Owens IV <chas.ow...@gmail.com>",
+      "cjcollier <cjcollier@bb7b6759-d628-0410-895d-7b6b7dc49dde>",
+      "Colin Ewen <co...@draecas.com>",
+      "Dan Book <gri...@gmail.com>",
+      "Dan Book <gri...@grinnz.com>",
+      "David Pottage <da...@chrestomanci.org>",
+      "David.Pottage <d.pott...@cv-library.co.uk>",
+      "David Steinbrunner <dsteinbrun...@pobox.com>",
+      "Diab Jerius <djer...@cpan.org>",
+      "Guillermo O. Freschi <ked...@gmail.com>",
+      "hobbestigrou <hobbestig...@erakis.eu>",
+      "Ivan Bessarabov <i...@bessarabov.ru>",
+      "Karen Etheridge <et...@cpan.org>",
+      "MartinMcGrath <mcgrath.mar...@gmail.com>",
+      "Pedro Figueiredo <pedro.figueir...@playfish.com>",
+      "petdance <petdance@bb7b6759-d628-0410-895d-7b6b7dc49dde>",
+      "Richard Poole <rich...@2ndquadrant.com>",
+      "rsignes <rsignes@bb7b6759-d628-0410-895d-7b6b7dc49dde>",
+      "sawyer <sawyer@dungeon.(none)>",
+      "Sawyer X <xsawy...@cpan.org>",
+      "Shlomi Fish <shlo...@iglu.org.il>",
+      "xdaveg <xdaveg@bb7b6759-d628-0410-895d-7b6b7dc49dde>",
+      "xsawyerx <xsawyerx@bb7b6759-d628-0410-895d-7b6b7dc49dde>"
+   ],
+   "x_generated_by_perl" : "v5.30.2",
+   "x_serialization_backend" : "Cpanel::JSON::XS version 4.19",
+   "x_spdx_expression" : "Artistic-1.0-Perl OR GPL-1.0-or-later"
 }
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/META.yml 
new/Module-Starter-1.77/META.yml
--- old/Module-Starter-1.76/META.yml    2019-03-11 19:50:37.000000000 +0100
+++ new/Module-Starter-1.77/META.yml    2020-09-05 23:20:45.000000000 +0200
@@ -4,10 +4,12 @@
   - 'Andy Lester <a...@petdance.com>'
 build_requires:
   ExtUtils::MakeMaker: '0'
+  File::Spec: '0'
+  Test::More: '0.94'
 configure_requires:
   ExtUtils::MakeMaker: '0'
 dynamic_config: 0
-generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 
2.150010'
+generated_by: 'Dist::Zilla version 6.015, CPAN::Meta::Converter version 
2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -15,17 +17,37 @@
 name: Module-Starter
 no_index:
   directory:
-    - t
+    - eg
+    - examples
     - inc
+    - share
+    - t
+    - xt
+provides:
+  Module::Starter:
+    file: lib/Module/Starter.pm
+    version: '1.77'
+  Module::Starter::App:
+    file: lib/Module/Starter/App.pm
+    version: '1.77'
+  Module::Starter::BuilderSet:
+    file: lib/Module/Starter/BuilderSet.pm
+    version: '1.77'
+  Module::Starter::Plugin::Template:
+    file: lib/Module/Starter/Plugin/Template.pm
+    version: '1.77'
+  Module::Starter::Simple:
+    file: lib/Module/Starter/Simple.pm
+    version: '1.77'
 requires:
-  ExtUtils::Command: '0'
+  File::Path: '0'
   File::Spec: '0'
   Getopt::Long: '0'
   Module::Runtime: '0'
   Pod::Usage: '1.21'
   Software::License: '0.103005'
   Test::Harness: '0.21'
-  Test::More: '0'
+  Test::More: '0.94'
   parent: '0'
   perl: '5.006001'
   version: '0.77'
@@ -34,5 +56,33 @@
   bugtracker: https://github.com/xsawyerx/module-starter/issues
   homepage: https://github.com/xsawyerx/module-starter
   repository: https://github.com/xsawyerx/module-starter.git
-version: '1.76'
-x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
+version: '1.77'
+x_contributors:
+  - 'Brendan Byrd <byr...@insightcom.com>'
+  - 'Brian Manning <c...@xaoc.org>'
+  - 'Chas. J. Owens IV <chas.ow...@gmail.com>'
+  - 'cjcollier <cjcollier@bb7b6759-d628-0410-895d-7b6b7dc49dde>'
+  - 'Colin Ewen <co...@draecas.com>'
+  - 'Dan Book <gri...@gmail.com>'
+  - 'Dan Book <gri...@grinnz.com>'
+  - 'David Pottage <da...@chrestomanci.org>'
+  - 'David.Pottage <d.pott...@cv-library.co.uk>'
+  - 'David Steinbrunner <dsteinbrun...@pobox.com>'
+  - 'Diab Jerius <djer...@cpan.org>'
+  - 'Guillermo O. Freschi <ked...@gmail.com>'
+  - 'hobbestigrou <hobbestig...@erakis.eu>'
+  - 'Ivan Bessarabov <i...@bessarabov.ru>'
+  - 'Karen Etheridge <et...@cpan.org>'
+  - 'MartinMcGrath <mcgrath.mar...@gmail.com>'
+  - 'Pedro Figueiredo <pedro.figueir...@playfish.com>'
+  - 'petdance <petdance@bb7b6759-d628-0410-895d-7b6b7dc49dde>'
+  - 'Richard Poole <rich...@2ndquadrant.com>'
+  - 'rsignes <rsignes@bb7b6759-d628-0410-895d-7b6b7dc49dde>'
+  - 'sawyer <sawyer@dungeon.(none)>'
+  - 'Sawyer X <xsawy...@cpan.org>'
+  - 'Shlomi Fish <shlo...@iglu.org.il>'
+  - 'xdaveg <xdaveg@bb7b6759-d628-0410-895d-7b6b7dc49dde>'
+  - 'xsawyerx <xsawyerx@bb7b6759-d628-0410-895d-7b6b7dc49dde>'
+x_generated_by_perl: v5.30.2
+x_serialization_backend: 'YAML::Tiny version 1.73'
+x_spdx_expression: 'Artistic-1.0-Perl OR GPL-1.0-or-later'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/Makefile.PL 
new/Module-Starter-1.77/Makefile.PL
--- old/Module-Starter-1.76/Makefile.PL 2019-03-11 19:42:19.000000000 +0100
+++ new/Module-Starter-1.77/Makefile.PL 2020-09-05 23:20:45.000000000 +0200
@@ -1,63 +1,68 @@
-# vi:et:sw=4 softtabstop=4
+# This Makefile.PL for Module-Starter was generated by
+# Dist::Zilla::Plugin::MakeMaker::Awesome 0.48.
+# Don't edit it but the dist.ini and plugins used to construct it.
+
 use strict;
 use warnings;
-use 5.006001;
+
 use ExtUtils::MakeMaker;
 
-WriteMakefile(
-    NAME                => 'Module::Starter',
-    AUTHOR              => 'Andy Lester <a...@petdance.com>',
-    VERSION_FROM        => 'lib/Module/Starter.pm',
-    (eval { ExtUtils::MakeMaker->VERSION('6.21') } ? (LICENSE => 'perl') : ()),
-    (eval { ExtUtils::MakeMaker->VERSION('6.48') } ? (MIN_PERL_VERSION => 
'5.6.1') : ()),
-    ABSTRACT_FROM       => 'lib/Module/Starter.pm',
-    EXE_FILES           => [ 'bin/module-starter' ],
-    PREREQ_PM => {
-        'Test::More'                   => '0',
-        'Test::Harness'                => '0.21',
-        'ExtUtils::Command'            => '0',
-        'File::Spec'                   => '0',
-        'Getopt::Long'                 => '0',
-        'Module::Runtime'              => '0',
-        'Pod::Usage'                   => '1.21',
-        'parent'                       => '0',
-        'Software::License'            => '0.103005',
-        'version'                      => '0.77',
-    },
-    (! eval { ExtUtils::MakeMaker->VERSION('6.46') } ? () :
-        (META_MERGE => {
-            dynamic_config => 0,
-            'meta-spec'    => { version => 2 },
-            resources      => {
-                homepage   => 'https://github.com/xsawyerx/module-starter',
-                repository => {
-                    type => 'git',
-                    url  => 'https://github.com/xsawyerx/module-starter.git',
-                    web  => 'https://github.com/xsawyerx/module-starter',
-                },
-                bugtracker => { web => 
'https://github.com/xsawyerx/module-starter/issues' },
-                x_IRC      => 'irc://irc.perl.org/#toolchain',
-            },
-        })
-    ),
-    dist                => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
-    clean               => { FILES => 'Module-Starter-*' },
+my %WriteMakefileArgs = (
+  "ABSTRACT" => "a simple starter kit for any module",
+  "AUTHOR" => "Andy Lester <andy\@petdance.com>",
+  "CONFIGURE_REQUIRES" => {
+    "ExtUtils::MakeMaker" => 0
+  },
+  "DISTNAME" => "Module-Starter",
+  "EXE_FILES" => [
+    "bin/module-starter"
+  ],
+  "LICENSE" => "perl",
+  "NAME" => "Module::Starter",
+  "PREREQ_PM" => {
+    "File::Path" => 0,
+    "File::Spec" => 0,
+    "Getopt::Long" => 0,
+    "Module::Runtime" => 0,
+    "Pod::Usage" => "1.21",
+    "Software::License" => "0.103005",
+    "Test::Harness" => "0.21",
+    "Test::More" => "0.94",
+    "parent" => 0,
+    "version" => "0.77"
+  },
+  "TEST_REQUIRES" => {
+    "ExtUtils::MakeMaker" => 0,
+    "File::Spec" => 0,
+    "Test::More" => "0.94"
+  },
+  "VERSION" => "1.77",
+  "test" => {
+    "TESTS" => "t/*.t"
+  }
 );
 
-sub MY::postamble {
-    my $postamble = <<'MAKE_FRAG';
-.PHONY: tags critic
-
-tags:
-       ctags -f tags --recurse --totals \
-               --exclude=blib \
-               --exclude=.svn \
-               --exclude='*~' \
-               --languages=Perl --langmap=Perl:+.t \
-
-critic:
-       perlcritic -verbose "%f: [%p] %m at line %l, near '%r'.  (Severity: 
%s)\n" -q -profile perlcriticrc lib/ bin/ t/
-MAKE_FRAG
+my %FallbackPrereqs = (
+  "ExtUtils::MakeMaker" => 0,
+  "File::Path" => 0,
+  "File::Spec" => 0,
+  "Getopt::Long" => 0,
+  "Module::Runtime" => 0,
+  "Pod::Usage" => "1.21",
+  "Software::License" => "0.103005",
+  "Test::Harness" => "0.21",
+  "Test::More" => "0.94",
+  "parent" => 0,
+  "version" => "0.77"
+);
 
-    return $postamble;
+unless ( eval { ExtUtils::MakeMaker->VERSION('6.63_03') } ) {
+  delete $WriteMakefileArgs{TEST_REQUIRES};
+  delete $WriteMakefileArgs{BUILD_REQUIRES};
+  $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs;
 }
+
+delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
+  unless eval { ExtUtils::MakeMaker->VERSION(6.52) };
+
+WriteMakefile(%WriteMakefileArgs);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/README 
new/Module-Starter-1.77/README
--- old/Module-Starter-1.76/README      2017-03-23 02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/README      2020-09-05 23:20:45.000000000 +0200
@@ -8,6 +8,10 @@
     Module::Starter, and Module::Starter::Simple.
 
 AUTHORS
+    Dan Book, "<db...@cpan.org>"
+
+    Sawyer X, "<xsawy...@cpan.org>"
+
     Andy Lester, "<petda...@cpan.org>"
 
     Ricardo Signes, "<r...@cpan.org>"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/bin/module-starter 
new/Module-Starter-1.77/bin/module-starter
--- old/Module-Starter-1.76/bin/module-starter  2019-03-11 19:42:19.000000000 
+0100
+++ new/Module-Starter-1.77/bin/module-starter  2020-09-05 23:20:45.000000000 
+0200
@@ -1,9 +1,13 @@
-#!/usr/bin/perl -w
+#!/usr/bin/perl
 
 =head1 NAME
 
 module-starter - creates a skeleton module distribution
 
+=head1 VERSION
+
+version 1.77
+
 =cut
 
 use warnings;
@@ -11,6 +15,8 @@
 
 use Module::Starter::App;
 
+our $VERSION = '1.77';
+
 Module::Starter::App->run;
 
 =head1 SYNOPSIS
@@ -51,8 +57,8 @@
     perl, artistic, artistic2, mit, mozilla, mozilla2, bsd, freebsd, cc0,
     gpl, lgpl, gpl3, lgpl3, agpl3, apache, qpl
 
-You may also specify any Software::License subclass or CPAN::Meta::Spec license
-string.
+You may also specify any L<Software::License> subclass or
+L<CPAN Meta Spec license string|CPAN::Meta::Spec/license>.
 
 Available Ignore Types:
 
@@ -102,4 +108,3 @@
 should remain valid.
 
 =cut
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/dist.ini 
new/Module-Starter-1.77/dist.ini
--- old/Module-Starter-1.76/dist.ini    1970-01-01 01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/dist.ini    2020-09-05 23:20:45.000000000 +0200
@@ -0,0 +1,32 @@
+name    = Module-Starter
+author  = Andy Lester <a...@petdance.com>
+license = Perl_5
+copyright_holder = Andy Lester, Ricardo Signes and C.J. Adams-Collier
+copyright_year   = 2005
+
+[CheckChangesHasContent]
+
+[@Starter::Git]
+revision = 4
+installer = MakeMaker::Awesome
+managed_versions = 1
+regenerate = LICENSE
+regenerate = Makefile.PL
+regenerate = META.json
+BumpVersionAfterRelease.munge_makefile_pl = 0
+MakeMaker::Awesome.test_file = t/*.t
+-remove = Pod2Readme
+
+[PodCoverageTests]
+[Test::Perl::Critic]
+
+[PodVersion]
+
+[GithubMeta]
+issues = 1
+user = xsawyerx
+
+[PrereqsFile]
+[Git::Contributors]
+[MetaResources]
+x_IRC = irc://irc.perl.org/#toolchain
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/lib/Module/Starter/App.pm 
new/Module-Starter-1.77/lib/Module/Starter/App.pm
--- old/Module-Starter-1.76/lib/Module/Starter/App.pm   2019-03-11 
19:48:14.000000000 +0100
+++ new/Module-Starter-1.77/lib/Module/Starter/App.pm   2020-09-05 
23:20:45.000000000 +0200
@@ -4,12 +4,16 @@
 
 Module::Starter::App - the code behind the command line program
 
+=head1 VERSION
+
+version 1.77
+
 =cut
 
 use warnings;
 use strict;
 
-our $VERSION = '1.76';
+our $VERSION = '1.77';
 
 use File::Spec;
 use Getopt::Long;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/lib/Module/Starter/BuilderSet.pm 
new/Module-Starter-1.77/lib/Module/Starter/BuilderSet.pm
--- old/Module-Starter-1.76/lib/Module/Starter/BuilderSet.pm    2019-03-11 
19:48:36.000000000 +0100
+++ new/Module-Starter-1.77/lib/Module/Starter/BuilderSet.pm    2020-09-05 
23:20:45.000000000 +0200
@@ -11,11 +11,11 @@
 
 =head1 VERSION
 
-Version 1.76
+version 1.77
 
 =cut
 
-our $VERSION = '1.76';
+our $VERSION = '1.77';
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Module-Starter-1.76/lib/Module/Starter/Plugin/Template.pm 
new/Module-Starter-1.77/lib/Module/Starter/Plugin/Template.pm
--- old/Module-Starter-1.76/lib/Module/Starter/Plugin/Template.pm       
2019-03-11 19:48:53.000000000 +0100
+++ new/Module-Starter-1.77/lib/Module/Starter/Plugin/Template.pm       
2020-09-05 23:20:45.000000000 +0200
@@ -10,11 +10,11 @@
 
 =head1 VERSION
 
-Version 1.76
+version 1.77
 
 =cut
 
-our $VERSION = '1.76';
+our $VERSION = '1.77';
 
 =head1 SYNOPSIS
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/lib/Module/Starter/Plugin.pod 
new/Module-Starter-1.77/lib/Module/Starter/Plugin.pod
--- old/Module-Starter-1.76/lib/Module/Starter/Plugin.pod       2017-03-23 
02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/lib/Module/Starter/Plugin.pod       2020-09-05 
23:20:45.000000000 +0200
@@ -4,6 +4,10 @@
 
 Module::Starter::Plugin -- how Module::Starter plugins work
 
+=head1 VERSION
+
+version 1.77
+
 =head1 DESCRIPTION
 
 This document is a guide to writing plugins for Module::Starter.  Currently, as
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/lib/Module/Starter/Simple.pm 
new/Module-Starter-1.77/lib/Module/Starter/Simple.pm
--- old/Module-Starter-1.76/lib/Module/Starter/Simple.pm        2019-03-11 
19:48:44.000000000 +0100
+++ new/Module-Starter-1.77/lib/Module/Starter/Simple.pm        2020-09-05 
23:20:45.000000000 +0200
@@ -5,7 +5,7 @@
 use warnings;
 
 use Cwd 'cwd';
-use ExtUtils::Command qw( rm_rf mkpath touch );
+use File::Path qw( make_path remove_tree );
 use File::Spec ();
 use Carp qw( carp confess croak );
 use Module::Runtime qw( require_module );
@@ -18,11 +18,11 @@
 
 =head1 VERSION
 
-Version 1.76
+version 1.77
 
 =cut
 
-our $VERSION = '1.76';
+our $VERSION = '1.77';
 
 =head1 SYNOPSIS
 
@@ -177,8 +177,7 @@
              "Use --force if you want to stomp on it.\n"
             ) unless $self->{force};
 
-        local @ARGV = $self->{basedir};
-        rm_rf();
+        remove_tree $self->{basedir};
 
         die "Couldn't delete existing $self->{basedir}: $!\n"
           if -e $self->{basedir};
@@ -187,8 +186,7 @@
     CREATE_IT: {
         $self->progress( "Created $self->{basedir}" );
 
-        local @ARGV = $self->{basedir};
-        mkpath();
+        make_path $self->{basedir};
 
         die "Couldn't create $self->{basedir}: $!\n" unless -d 
$self->{basedir};
     }
@@ -295,8 +293,7 @@
     if ( @dirparts ) {
         my $dir = File::Spec->catdir( @dirparts );
         if ( not -d $dir ) {
-            local @ARGV = $dir;
-            mkpath @ARGV;
+            make_path $dir;
             $self->progress( "Created $dir" );
         }
     }
@@ -332,10 +329,6 @@
         title    => 'CPAN\'s request tracker (report bugs here)',
         link     => 'https://rt.cpan.org/NoAuth/Bugs.html?Dist=%s',
       },
-      { nickname => 'AnnoCPAN',
-        title    => 'Annotated CPAN documentation',
-        link     => 'http://annocpan.org/dist/%s',
-      },
       { title    => 'CPAN Ratings',
         link     => 'https://cpanratings.perl.org/d/%s',
       },
@@ -807,7 +800,7 @@
     my $warnings = sprintf 'warnings%s;', ($self->{fatalize} ? " FATAL => 
'all'" : '');
 
     my $header = <<"EOH";
-#!perl -T
+#!perl
 use $minperl;
 use strict;
 use $warnings
@@ -899,7 +892,7 @@
     my $warnings = sprintf 'warnings%s;', ($self->{fatalize} ? " FATAL => 
'all'" : '');
 
     my $header = <<"EOH";
-#!perl -T
+#!perl
 use $minperl;
 use strict;
 use $warnings
@@ -977,8 +970,7 @@
     my @dirparts = ( $self->{basedir}, $directory );
     my $tdir = File::Spec->catdir( @dirparts );
     if ( not -d $tdir ) {
-        local @ARGV = $tdir;
-        mkpath();
+        make_path $tdir;
         $self->progress( "Created $tdir" );
     }
 
@@ -1338,6 +1330,8 @@
 
 =head1 AUTHOR
 
+Dan Book, L<< <db...@cpan.org> >>
+
 Sawyer X, C<< <xsawy...@cpan.org> >>
 
 Andy Lester, C<< <a...@petdance.com> >>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/lib/Module/Starter.pm 
new/Module-Starter-1.77/lib/Module/Starter.pm
--- old/Module-Starter-1.76/lib/Module/Starter.pm       2019-03-11 
19:48:28.000000000 +0100
+++ new/Module-Starter-1.77/lib/Module/Starter.pm       2020-09-05 
23:20:45.000000000 +0200
@@ -11,15 +11,15 @@
 
 =head1 VERSION
 
-Version 1.76
+version 1.77
 
 =cut
 
-our $VERSION = '1.76';
+our $VERSION = '1.77';
 
 =head1 SYNOPSIS
 
-Nothing in here is meant for public consumption.  Use F<module-starter>
+Nothing in here is meant for public consumption.  Use L<module-starter>
 from the command line.
 
     module-starter --module=Foo::Bar,Foo::Bat \
@@ -112,6 +112,8 @@
 
 =head1 AUTHORS
 
+Dan Book, C<< <dbook at cpan.org> >>
+
 Sawyer X, C<< <xsawyerx at cpan.org> >>
 
 Andy Lester, C<< <petdance at cpan.org> >>
@@ -134,10 +136,6 @@
 
 L<https://github.com/xsawyerx/module-starter>
 
-=item * AnnoCPAN: Annotated CPAN documentation
-
-L<http://annocpan.org/dist/Module-Starter>
-
 =item * CPAN Ratings
 
 L<http://cpanratings.perl.org/dist/Module-Starter>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/perlcritic.rc 
new/Module-Starter-1.77/perlcritic.rc
--- old/Module-Starter-1.76/perlcritic.rc       1970-01-01 01:00:00.000000000 
+0100
+++ new/Module-Starter-1.77/perlcritic.rc       2020-09-05 23:20:45.000000000 
+0200
@@ -0,0 +1,27 @@
+[-CodeLayout::ProhibitParensWithBuiltins]
+[CodeLayout::ProhibitHardTabs]
+allow_leading_tabs = 0
+
+[-ControlStructures::ProhibitPostfixControls]
+
+[-Documentation::RequirePodAtEnd]
+[-Documentation::RequirePodSections]
+
+[-InputOutput::ProhibitInteractiveTest]
+[-InputOutput::ProhibitBacktickOperators]
+
+[-Miscellanea::RequireRcsKeywords]
+
+[-Modules::RequireVersionVar]
+
+[-NamingConventions::ProhibitMixedCaseSubs]
+
+[-RegularExpressions::RequireExtendedFormatting]
+[-RegularExpressions::RequireLineBoundaryMatching]
+
+[-ValuesAndExpressions::ProhibitEmptyQuotes]
+
+[-Variables::ProhibitPunctuationVars]
+[-BuiltinFunctions::ProhibitStringyEval]
+
+[-Subroutines::ProhibitExplicitReturnUndef]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/perlcriticrc 
new/Module-Starter-1.77/perlcriticrc
--- old/Module-Starter-1.76/perlcriticrc        2017-03-23 02:54:43.000000000 
+0100
+++ new/Module-Starter-1.77/perlcriticrc        1970-01-01 01:00:00.000000000 
+0100
@@ -1,25 +0,0 @@
-[-CodeLayout::ProhibitParensWithBuiltins]
-[CodeLayout::ProhibitHardTabs]
-allow_leading_tabs = 0
-
-[-ControlStructures::ProhibitPostfixControls]
-
-[-Documentation::RequirePodAtEnd]
-[-Documentation::RequirePodSections]
-
-[-InputOutput::ProhibitInteractiveTest]
-[-InputOutput::ProhibitBacktickOperators]
-
-[-Miscellanea::RequireRcsKeywords]
-
-[-Modules::RequireVersionVar]
-
-[-NamingConventions::ProhibitMixedCaseSubs]
-
-[-RegularExpressions::RequireExtendedFormatting]
-[-RegularExpressions::RequireLineBoundaryMatching]
-
-[-ValuesAndExpressions::ProhibitEmptyQuotes]
-
-[-Variables::ProhibitPunctuationVars]
-[-BuiltinFunctions::ProhibitStringyEval]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/prereqs.yml 
new/Module-Starter-1.77/prereqs.yml
--- old/Module-Starter-1.76/prereqs.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/prereqs.yml 2020-09-05 23:20:45.000000000 +0200
@@ -0,0 +1,13 @@
+runtime:
+  requires:
+    perl: '5.006001'
+    Test::More: '0.94'
+    Test::Harness: '0.21'
+    File::Path: 0
+    File::Spec: 0
+    Getopt::Long: 0
+    Module::Runtime: 0
+    Pod::Usage: '1.21'
+    parent: 0
+    Software::License: '0.103005'
+    version: '0.77'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/00-load.t 
new/Module-Starter-1.77/t/00-load.t
--- old/Module-Starter-1.76/t/00-load.t 2017-03-23 02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/00-load.t 1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-#!perl -T
-
-use strict;
-use warnings;
-
-use Test::More tests => 4;
-
-use_ok( 'Module::Starter' );
-use_ok( 'Module::Starter::Simple' );
-use_ok( 'Module::Starter::BuilderSet' );
-use_ok( 'Module::Starter::Plugin::Template' );
-
-diag( "Testing Module::Starter $Module::Starter::VERSION, Perl $], $^X" );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/00-report-prereqs.dd 
new/Module-Starter-1.77/t/00-report-prereqs.dd
--- old/Module-Starter-1.76/t/00-report-prereqs.dd      1970-01-01 
01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/t/00-report-prereqs.dd      2020-09-05 
23:20:45.000000000 +0200
@@ -0,0 +1,46 @@
+do { my $x = {
+       'configure' => {
+                        'requires' => {
+                                        'ExtUtils::MakeMaker' => '0'
+                                      }
+                      },
+       'develop' => {
+                      'requires' => {
+                                      'File::Spec' => '0',
+                                      'IO::Handle' => '0',
+                                      'IPC::Open3' => '0',
+                                      'Pod::Coverage::TrustPod' => '0',
+                                      'Test::More' => '0',
+                                      'Test::Perl::Critic' => '0',
+                                      'Test::Pod' => '1.41',
+                                      'Test::Pod::Coverage' => '1.08'
+                                    }
+                    },
+       'runtime' => {
+                      'requires' => {
+                                      'File::Path' => '0',
+                                      'File::Spec' => '0',
+                                      'Getopt::Long' => '0',
+                                      'Module::Runtime' => '0',
+                                      'Pod::Usage' => '1.21',
+                                      'Software::License' => '0.103005',
+                                      'Test::Harness' => '0.21',
+                                      'Test::More' => '0.94',
+                                      'parent' => '0',
+                                      'perl' => '5.006001',
+                                      'version' => '0.77'
+                                    }
+                    },
+       'test' => {
+                   'recommends' => {
+                                     'CPAN::Meta' => '2.120900'
+                                   },
+                   'requires' => {
+                                   'ExtUtils::MakeMaker' => '0',
+                                   'File::Spec' => '0',
+                                   'Test::More' => '0.94'
+                                 }
+                 }
+     };
+  $x;
+ }
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/00-report-prereqs.t 
new/Module-Starter-1.77/t/00-report-prereqs.t
--- old/Module-Starter-1.76/t/00-report-prereqs.t       1970-01-01 
01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/t/00-report-prereqs.t       2020-09-05 
23:20:45.000000000 +0200
@@ -0,0 +1,193 @@
+#!perl
+
+use strict;
+use warnings;
+
+# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.027
+
+use Test::More tests => 1;
+
+use ExtUtils::MakeMaker;
+use File::Spec;
+
+# from $version::LAX
+my $lax_version_re =
+    qr/(?: undef | (?: (?:[0-9]+) (?: \. | (?:\.[0-9]+) (?:_[0-9]+)? )?
+            |
+            (?:\.[0-9]+) (?:_[0-9]+)?
+        ) | (?:
+            v (?:[0-9]+) (?: (?:\.[0-9]+)+ (?:_[0-9]+)? )?
+            |
+            (?:[0-9]+)? (?:\.[0-9]+){2,} (?:_[0-9]+)?
+        )
+    )/x;
+
+# hide optional CPAN::Meta modules from prereq scanner
+# and check if they are available
+my $cpan_meta = "CPAN::Meta";
+my $cpan_meta_pre = "CPAN::Meta::Prereqs";
+my $HAS_CPAN_META = eval "require $cpan_meta; $cpan_meta->VERSION('2.120900')" 
&& eval "require $cpan_meta_pre"; ## no critic
+
+# Verify requirements?
+my $DO_VERIFY_PREREQS = 1;
+
+sub _max {
+    my $max = shift;
+    $max = ( $_ > $max ) ? $_ : $max for @_;
+    return $max;
+}
+
+sub _merge_prereqs {
+    my ($collector, $prereqs) = @_;
+
+    # CPAN::Meta::Prereqs object
+    if (ref $collector eq $cpan_meta_pre) {
+        return $collector->with_merged_prereqs(
+            CPAN::Meta::Prereqs->new( $prereqs )
+        );
+    }
+
+    # Raw hashrefs
+    for my $phase ( keys %$prereqs ) {
+        for my $type ( keys %{ $prereqs->{$phase} } ) {
+            for my $module ( keys %{ $prereqs->{$phase}{$type} } ) {
+                $collector->{$phase}{$type}{$module} = 
$prereqs->{$phase}{$type}{$module};
+            }
+        }
+    }
+
+    return $collector;
+}
+
+my @include = qw(
+
+);
+
+my @exclude = qw(
+
+);
+
+# Add static prereqs to the included modules list
+my $static_prereqs = do './t/00-report-prereqs.dd';
+
+# Merge all prereqs (either with ::Prereqs or a hashref)
+my $full_prereqs = _merge_prereqs(
+    ( $HAS_CPAN_META ? $cpan_meta_pre->new : {} ),
+    $static_prereqs
+);
+
+# Add dynamic prereqs to the included modules list (if we can)
+my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
+my $cpan_meta_error;
+if ( $source && $HAS_CPAN_META
+    && (my $meta = eval { CPAN::Meta->load_file($source) } )
+) {
+    $full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs);
+}
+else {
+    $cpan_meta_error = $@;    # capture error from 
CPAN::Meta->load_file($source)
+    $source = 'static metadata';
+}
+
+my @full_reports;
+my @dep_errors;
+my $req_hash = $HAS_CPAN_META ? $full_prereqs->as_string_hash : $full_prereqs;
+
+# Add static includes into a fake section
+for my $mod (@include) {
+    $req_hash->{other}{modules}{$mod} = 0;
+}
+
+for my $phase ( qw(configure build test runtime develop other) ) {
+    next unless $req_hash->{$phase};
+    next if ($phase eq 'develop' and not $ENV{AUTHOR_TESTING});
+
+    for my $type ( qw(requires recommends suggests conflicts modules) ) {
+        next unless $req_hash->{$phase}{$type};
+
+        my $title = ucfirst($phase).' '.ucfirst($type);
+        my @reports = [qw/Module Want Have/];
+
+        for my $mod ( sort keys %{ $req_hash->{$phase}{$type} } ) {
+            next if $mod eq 'perl';
+            next if grep { $_ eq $mod } @exclude;
+
+            my $file = $mod;
+            $file =~ s{::}{/}g;
+            $file .= ".pm";
+            my ($prefix) = grep { -e File::Spec->catfile($_, $file) } @INC;
+
+            my $want = $req_hash->{$phase}{$type}{$mod};
+            $want = "undef" unless defined $want;
+            $want = "any" if !$want && $want == 0;
+
+            my $req_string = $want eq 'any' ? 'any version required' : 
"version '$want' required";
+
+            if ($prefix) {
+                my $have = MM->parse_version( File::Spec->catfile($prefix, 
$file) );
+                $have = "undef" unless defined $have;
+                push @reports, [$mod, $want, $have];
+
+                if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META && $type eq 
'requires' ) {
+                    if ( $have !~ /\A$lax_version_re\z/ ) {
+                        push @dep_errors, "$mod version '$have' cannot be 
parsed ($req_string)";
+                    }
+                    elsif ( ! $full_prereqs->requirements_for( $phase, $type 
)->accepts_module( $mod => $have ) ) {
+                        push @dep_errors, "$mod version '$have' is not in 
required range '$want'";
+                    }
+                }
+            }
+            else {
+                push @reports, [$mod, $want, "missing"];
+
+                if ( $DO_VERIFY_PREREQS && $type eq 'requires' ) {
+                    push @dep_errors, "$mod is not installed ($req_string)";
+                }
+            }
+        }
+
+        if ( @reports ) {
+            push @full_reports, "=== $title ===\n\n";
+
+            my $ml = _max( map { length $_->[0] } @reports );
+            my $wl = _max( map { length $_->[1] } @reports );
+            my $hl = _max( map { length $_->[2] } @reports );
+
+            if ($type eq 'modules') {
+                splice @reports, 1, 0, ["-" x $ml, "", "-" x $hl];
+                push @full_reports, map { sprintf("    %*s %*s\n", -$ml, 
$_->[0], $hl, $_->[2]) } @reports;
+            }
+            else {
+                splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl];
+                push @full_reports, map { sprintf("    %*s %*s %*s\n", -$ml, 
$_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports;
+            }
+
+            push @full_reports, "\n";
+        }
+    }
+}
+
+if ( @full_reports ) {
+    diag "\nVersions for all modules listed in $source (including optional 
ones):\n\n", @full_reports;
+}
+
+if ( $cpan_meta_error || @dep_errors ) {
+    diag "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING 
WARNING ***\n";
+}
+
+if ( $cpan_meta_error ) {
+    my ($orig_source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
+    diag "\nCPAN::Meta->load_file('$orig_source') failed with: 
$cpan_meta_error\n";
+}
+
+if ( @dep_errors ) {
+    diag join("\n",
+        "\nThe following REQUIRED prerequisites were not satisfied:\n",
+        @dep_errors,
+        "\n"
+    );
+}
+
+pass;
+
+# vim: ts=4 sts=4 sw=4 et:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/BuilderSet.t 
new/Module-Starter-1.77/t/BuilderSet.t
--- old/Module-Starter-1.76/t/BuilderSet.t      2017-08-11 01:50:09.000000000 
+0200
+++ new/Module-Starter-1.77/t/BuilderSet.t      2020-09-05 23:20:45.000000000 
+0200
@@ -1,4 +1,4 @@
-#perl -T
+#!perl
 
 # This test suite ensures that Module::Starter::BuilderSet behaves
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/data/templates/Module.pm 
new/Module-Starter-1.77/t/data/templates/Module.pm
--- old/Module-Starter-1.76/t/data/templates/Module.pm  2018-07-17 
18:20:06.000000000 +0200
+++ new/Module-Starter-1.77/t/data/templates/Module.pm  2020-09-05 
23:20:45.000000000 +0200
@@ -74,10 +74,6 @@
 
 L<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Foo-Bar>
 
-=item * AnnoCPAN: Annotated CPAN documentation
-
-L<http://annocpan.org/dist/Foo-Bar>
-
 =item * CPAN Ratings
 
 L<http://cpanratings.perl.org/d/Foo-Bar>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/data/templates/README 
new/Module-Starter-1.77/t/data/templates/README
--- old/Module-Starter-1.76/t/data/templates/README     2018-07-17 
18:19:49.000000000 +0200
+++ new/Module-Starter-1.77/t/data/templates/README     2020-09-05 
23:20:45.000000000 +0200
@@ -30,9 +30,6 @@
     GitHub issue tracker
         https://github.com/xsawyerx/module-starter/issues
 
-    AnnoCPAN, Annotated CPAN documentation
-        http://annocpan.org/dist/Foo-Bar
-
     CPAN Ratings
         http://cpanratings.perl.org/d/Foo-Bar
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/data/templates/t/00-load.t 
new/Module-Starter-1.77/t/data/templates/t/00-load.t
--- old/Module-Starter-1.76/t/data/templates/t/00-load.t        2017-03-23 
02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/data/templates/t/00-load.t        2020-09-05 
23:20:45.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/Module-Starter-1.76/t/data/templates/t/boilerplate.t 
new/Module-Starter-1.77/t/data/templates/t/boilerplate.t
--- old/Module-Starter-1.76/t/data/templates/t/boilerplate.t    2017-03-23 
02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/data/templates/t/boilerplate.t    2020-09-05 
23:20:45.000000000 +0200
@@ -1,4 +1,4 @@
-#!perl -T
+#!perl
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Module-Starter-1.76/t/data/templates/t/pod-coverage.t 
new/Module-Starter-1.77/t/data/templates/t/pod-coverage.t
--- old/Module-Starter-1.76/t/data/templates/t/pod-coverage.t   2017-03-23 
02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/data/templates/t/pod-coverage.t   2020-09-05 
23:20:45.000000000 +0200
@@ -1,4 +1,4 @@
-#!perl -T
+#!perl
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/data/templates/t/pod.t 
new/Module-Starter-1.77/t/data/templates/t/pod.t
--- old/Module-Starter-1.76/t/data/templates/t/pod.t    2017-03-23 
02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/data/templates/t/pod.t    2020-09-05 
23:20:45.000000000 +0200
@@ -1,4 +1,4 @@
-#!perl -T
+#!perl
 
 use strict;
 use warnings;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Module-Starter-1.76/t/lib/Module/Starter/TestPlugin.pm 
new/Module-Starter-1.77/t/lib/Module/Starter/TestPlugin.pm
--- old/Module-Starter-1.76/t/lib/Module/Starter/TestPlugin.pm  2017-03-23 
02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/lib/Module/Starter/TestPlugin.pm  2020-09-05 
23:20:45.000000000 +0200
@@ -145,7 +145,7 @@
     }
 
     # Otherwise, gather the necessary tools...
-    use ExtUtils::Command qw( mkpath );
+    use File::Path qw( make_path );
     use File::Spec;
     local $| = 1;
 
@@ -163,8 +163,7 @@
         = File::Spec->catdir( $ENV{HOME}, '.module-starter', 'PBP' );
     if ( not -d $template_dir ) {
         print {*STDERR} "Creating $template_dir...";
-        local @ARGV = $template_dir;
-        mkpath;
+        make_path $template_dir;
         print {*STDERR} "done.\n";
     }
 
@@ -172,8 +171,7 @@
         = File::Spec->catdir( $ENV{HOME}, '.module-starter', 'PBP', 't' );
     if ( not -d $template_test_dir ) {
         print {*STDERR} "Creating $template_test_dir...";
-        local @ARGV = $template_test_dir;
-        mkpath;
+        make_path $template_test_dir;
         print {*STDERR} "done.\n";
     }
 
@@ -771,14 +769,14 @@
 SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
 SUCH DAMAGES.
 _____[ pod-coverage.t ]__________________________________________
-#!perl -T
+#!perl
 
 use Test::More;
 eval "use Test::Pod::Coverage 1.04";
 plan skip_all => "Test::Pod::Coverage 1.04 required for testing POD coverage" 
if $@;
 all_pod_coverage_ok();
 _____[ pod.t ]___________________________________________________
-#!perl -T
+#!perl
 
 use Test::More;
 eval "use Test::Pod 1.14";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/module-starter.t 
new/Module-Starter-1.77/t/module-starter.t
--- old/Module-Starter-1.76/t/module-starter.t  2017-08-11 01:58:29.000000000 
+0200
+++ new/Module-Starter-1.77/t/module-starter.t  2020-09-05 23:20:45.000000000 
+0200
@@ -1,4 +1,4 @@
-#!perl -T
+#!perl
 
 =head1 DESCRIPTION
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/pod-coverage.t 
new/Module-Starter-1.77/t/pod-coverage.t
--- old/Module-Starter-1.76/t/pod-coverage.t    2017-03-23 02:54:43.000000000 
+0100
+++ new/Module-Starter-1.77/t/pod-coverage.t    1970-01-01 01:00:00.000000000 
+0100
@@ -1,27 +0,0 @@
-#!perl -T
-
-use strict;
-use warnings;
-use Test::More;
-
-BEGIN {
-  unless ($ENV{RELEASE_TESTING}) {
-    require Test::More;
-    Test::More::plan(skip_all => 'these tests are for release candidate 
testing');
-  }
-}
-
-# Ensure a recent version of Test::Pod::Coverage
-my $min_tpc = 1.08;
-eval "use Test::Pod::Coverage $min_tpc";
-plan skip_all => "Test::Pod::Coverage $min_tpc required for testing POD 
coverage"
-    if $@;
-
-# Test::Pod::Coverage doesn't require a minimum Pod::Coverage version,
-# but older versions don't recognize some common documentation styles
-my $min_pc = 0.18;
-eval "use Pod::Coverage $min_pc";
-plan skip_all => "Pod::Coverage $min_pc required for testing POD coverage"
-    if $@;
-
-all_pod_coverage_ok();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/pod.t 
new/Module-Starter-1.77/t/pod.t
--- old/Module-Starter-1.76/t/pod.t     2017-03-23 02:54:43.000000000 +0100
+++ new/Module-Starter-1.77/t/pod.t     1970-01-01 01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
-#!perl -T
-
-use strict;
-use warnings;
-use Test::More;
-
-BEGIN {
-  unless ($ENV{RELEASE_TESTING}) {
-    require Test::More;
-    Test::More::plan(skip_all => 'these tests are for release candidate 
testing');
-  }
-}
-
-# Ensure a recent version of Test::Pod
-my $min_tp = 1.22;
-eval "use Test::Pod $min_tp";
-plan skip_all => "Test::Pod $min_tp required for testing POD" if $@;
-
-all_pod_files_ok();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/t/test-dist.t 
new/Module-Starter-1.77/t/test-dist.t
--- old/Module-Starter-1.76/t/test-dist.t       2019-03-11 19:42:19.000000000 
+0100
+++ new/Module-Starter-1.77/t/test-dist.t       2020-09-05 23:20:45.000000000 
+0200
@@ -1,4 +1,4 @@
-#!/usr/bin/perl
+#!perl
 
 use strict;
 use warnings;
@@ -211,7 +211,7 @@
     
     my $msw_re  = qr{use \Q$minperl;\E\n\Quse strict;\E\n\Quse warnings;\E\n};
     my $mswb_re = $self->{builder} eq 'Module::Install' ? qr{\A$msw_re\Quse 
inc::$self->{builder};\E\n\n} : qr{\A$msw_re\Quse $self->{builder};\E\n};
-    my $mswt_re = qr{\A\Q#!perl -T\E\n$msw_re\Quse Test::More;\E\n\n};
+    my $mswt_re = qr{\A\Q#!perl\E\n$msw_re\Quse Test::More;\E\n\n};
     
     if ($basefn eq 'README') {
         plan tests => 6;
@@ -683,7 +683,6 @@
     }
 
     done_testing();
-    return;
 }
 
 package TestParseModuleFile;
@@ -701,7 +700,7 @@
     my $lc_dist_name = lc($dist_name);
     my $minperl      = $self->{minperl} || 5.006;
     
-    Test::More::plan tests => 19;
+    Test::More::plan tests => 18;
 
     $self->parse(
         qr/\Apackage \Q$perl_name\E;\n\nuse $minperl;\nuse strict;\n\Quse 
warnings;\E\n\n/ms,
@@ -811,14 +810,6 @@
 
     $self->parse_paras(
         [
-            { re => q/=item \* AnnoCPAN:[^\n]*/, },
-            "L<http://annocpan.org/dist/$dist_name>",
-        ],
-        "AnnoCPAN",
-    );
-
-    $self->parse_paras(
-        [
             { re => q/=item \* CPAN Ratings[^\n]*/, },
             "L<https://cpanratings.perl.org/d/$dist_name>",
         ],
@@ -870,8 +861,6 @@
         qq{1; # End of $perl_name},
         "End of module",
     );
-
-    return;
 }
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/xt/author/00-compile.t 
new/Module-Starter-1.77/xt/author/00-compile.t
--- old/Module-Starter-1.76/xt/author/00-compile.t      1970-01-01 
01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/xt/author/00-compile.t      2020-09-05 
23:20:45.000000000 +0200
@@ -0,0 +1,101 @@
+use 5.006;
+use strict;
+use warnings;
+
+# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.058
+
+use Test::More;
+
+plan tests => 7;
+
+my @module_files = (
+    'Module/Starter.pm',
+    'Module/Starter/App.pm',
+    'Module/Starter/BuilderSet.pm',
+    'Module/Starter/Plugin/Template.pm',
+    'Module/Starter/Simple.pm'
+);
+
+my @scripts = (
+    'bin/module-starter'
+);
+
+# no fake home requested
+
+my @switches = (
+    -d 'blib' ? '-Mblib' : '-Ilib',
+);
+
+use File::Spec;
+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?>
+    my $stderr = IO::Handle->new;
+
+    diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . 
$str . q{'} }
+            $^X, @switches, '-e', "require q[$lib]"))
+        if $ENV{PERL_COMPILE_TEST_DEBUG};
+
+    my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-e', 
"require q[$lib]");
+    binmode $stderr, ':crlf' if $^O eq 'MSWin32';
+    my @_warnings = <$stderr>;
+    waitpid($pid, 0);
+    is($?, 0, "$lib loaded ok");
+
+    shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/
+        and not eval { +require blib; blib->VERSION('1.01') };
+
+    if (@_warnings)
+    {
+        warn @_warnings;
+        push @warnings, @_warnings;
+    }
+}
+
+foreach my $file (@scripts)
+{ SKIP: {
+    open my $fh, '<', $file or warn("Unable to open $file: $!"), next;
+    my $line = <$fh>;
+
+    close $fh and skip("$file isn't perl", 1) unless $line =~ 
/^#!\s*(?:\S*perl\S*)((?:\s+-\w*)*)(?:\s*#.*)?$/;
+    @switches = (@switches, split(' ', $1)) if $1;
+
+    close $fh and skip("$file uses -T; not testable with PERL5LIB", 1)
+        if grep { $_ eq '-T' } @switches and $ENV{PERL5LIB};
+
+    my $stderr = IO::Handle->new;
+
+    diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . 
$str . q{'} }
+            $^X, @switches, '-c', $file))
+        if $ENV{PERL_COMPILE_TEST_DEBUG};
+
+    my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-c', $file);
+    binmode $stderr, ':crlf' if $^O eq 'MSWin32';
+    my @_warnings = <$stderr>;
+    waitpid($pid, 0);
+    is($?, 0, "$file compiled ok");
+
+    shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/
+        and not eval { +require blib; blib->VERSION('1.01') };
+
+    # in older perls, -c output is simply the file portion of the path being 
tested
+    if (@_warnings = grep { !/\bsyntax OK$/ }
+        grep { chomp; $_ ne (File::Spec->splitpath($file))[2] } @_warnings)
+    {
+        warn @_warnings;
+        push @warnings, @_warnings;
+    }
+} }
+
+
+
+is(scalar(@warnings), 0, 'no warnings found')
+    or diag 'got warnings: ', ( Test::More->can('explain') ? 
Test::More::explain(\@warnings) : join("\n", '', @warnings) );
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/xt/author/critic.t 
new/Module-Starter-1.77/xt/author/critic.t
--- old/Module-Starter-1.76/xt/author/critic.t  1970-01-01 01:00:00.000000000 
+0100
+++ new/Module-Starter-1.77/xt/author/critic.t  2020-09-05 23:20:45.000000000 
+0200
@@ -0,0 +1,7 @@
+#!perl
+
+use strict;
+use warnings;
+
+use Test::Perl::Critic (-profile => "perlcritic.rc") x!! -e "perlcritic.rc";
+all_critic_ok();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Module-Starter-1.76/xt/author/pod-coverage.t 
new/Module-Starter-1.77/xt/author/pod-coverage.t
--- old/Module-Starter-1.76/xt/author/pod-coverage.t    1970-01-01 
01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/xt/author/pod-coverage.t    2020-09-05 
23:20:45.000000000 +0200
@@ -0,0 +1,7 @@
+#!perl
+# This file was automatically generated by 
Dist::Zilla::Plugin::PodCoverageTests.
+
+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/Module-Starter-1.76/xt/author/pod-syntax.t 
new/Module-Starter-1.77/xt/author/pod-syntax.t
--- old/Module-Starter-1.76/xt/author/pod-syntax.t      1970-01-01 
01:00:00.000000000 +0100
+++ new/Module-Starter-1.77/xt/author/pod-syntax.t      2020-09-05 
23:20:45.000000000 +0200
@@ -0,0 +1,7 @@
+#!perl
+# This file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests.
+use strict; use warnings;
+use Test::More;
+use Test::Pod 1.41;
+
+all_pod_files_ok();


Reply via email to