The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Changes 04
MANIFEST 22
META.json 58130
META.yml 53105
Makefile.PL 159
README 22
dist.ini 21
lib/StackTrace/Auto.pm 27
lib/Throwable/Error.pm 22
lib/Throwable.pm 22
t/00-report-prereqs.t 1750
t/000-report-versions-tiny.t 082
t/basic.t 041
xt/release/changes_has_content.t 11
14 files changed (This is a version diff) 314388
@@ -1,5 +1,9 @@
 Revision history for Throwable
 
+0.200012  2014-09-19 21:59:28-04:00 America/New_York
+        - avoid memory leaks and infinite recursion when stringifying
+          (thanks, Dagfinn Ilmari Mannsåker!)
+
 0.200011  2014-04-02 20:49:49-04:00 America/New_York
         - eliminate prereq on Class::Load (thanks, Toby Inkster!)
         - eliminate preqre on MooX::Types::MooseLike::Base (Toby Inkster)
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.015.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.020.
 Changes
 LICENSE
 MANIFEST
@@ -10,7 +10,7 @@ dist.ini
 lib/StackTrace/Auto.pm
 lib/Throwable.pm
 lib/Throwable/Error.pm
-t/00-report-prereqs.t
+t/000-report-versions-tiny.t
 t/basic.t
 xt/memory-leak.t
 xt/moose-coerce-class.t
@@ -5,7 +5,7 @@
       "Florian Ragwitz <rafl@debian.org>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 5.015, CPAN::Meta::Converter version 2.140640",
+   "generated_by" : "Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142060",
    "license" : [
       "perl_5"
    ],
@@ -17,18 +17,19 @@
    "prereqs" : {
       "configure" : {
          "requires" : {
-            "ExtUtils::MakeMaker" : "6.30"
+            "ExtUtils::MakeMaker" : "0"
          }
       },
       "develop" : {
          "requires" : {
-            "Test::Pod" : "1.41"
+            "Test::Pod" : "1.41",
+            "version" : "0.9901"
          }
       },
       "runtime" : {
          "requires" : {
             "Carp" : "0",
-            "Devel::StackTrace" : "1.21",
+            "Devel::StackTrace" : "1.32",
             "Module::Runtime" : "0.002",
             "Moo" : "1.000001",
             "Moo::Role" : "0",
@@ -38,17 +39,11 @@
          }
       },
       "test" : {
-         "recommends" : {
-            "CPAN::Meta" : "0",
-            "CPAN::Meta::Requirements" : "2.120900"
-         },
          "requires" : {
-            "ExtUtils::MakeMaker" : "0",
-            "File::Spec::Functions" : "0",
-            "List::Util" : "0",
+            "Devel::StackTrace" : "1.32",
             "Test::More" : "0.96",
+            "base" : "0",
             "strict" : "0",
-            "version" : "0",
             "warnings" : "0"
          }
       }
@@ -65,26 +60,34 @@
          "web" : "https://github.com/rjbs/Throwable"
       }
    },
-   "version" : "0.200011",
+   "version" : "0.200012",
    "x_Dist_Zilla" : {
       "perl" : {
-         "version" : "5.019010"
+         "version" : "5.021003"
       },
       "plugins" : [
          {
             "class" : "Dist::Zilla::Plugin::Git::GatherDir",
+            "config" : {
+               "Dist::Zilla::Plugin::Git::GatherDir" : {
+                  "include_untracked" : "0"
+               },
+               "Dist::Zilla::Role::Git::Repo" : {
+                  "repo_root" : "."
+               }
+            },
             "name" : "@RJBS/Git::GatherDir",
-            "version" : "2.020"
+            "version" : "2.024"
          },
          {
             "class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed",
             "name" : "@RJBS/CheckPrereqsIndexed",
-            "version" : "0.011"
+            "version" : "0.012"
          },
          {
             "class" : "Dist::Zilla::Plugin::CheckExtraTests",
             "name" : "@RJBS/CheckExtraTests",
-            "version" : "0.021"
+            "version" : "0.022"
          },
          {
             "class" : "Dist::Zilla::Plugin::PromptIfStale",
@@ -100,7 +103,7 @@
                }
             },
             "name" : "@RJBS/RJBS-Outdated",
-            "version" : "0.021"
+            "version" : "0.026"
          },
          {
             "class" : "Dist::Zilla::Plugin::PromptIfStale",
@@ -114,62 +117,62 @@
                }
             },
             "name" : "@RJBS/CPAN-Outdated",
-            "version" : "0.021"
+            "version" : "0.026"
          },
          {
             "class" : "Dist::Zilla::Plugin::PruneCruft",
             "name" : "@RJBS/@Filter/PruneCruft",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::ManifestSkip",
             "name" : "@RJBS/@Filter/ManifestSkip",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaYAML",
             "name" : "@RJBS/@Filter/MetaYAML",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::License",
             "name" : "@RJBS/@Filter/License",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::Readme",
             "name" : "@RJBS/@Filter/Readme",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::ExecDir",
             "name" : "@RJBS/@Filter/ExecDir",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::ShareDir",
             "name" : "@RJBS/@Filter/ShareDir",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::Manifest",
             "name" : "@RJBS/@Filter/Manifest",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::TestRelease",
             "name" : "@RJBS/@Filter/TestRelease",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::ConfirmRelease",
             "name" : "@RJBS/@Filter/ConfirmRelease",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::UploadToCPAN",
             "name" : "@RJBS/@Filter/UploadToCPAN",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::MakeMaker",
@@ -179,37 +182,47 @@
                }
             },
             "name" : "@RJBS/MakeMaker",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::AutoPrereqs",
             "name" : "@RJBS/AutoPrereqs",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::NextVersion",
+            "config" : {
+               "Dist::Zilla::Plugin::Git::NextVersion" : {
+                  "first_version" : "0.001",
+                  "version_by_branch" : "0",
+                  "version_regexp" : "(?^:^([0-9]+\\.[0-9]+)$)"
+               },
+               "Dist::Zilla::Role::Git::Repo" : {
+                  "repo_root" : "."
+               }
+            },
             "name" : "@RJBS/Git::NextVersion",
-            "version" : "2.020"
+            "version" : "2.024"
          },
          {
             "class" : "Dist::Zilla::Plugin::PkgVersion",
             "name" : "@RJBS/PkgVersion",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaConfig",
             "name" : "@RJBS/MetaConfig",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaJSON",
             "name" : "@RJBS/MetaJSON",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::NextRelease",
             "name" : "@RJBS/NextRelease",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::Test::ChangesHasContent",
@@ -219,12 +232,12 @@
          {
             "class" : "Dist::Zilla::Plugin::PodSyntaxTests",
             "name" : "@RJBS/PodSyntaxTests",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
-            "class" : "Dist::Zilla::Plugin::Test::ReportPrereqs",
-            "name" : "@RJBS/Test::ReportPrereqs",
-            "version" : "0.013"
+            "class" : "Dist::Zilla::Plugin::ReportVersions::Tiny",
+            "name" : "@RJBS/ReportVersions::Tiny",
+            "version" : "1.10"
          },
          {
             "class" : "Dist::Zilla::Plugin::Prereqs",
@@ -235,7 +248,7 @@
                }
             },
             "name" : "@RJBS/TestMoreWithSubtests",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::PodWeaver",
@@ -343,32 +356,91 @@
                }
             },
             "name" : "@RJBS/PodWeaver",
-            "version" : "4.005"
+            "version" : "4.006"
          },
          {
             "class" : "Dist::Zilla::Plugin::GithubMeta",
             "name" : "@RJBS/GithubMeta",
-            "version" : "0.42"
+            "version" : "0.46"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Check",
+            "config" : {
+               "Dist::Zilla::Plugin::Git::Check" : {
+                  "untracked_files" : "die"
+               },
+               "Dist::Zilla::Role::Git::DirtyFiles" : {
+                  "allow_dirty" : [
+                     "dist.ini",
+                     "Changes"
+                  ],
+                  "allow_dirty_match" : [],
+                  "changelog" : "Changes"
+               },
+               "Dist::Zilla::Role::Git::Repo" : {
+                  "repo_root" : "."
+               }
+            },
             "name" : "@RJBS/@Git/Check",
-            "version" : "2.020"
+            "version" : "2.024"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Commit",
+            "config" : {
+               "Dist::Zilla::Plugin::Git::Commit" : {
+                  "add_files_in" : [],
+                  "commit_msg" : "v%v%n%n%c",
+                  "time_zone" : "local"
+               },
+               "Dist::Zilla::Role::Git::DirtyFiles" : {
+                  "allow_dirty" : [
+                     "dist.ini",
+                     "Changes"
+                  ],
+                  "allow_dirty_match" : [],
+                  "changelog" : "Changes"
+               },
+               "Dist::Zilla::Role::Git::Repo" : {
+                  "repo_root" : "."
+               }
+            },
             "name" : "@RJBS/@Git/Commit",
-            "version" : "2.020"
+            "version" : "2.024"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Tag",
+            "config" : {
+               "Dist::Zilla::Plugin::Git::Tag" : {
+                  "branch" : null,
+                  "signed" : 0,
+                  "tag" : "0.200012",
+                  "tag_format" : "%v",
+                  "tag_message" : "v%v",
+                  "time_zone" : "local"
+               },
+               "Dist::Zilla::Role::Git::Repo" : {
+                  "repo_root" : "."
+               }
+            },
             "name" : "@RJBS/@Git/Tag",
-            "version" : "2.020"
+            "version" : "2.024"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Push",
+            "config" : {
+               "Dist::Zilla::Plugin::Git::Push" : {
+                  "push_to" : [
+                     "origin :",
+                     "github :"
+                  ],
+                  "remotes_must_exist" : 0
+               },
+               "Dist::Zilla::Role::Git::Repo" : {
+                  "repo_root" : "."
+               }
+            },
             "name" : "@RJBS/@Git/Push",
-            "version" : "2.020"
+            "version" : "2.024"
          },
          {
             "class" : "Dist::Zilla::Plugin::Prereqs",
@@ -379,47 +451,47 @@
                }
             },
             "name" : "Prereqs",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":InstallModules",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":IncModules",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":TestFiles",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":ExecFiles",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":ShareFiles",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":MainModule",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":AllFiles",
-            "version" : "5.015"
+            "version" : "5.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":NoFiles",
-            "version" : "5.015"
+            "version" : "5.020"
          }
       ],
       "zilla" : {
@@ -427,7 +499,7 @@
          "config" : {
             "is_trial" : "0"
          },
-         "version" : "5.015"
+         "version" : "5.020"
       }
    }
 }
@@ -4,17 +4,15 @@ author:
   - 'Ricardo SIGNES <rjbs@cpan.org>'
   - 'Florian Ragwitz <rafl@debian.org>'
 build_requires:
-  ExtUtils::MakeMaker: '0'
-  File::Spec::Functions: '0'
-  List::Util: '0'
+  Devel::StackTrace: '1.32'
   Test::More: '0.96'
+  base: '0'
   strict: '0'
-  version: '0'
   warnings: '0'
 configure_requires:
-  ExtUtils::MakeMaker: '6.30'
+  ExtUtils::MakeMaker: '0'
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.015, CPAN::Meta::Converter version 2.140640'
+generated_by: 'Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.142060'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -22,7 +20,7 @@ meta-spec:
 name: Throwable
 requires:
   Carp: '0'
-  Devel::StackTrace: '1.21'
+  Devel::StackTrace: '1.32'
   Module::Runtime: '0.002'
   Moo: '1.000001'
   Moo::Role: '0'
@@ -33,23 +31,28 @@ resources:
   bugtracker: https://github.com/rjbs/Throwable/issues
   homepage: https://github.com/rjbs/Throwable
   repository: https://github.com/rjbs/Throwable.git
-version: '0.200011'
+version: '0.200012'
 x_Dist_Zilla:
   perl:
-    version: '5.019010'
+    version: '5.021003'
   plugins:
     -
       class: Dist::Zilla::Plugin::Git::GatherDir
+      config:
+        Dist::Zilla::Plugin::Git::GatherDir:
+          include_untracked: '0'
+        Dist::Zilla::Role::Git::Repo:
+          repo_root: .
       name: '@RJBS/Git::GatherDir'
-      version: '2.020'
+      version: '2.024'
     -
       class: Dist::Zilla::Plugin::CheckPrereqsIndexed
       name: '@RJBS/CheckPrereqsIndexed'
-      version: '0.011'
+      version: '0.012'
     -
       class: Dist::Zilla::Plugin::CheckExtraTests
       name: '@RJBS/CheckExtraTests'
-      version: '0.021'
+      version: '0.022'
     -
       class: Dist::Zilla::Plugin::PromptIfStale
       config:
@@ -61,7 +64,7 @@ x_Dist_Zilla:
           phase: build
           skip: []
       name: '@RJBS/RJBS-Outdated'
-      version: '0.021'
+      version: '0.026'
     -
       class: Dist::Zilla::Plugin::PromptIfStale
       config:
@@ -72,82 +75,89 @@ x_Dist_Zilla:
           phase: release
           skip: []
       name: '@RJBS/CPAN-Outdated'
-      version: '0.021'
+      version: '0.026'
     -
       class: Dist::Zilla::Plugin::PruneCruft
       name: '@RJBS/@Filter/PruneCruft'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::ManifestSkip
       name: '@RJBS/@Filter/ManifestSkip'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::MetaYAML
       name: '@RJBS/@Filter/MetaYAML'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::License
       name: '@RJBS/@Filter/License'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::Readme
       name: '@RJBS/@Filter/Readme'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::ExecDir
       name: '@RJBS/@Filter/ExecDir'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::ShareDir
       name: '@RJBS/@Filter/ShareDir'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::Manifest
       name: '@RJBS/@Filter/Manifest'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::TestRelease
       name: '@RJBS/@Filter/TestRelease'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::ConfirmRelease
       name: '@RJBS/@Filter/ConfirmRelease'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::UploadToCPAN
       name: '@RJBS/@Filter/UploadToCPAN'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::MakeMaker
       config:
         Dist::Zilla::Role::TestRunner:
           default_jobs: 9
       name: '@RJBS/MakeMaker'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::AutoPrereqs
       name: '@RJBS/AutoPrereqs'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::Git::NextVersion
+      config:
+        Dist::Zilla::Plugin::Git::NextVersion:
+          first_version: '0.001'
+          version_by_branch: '0'
+          version_regexp: (?^:^([0-9]+\.[0-9]+)$)
+        Dist::Zilla::Role::Git::Repo:
+          repo_root: .
       name: '@RJBS/Git::NextVersion'
-      version: '2.020'
+      version: '2.024'
     -
       class: Dist::Zilla::Plugin::PkgVersion
       name: '@RJBS/PkgVersion'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::MetaConfig
       name: '@RJBS/MetaConfig'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::MetaJSON
       name: '@RJBS/MetaJSON'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::NextRelease
       name: '@RJBS/NextRelease'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::Test::ChangesHasContent
       name: '@RJBS/Test::ChangesHasContent'
@@ -155,11 +165,11 @@ x_Dist_Zilla:
     -
       class: Dist::Zilla::Plugin::PodSyntaxTests
       name: '@RJBS/PodSyntaxTests'
-      version: '5.015'
+      version: '5.020'
     -
-      class: Dist::Zilla::Plugin::Test::ReportPrereqs
-      name: '@RJBS/Test::ReportPrereqs'
-      version: '0.013'
+      class: Dist::Zilla::Plugin::ReportVersions::Tiny
+      name: '@RJBS/ReportVersions::Tiny'
+      version: '1.10'
     -
       class: Dist::Zilla::Plugin::Prereqs
       config:
@@ -167,7 +177,7 @@ x_Dist_Zilla:
           phase: test
           type: requires
       name: '@RJBS/TestMoreWithSubtests'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::PodWeaver
       config:
@@ -251,27 +261,69 @@ x_Dist_Zilla:
               name: '@RJBS/List'
               version: '4.006'
       name: '@RJBS/PodWeaver'
-      version: '4.005'
+      version: '4.006'
     -
       class: Dist::Zilla::Plugin::GithubMeta
       name: '@RJBS/GithubMeta'
-      version: '0.42'
+      version: '0.46'
     -
       class: Dist::Zilla::Plugin::Git::Check
+      config:
+        Dist::Zilla::Plugin::Git::Check:
+          untracked_files: die
+        Dist::Zilla::Role::Git::DirtyFiles:
+          allow_dirty:
+            - dist.ini
+            - Changes
+          allow_dirty_match: []
+          changelog: Changes
+        Dist::Zilla::Role::Git::Repo:
+          repo_root: .
       name: '@RJBS/@Git/Check'
-      version: '2.020'
+      version: '2.024'
     -
       class: Dist::Zilla::Plugin::Git::Commit
+      config:
+        Dist::Zilla::Plugin::Git::Commit:
+          add_files_in: []
+          commit_msg: v%v%n%n%c
+          time_zone: local
+        Dist::Zilla::Role::Git::DirtyFiles:
+          allow_dirty:
+            - dist.ini
+            - Changes
+          allow_dirty_match: []
+          changelog: Changes
+        Dist::Zilla::Role::Git::Repo:
+          repo_root: .
       name: '@RJBS/@Git/Commit'
-      version: '2.020'
+      version: '2.024'
     -
       class: Dist::Zilla::Plugin::Git::Tag
+      config:
+        Dist::Zilla::Plugin::Git::Tag:
+          branch: ~
+          signed: 0
+          tag: '0.200012'
+          tag_format: '%v'
+          tag_message: v%v
+          time_zone: local
+        Dist::Zilla::Role::Git::Repo:
+          repo_root: .
       name: '@RJBS/@Git/Tag'
-      version: '2.020'
+      version: '2.024'
     -
       class: Dist::Zilla::Plugin::Git::Push
+      config:
+        Dist::Zilla::Plugin::Git::Push:
+          push_to:
+            - 'origin :'
+            - 'github :'
+          remotes_must_exist: 0
+        Dist::Zilla::Role::Git::Repo:
+          repo_root: .
       name: '@RJBS/@Git/Push'
-      version: '2.020'
+      version: '2.024'
     -
       class: Dist::Zilla::Plugin::Prereqs
       config:
@@ -279,41 +331,41 @@ x_Dist_Zilla:
           phase: runtime
           type: requires
       name: Prereqs
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':InstallModules'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':IncModules'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':TestFiles'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':ExecFiles'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':ShareFiles'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':MainModule'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':AllFiles'
-      version: '5.015'
+      version: '5.020'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':NoFiles'
-      version: '5.015'
+      version: '5.020'
   zilla:
     class: Dist::Zilla::Dist::Builder
     config:
       is_trial: '0'
-    version: '5.015'
+    version: '5.020'
@@ -1,20 +1,19 @@
 
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.015.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.020.
 use strict;
 use warnings;
 
 
 
-use ExtUtils::MakeMaker 6.30;
+use ExtUtils::MakeMaker ;
 
 
 
 my %WriteMakefileArgs = (
   "ABSTRACT" => "a role for classes that can be thrown",
   "AUTHOR" => "Ricardo SIGNES <rjbs\@cpan.org>, Florian Ragwitz <rafl\@debian.org>",
-  "BUILD_REQUIRES" => {},
   "CONFIGURE_REQUIRES" => {
-    "ExtUtils::MakeMaker" => "6.30"
+    "ExtUtils::MakeMaker" => 0
   },
   "DISTNAME" => "Throwable",
   "EXE_FILES" => [],
@@ -22,7 +21,7 @@ my %WriteMakefileArgs = (
   "NAME" => "Throwable",
   "PREREQ_PM" => {
     "Carp" => 0,
-    "Devel::StackTrace" => "1.21",
+    "Devel::StackTrace" => "1.32",
     "Module::Runtime" => "0.002",
     "Moo" => "1.000001",
     "Moo::Role" => 0,
@@ -31,15 +30,13 @@ my %WriteMakefileArgs = (
     "overload" => 0
   },
   "TEST_REQUIRES" => {
-    "ExtUtils::MakeMaker" => 0,
-    "File::Spec::Functions" => 0,
-    "List::Util" => 0,
+    "Devel::StackTrace" => "1.32",
     "Test::More" => "0.96",
+    "base" => 0,
     "strict" => 0,
-    "version" => 0,
     "warnings" => 0
   },
-  "VERSION" => "0.200011",
+  "VERSION" => "0.200012",
   "test" => {
     "TESTS" => "t/*.t"
   }
@@ -48,19 +45,16 @@ my %WriteMakefileArgs = (
 
 my %FallbackPrereqs = (
   "Carp" => 0,
-  "Devel::StackTrace" => "1.21",
-  "ExtUtils::MakeMaker" => 0,
-  "File::Spec::Functions" => 0,
-  "List::Util" => 0,
+  "Devel::StackTrace" => "1.32",
   "Module::Runtime" => "0.002",
   "Moo" => "1.000001",
   "Moo::Role" => 0,
   "Scalar::Util" => 0,
   "Sub::Quote" => 0,
   "Test::More" => "0.96",
+  "base" => 0,
   "overload" => 0,
   "strict" => 0,
-  "version" => 0,
   "warnings" => 0
 );
 
@@ -1,7 +1,7 @@
 
 
 This archive contains the distribution Throwable,
-version 0.200011:
+version 0.200012:
 
   a role for classes that can be thrown
 
@@ -11,5 +11,5 @@ This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
 
 
-This README file was generated by Dist::Zilla::Plugin::Readme v5.015.
+This README file was generated by Dist::Zilla::Plugin::Readme v5.020.
 
@@ -7,5 +7,4 @@ copyright_holder = Ricardo SIGNES
 [@RJBS]
 
 [Prereqs]
-Devel::StackTrace = 1.21 ; frame_filter
-
+Devel::StackTrace = 1.32 ; frame_filter, filter_frames_early
@@ -1,6 +1,6 @@
 package StackTrace::Auto;
 # ABSTRACT: a role for generating stack traces during instantiation
-$StackTrace::Auto::VERSION = '0.200011';
+$StackTrace::Auto::VERSION = '0.200012';
 use Moo::Role;
 use Sub::Quote ();
 use Module::Runtime 0.002 ();
@@ -49,9 +49,13 @@ has stack_trace => (
       @{ $_[0]->stack_trace_args },
     );
   }),
+  lazy => 1,
   init_arg => undef,
 );
 
+sub BUILD {};
+before BUILD => sub { $_[0]->stack_trace };
+
 has stack_trace_class => (
   is      => 'ro',
   isa     => Sub::Quote::quote_sub(q{
@@ -93,6 +97,7 @@ sub _build_stack_trace_args {
 
   my $found_mark = 0;
   return [
+    filter_frames_early => 1,
     frame_filter => sub {
       my ($raw) = @_;
       my $sub = $raw->{caller}->[3];
@@ -127,7 +132,7 @@ StackTrace::Auto - a role for generating stack traces during instantiation
 
 =head1 VERSION
 
-version 0.200011
+version 0.200012
 
 =head1 SYNOPSIS
 
@@ -1,6 +1,6 @@
 package Throwable::Error;
 # ABSTRACT: an easy-to-use class for error objects
-$Throwable::Error::VERSION = '0.200011';
+$Throwable::Error::VERSION = '0.200012';
 use Moo 1.000001;
 with 'Throwable', 'StackTrace::Auto';
 
@@ -113,7 +113,7 @@ Throwable::Error - an easy-to-use class for error objects
 
 =head1 VERSION
 
-version 0.200011
+version 0.200012
 
 =head1 SYNOPSIS
 
@@ -1,6 +1,6 @@
 package Throwable;
 # ABSTRACT: a role for classes that can be thrown
-$Throwable::VERSION = '0.200011';
+$Throwable::VERSION = '0.200012';
 use Moo::Role;
 use Sub::Quote ();
 use Scalar::Util ();
@@ -90,7 +90,7 @@ Throwable - a role for classes that can be thrown
 
 =head1 VERSION
 
-version 0.200011
+version 0.200012
 
 =head1 SYNOPSIS
 
@@ -1,175 +0,0 @@
-#!perl
-
-use strict;
-use warnings;
-
-# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.013
-
-use Test::More tests => 1;
-
-use ExtUtils::MakeMaker;
-use File::Spec::Functions;
-use List::Util qw/max/;
-use version;
-
-# hide optional CPAN::Meta modules from prereq scanner
-# and check if they are available
-my $cpan_meta = "CPAN::Meta";
-my $cpan_meta_req = "CPAN::Meta::Requirements";
-my $HAS_CPAN_META = eval "require $cpan_meta"; ## no critic
-my $HAS_CPAN_META_REQ = eval "require $cpan_meta_req; $cpan_meta_req->VERSION('2.120900')";
-
-# Verify requirements?
-my $DO_VERIFY_PREREQS = 1;
-
-sub _merge_requires {
-    my ($collector, $prereqs) = @_;
-    for my $phase ( qw/configure build test runtime develop/ ) {
-        next unless exists $prereqs->{$phase};
-        if ( my $req = $prereqs->{$phase}{'requires'} ) {
-            my $cmr = CPAN::Meta::Requirements->from_string_hash( $req );
-            $collector->add_requirements( $cmr );
-        }
-    }
-}
-
-my %include = map {; $_ => 1 } qw(
-
-);
-
-my %exclude = map {; $_ => 1 } qw(
-
-);
-
-# Add static prereqs to the included modules list
-my $static_prereqs = do { my $x = {
-       'configure' => {
-                        'requires' => {
-                                        'ExtUtils::MakeMaker' => '6.30'
-                                      }
-                      },
-       'develop' => {
-                      'requires' => {
-                                      'Test::Pod' => '1.41'
-                                    }
-                    },
-       'runtime' => {
-                      'requires' => {
-                                      'Carp' => '0',
-                                      'Devel::StackTrace' => '1.21',
-                                      'Module::Runtime' => '0.002',
-                                      'Moo' => '1.000001',
-                                      'Moo::Role' => '0',
-                                      'Scalar::Util' => '0',
-                                      'Sub::Quote' => '0',
-                                      'overload' => '0'
-                                    }
-                    },
-       'test' => {
-                   'recommends' => {
-                                     'CPAN::Meta' => '0',
-                                     'CPAN::Meta::Requirements' => '2.120900'
-                                   },
-                   'requires' => {
-                                   'ExtUtils::MakeMaker' => '0',
-                                   'File::Spec::Functions' => '0',
-                                   'List::Util' => '0',
-                                   'Test::More' => '0.96',
-                                   'strict' => '0',
-                                   'version' => '0',
-                                   'warnings' => '0'
-                                 }
-                 }
-     };
-  $x;
- };
-
-delete $static_prereqs->{develop} if not $ENV{AUTHOR_TESTING};
-$include{$_} = 1 for map { keys %$_ } map { values %$_ } values %$static_prereqs;
-
-# Merge requirements for major phases (if we can)
-my $all_requires;
-if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META_REQ ) {
-    $all_requires = $cpan_meta_req->new;
-    _merge_requires($all_requires, $static_prereqs);
-}
-
-
-# Add dynamic prereqs to the included modules list (if we can)
-my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
-if ( $source && $HAS_CPAN_META ) {
-  if ( my $meta = eval { CPAN::Meta->load_file($source) } ) {
-    my $dynamic_prereqs = $meta->prereqs;
-    delete $dynamic_prereqs->{develop} if not $ENV{AUTHOR_TESTING};
-    $include{$_} = 1 for map { keys %$_ } map { values %$_ } values %$dynamic_prereqs;
-
-    if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META_REQ ) {
-        _merge_requires($all_requires, $dynamic_prereqs);
-    }
-  }
-}
-else {
-  $source = 'static metadata';
-}
-
-my @modules = sort grep { ! $exclude{$_} } keys %include;
-my @reports = [qw/Version Module/];
-my @dep_errors;
-my $req_hash = defined($all_requires) ? $all_requires->as_string_hash : {};
-
-for my $mod ( @modules ) {
-  next if $mod eq 'perl';
-  my $file = $mod;
-  $file =~ s{::}{/}g;
-  $file .= ".pm";
-  my ($prefix) = grep { -e catfile($_, $file) } @INC;
-  if ( $prefix ) {
-    my $ver = MM->parse_version( catfile($prefix, $file) );
-    $ver = "undef" unless defined $ver; # Newer MM should do this anyway
-    push @reports, [$ver, $mod];
-
-    if ( $DO_VERIFY_PREREQS && $all_requires ) {
-      my $req = $req_hash->{$mod};
-      if ( defined $req && length $req ) {
-        if ( ! defined eval { version->parse($ver) } ) {
-          push @dep_errors, "$mod version '$ver' cannot be parsed (version '$req' required)";
-        }
-        elsif ( ! $all_requires->accepts_module( $mod => $ver ) ) {
-          push @dep_errors, "$mod version '$ver' is not in required range '$req'";
-        }
-      }
-    }
-
-  }
-  else {
-    push @reports, ["missing", $mod];
-
-    if ( $DO_VERIFY_PREREQS && $all_requires ) {
-      my $req = $req_hash->{$mod};
-      if ( defined $req && length $req ) {
-        push @dep_errors, "$mod is not installed (version '$req' required)";
-      }
-    }
-  }
-}
-
-if ( @reports ) {
-  my $vl = max map { length $_->[0] } @reports;
-  my $ml = max map { length $_->[1] } @reports;
-  splice @reports, 1, 0, ["-" x $vl, "-" x $ml];
-  diag "\nVersions for all modules listed in $source (including optional ones):\n",
-    map {sprintf("  %*s %*s\n",$vl,$_->[0],-$ml,$_->[1])} @reports;
-}
-
-if ( @dep_errors ) {
-  diag join("\n",
-    "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ***\n",
-    "The following REQUIRED prerequisites were not satisfied:\n",
-    @dep_errors,
-    "\n"
-  );
-}
-
-pass;
-
-# vim: ts=4 sts=4 sw=4 et:
@@ -0,0 +1,82 @@
+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.10\n";
+
+eval {                     # no excuses!
+    # report our Perl details
+    my $want = "any version";
+    $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('Carp','any version') };
+eval { $v .= pmver('Devel::StackTrace','1.32') };
+eval { $v .= pmver('ExtUtils::MakeMaker','any version') };
+eval { $v .= pmver('Module::Runtime','0.002') };
+eval { $v .= pmver('Moo','1.000001') };
+eval { $v .= pmver('Moo::Role','any version') };
+eval { $v .= pmver('Scalar::Util','any version') };
+eval { $v .= pmver('Sub::Quote','any version') };
+eval { $v .= pmver('Test::More','0.96') };
+eval { $v .= pmver('base','any version') };
+eval { $v .= pmver('overload','any version') };
+eval { $v .= pmver('strict','any version') };
+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;
@@ -16,6 +16,22 @@ BEGIN {
     use $class;
     extends 'Throwable::Error';
 
+    package MyError2;
+    use $class;
+    extends 'Throwable::Error';
+  }.q{
+
+    use Carp qw(cluck);
+    around _build_stack_trace_args => sub {
+      my ($orig, $self) = (shift, shift);
+
+      return [
+        @{$self->$orig(@_)},
+        no_refs => 1,
+        respect_overload => 1,
+      ];
+    };
+
     1;
   } or die $@;
 }
@@ -71,4 +87,29 @@ sub create_error { HasError->new->{error} }
   is($frames[1]->subroutine, q{main::create_error}, 'correct frame 1');
 }
 
+{
+    package MyTrace;
+    use base 'Devel::StackTrace';
+}
+
+# make sure to catch intermittent failures due to attribute initialisation order
+for my $i (1..10) {
+    eval { MyError->throw({ message => 'aieee!', stack_trace_class => 'MyTrace' }) };
+
+    my $error = $@;
+    isa_ok($error->stack_trace, 'MyTrace', "the trace (run $i)")
+}
+
+{
+    eval {
+        local $SIG{ALRM} = sub { fail('no_refs + respect_overload finishes'); exit 1; };
+        alarm 10;
+        MyError2->throw('aiee!');
+    };
+    alarm 0;
+
+    my $error = $@;
+    isa_ok($error, 'MyError2', 'the error');
+}
+
 done_testing();
@@ -4,7 +4,7 @@ use Test::More tests => 2;
 
 note 'Checking Changes';
 my $changes_file = 'Changes';
-my $newver = '0.200011';
+my $newver = '0.200012';
 my $trial_token = '-TRIAL';
 
 SKIP: {