@@ -24,7 +24,7 @@ However, you can run tests directly using the 'prove' tool:
$ prove -lv t/some_test_file.t
$ prove -lvr t/
-In most cases, 'prove' is entirely sufficent for you to test any
+In most cases, 'prove' is entirely sufficient for you to test any
patches you have.
You may need to satisfy some dependencies. The easiest way to satisfy
@@ -95,5 +95,5 @@ wish to be listed under a different name or address, you should submit a pull
request to the .mailmap file to contain the correct mapping.
-This file was generated via Dist::Zilla::Plugin::GenerateFile::FromShareDir 0.009 from a
-template file originating in Dist-Zilla-PluginBundle-Author-ETHER-0.114.
+This file was generated via Dist::Zilla::Plugin::GenerateFile::FromShareDir 0.013 from a
+template file originating in Dist-Zilla-PluginBundle-Author-ETHER-0.137.
@@ -1,5 +1,14 @@
Revision history for B-Hooks-EndOfScope
+0.24 2018-04-21 14:11:08Z
+ - no changes since last trial release
+
+0.23 2018-03-17 23:33:09Z (TRIAL RELEASE)
+ - improve use of constants in compile-time perl version checks
+
+0.22 2018-03-17 19:31:37Z (TRIAL RELEASE)
+ - Fix memory corruption on perls 5.8.0 - 5.8.3
+
0.21 2016-05-25 18:34:46Z
- work with Object::Remote by removing require() call on Tie::StdHash in PP
@@ -8,10 +8,10 @@ If you have cpanm, you only need one line:
% cpanm B::Hooks::EndOfScope
-If you are installing into a system-wide directory, you may need to pass the
-"-S" flag to cpanm, which uses sudo to install the module:
-
- % cpanm -S B::Hooks::EndOfScope
+If it does not have permission to install modules to the current perl, cpanm
+will automatically set up and install to a local::lib in your home directory.
+See the local::lib documentation (https://metacpan.org/pod/local::lib) for
+details on enabling it in your environment.
## Installing with the CPAN shell
@@ -31,13 +31,22 @@ Then install it:
% make install
-If you are installing into a system-wide directory, you may need to run:
+On Windows platforms, you should use `dmake` or `nmake`, instead of `make`.
+
+If your perl is system-managed, you can create a local::lib in your home
+directory to install modules to. For details, see the local::lib documentation:
+https://metacpan.org/pod/local::lib
+
- % sudo make install
+The prerequisites of this distribution will also have to be installed manually. The
+prerequisites are listed in one of the files: `MYMETA.yml` or `MYMETA.json` generated
+by running the manual build process described above.
## Documentation
B-Hooks-EndOfScope documentation is available as POD.
-You can run perldoc from a shell to read the documentation:
+You can run `perldoc` from a shell to read the documentation:
% perldoc B::Hooks::EndOfScope
+For more information on installing Perl modules via CPAN, please see:
+https://www.cpan.org/modules/INSTALL.html
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.005.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.012.
CONTRIBUTING
Changes
INSTALL
@@ -22,10 +22,15 @@ t/01-eval.t
t/02-localise.t
t/05-exception_xs.t
t/06-exception_pp.t
+t/07-nested.t
t/10-test_without_vm_pure_pp.t
t/11-direct_xs.t
t/12-direct_pp.t
+t/lib/OtherClass.pm
+t/lib/YetAnotherClass.pm
xt/author/00-compile.t
+xt/author/changes_has_content.t
+xt/author/check-inc.t
xt/author/eol.t
xt/author/kwalitee.t
xt/author/mojibake.t
@@ -33,8 +38,7 @@ xt/author/no-tabs.t
xt/author/pod-no404s.t
xt/author/pod-spell.t
xt/author/pod-syntax.t
+xt/author/portability.t
xt/release/changes_has_content.t
xt/release/cpan-changes.t
xt/release/distmeta.t
-xt/release/minimum-version.t
-xt/release/portability.t
@@ -2,10 +2,10 @@
"abstract" : "Execute code after a scope finished compilation",
"author" : [
"Florian Ragwitz <rafl@debian.org>",
- "Peter Rabbitson <ribasushi@cpan.org>"
+ "Peter Rabbitson <ribasushi@leporine.io>"
],
"dynamic_config" : 1,
- "generated_by" : "Dist::Zilla version 6.005, CPAN::Meta::Converter version 2.150005",
+ "generated_by" : "Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010",
"keywords" : [
"code",
"hooks",
@@ -30,36 +30,83 @@
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "0",
- "Text::ParseWords" : "0",
- "perl" : "5.008001"
+ "Text::ParseWords" : "0"
}
},
"develop" : {
"recommends" : {
- "Dist::Zilla::PluginBundle::Author::ETHER" : "0.114"
+ "Dist::Zilla::PluginBundle::Author::ETHER" : "0.137",
+ "Dist::Zilla::PluginBundle::Git::VersionManager" : "0.007"
},
"requires" : {
"Devel::Hide" : "0.0007",
+ "Encode" : "0",
+ "ExtUtils::HasCompiler" : "0.014",
+ "File::Spec" : "0",
+ "IO::Handle" : "0",
+ "IPC::Open3" : "0",
+ "Path::Tiny" : "0.062",
+ "Pod::Wordlist" : "0",
+ "Test::CPAN::Changes" : "0.19",
+ "Test::CPAN::Meta" : "0",
+ "Test::Deep" : "0",
+ "Test::EOL" : "0",
+ "Test::Kwalitee" : "1.21",
+ "Test::Mojibake" : "0",
+ "Test::More" : "0.96",
+ "Test::NoTabs" : "0",
+ "Test::Pod" : "1.41",
+ "Test::Pod::No404s" : "0",
+ "Test::Portability::Files" : "0",
+ "Test::Spelling" : "0.12"
+ }
+ },
+ "runtime" : {
+ "requires" : {
+ "Module::Implementation" : "0.05",
+ "Scalar::Util" : "0",
+ "Sub::Exporter::Progressive" : "0.001006",
+ "perl" : "5.006001",
+ "strict" : "0",
+ "warnings" : "0"
+ }
+ },
+ "test" : {
+ "recommends" : {
+ "CPAN::Meta" : "2.120900"
+ },
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0",
+ "File::Glob" : "0",
+ "File::Spec" : "0",
+ "IPC::Open2" : "0",
+ "Test::More" : "0.88",
+ "lib" : "0"
+ }
+ },
+ "x_Dist_Zilla" : {
+ "requires" : {
"Dist::Zilla" : "5",
"Dist::Zilla::Plugin::Authority" : "1.009",
- "Dist::Zilla::Plugin::AuthorityFromModule" : "0.002",
"Dist::Zilla::Plugin::AutoMetaResources" : "0",
"Dist::Zilla::Plugin::AutoPrereqs" : "5.038",
"Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional" : "0.004",
"Dist::Zilla::Plugin::CheckIssues" : "0",
- "Dist::Zilla::Plugin::CheckPrereqsIndexed" : "0",
+ "Dist::Zilla::Plugin::CheckMetaResources" : "0",
+ "Dist::Zilla::Plugin::CheckPrereqsIndexed" : "0.019",
"Dist::Zilla::Plugin::CheckSelfDependency" : "0",
"Dist::Zilla::Plugin::CheckStrictVersion" : "0",
"Dist::Zilla::Plugin::ConfirmRelease" : "0",
"Dist::Zilla::Plugin::CopyFilesFromRelease" : "0",
"Dist::Zilla::Plugin::DynamicPrereqs" : "0.029",
+ "Dist::Zilla::Plugin::EnsureLatestPerl" : "0",
"Dist::Zilla::Plugin::FileFinder::ByName" : "0",
"Dist::Zilla::Plugin::GenerateFile::FromShareDir" : "0",
"Dist::Zilla::Plugin::Git::Check" : "0",
"Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch" : "0.004",
"Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts" : "0",
"Dist::Zilla::Plugin::Git::Commit" : "2.020",
- "Dist::Zilla::Plugin::Git::Contributors" : "0.004",
+ "Dist::Zilla::Plugin::Git::Contributors" : "0.029",
"Dist::Zilla::Plugin::Git::Describe" : "0.004",
"Dist::Zilla::Plugin::Git::GatherDir" : "2.016",
"Dist::Zilla::Plugin::Git::Push" : "0",
@@ -78,89 +125,52 @@
"Dist::Zilla::Plugin::MetaProvides::Package" : "1.15000002",
"Dist::Zilla::Plugin::MetaTests" : "0",
"Dist::Zilla::Plugin::MetaYAML" : "0",
- "Dist::Zilla::Plugin::MinimumPerl" : "1.006",
"Dist::Zilla::Plugin::MojibakeTests" : "0.8",
"Dist::Zilla::Plugin::NextRelease" : "5.033",
"Dist::Zilla::Plugin::PodSyntaxTests" : "5.040",
"Dist::Zilla::Plugin::Prereqs" : "0",
- "Dist::Zilla::Plugin::Prereqs::AuthorDeps" : "0",
+ "Dist::Zilla::Plugin::Prereqs::AuthorDeps" : "0.006",
"Dist::Zilla::Plugin::PromptIfStale" : "0",
"Dist::Zilla::Plugin::Readme" : "0",
"Dist::Zilla::Plugin::ReadmeAnyFromPod" : "0.142180",
"Dist::Zilla::Plugin::RewriteVersion::Transitional" : "0.004",
- "Dist::Zilla::Plugin::Run::AfterBuild" : "0.038",
+ "Dist::Zilla::Plugin::Run::AfterBuild" : "0.041",
"Dist::Zilla::Plugin::Run::AfterRelease" : "0.038",
"Dist::Zilla::Plugin::RunExtraTests" : "0.024",
"Dist::Zilla::Plugin::StaticInstall" : "0.005",
"Dist::Zilla::Plugin::SurgicalPodWeaver" : "0",
- "Dist::Zilla::Plugin::Test::CPAN::Changes" : "0.008",
+ "Dist::Zilla::Plugin::Test::CPAN::Changes" : "0.012",
"Dist::Zilla::Plugin::Test::ChangesHasContent" : "0",
"Dist::Zilla::Plugin::Test::Compile" : "2.039",
"Dist::Zilla::Plugin::Test::EOL" : "0.17",
"Dist::Zilla::Plugin::Test::Kwalitee" : "2.10",
- "Dist::Zilla::Plugin::Test::MinimumVersion" : "2.000003",
"Dist::Zilla::Plugin::Test::NoTabs" : "0.08",
- "Dist::Zilla::Plugin::Test::Pod::No404s" : "1.002",
+ "Dist::Zilla::Plugin::Test::Pod::No404s" : "1.003",
"Dist::Zilla::Plugin::Test::PodSpelling" : "2.006003",
- "Dist::Zilla::Plugin::Test::Portability" : "0",
+ "Dist::Zilla::Plugin::Test::Portability" : "2.000007",
"Dist::Zilla::Plugin::Test::ReportPrereqs" : "0.022",
"Dist::Zilla::Plugin::TestRelease" : "0",
"Dist::Zilla::Plugin::UploadToCPAN" : "0",
- "Dist::Zilla::PluginBundle::Author::ETHER" : "0.094",
+ "Dist::Zilla::Plugin::UseUnsafeInc" : "0",
+ "Dist::Zilla::PluginBundle::Author::ETHER" : "0.119",
+ "Dist::Zilla::PluginBundle::Git::VersionManager" : "0",
"ExtUtils::HasCompiler" : "0.014",
- "File::Spec" : "0",
- "IO::Handle" : "0",
- "IPC::Open3" : "0",
- "Pod::Wordlist" : "0",
- "Software::License::Perl_5" : "0",
- "Test::CPAN::Changes" : "0.19",
- "Test::CPAN::Meta" : "0",
- "Test::EOL" : "0",
- "Test::Kwalitee" : "1.21",
- "Test::Mojibake" : "0",
- "Test::More" : "0.96",
- "Test::NoTabs" : "0",
- "Test::Pod" : "1.41",
- "Test::Pod::No404s" : "0",
- "Test::Spelling" : "0.12",
- "blib" : "1.01"
- }
- },
- "runtime" : {
- "requires" : {
- "Module::Implementation" : "0.05",
- "Sub::Exporter::Progressive" : "0.001006",
- "perl" : "5.008001",
- "strict" : "0",
- "warnings" : "0"
- }
- },
- "test" : {
- "recommends" : {
- "CPAN::Meta" : "2.120900"
- },
- "requires" : {
- "File::Glob" : "0",
- "File::Spec" : "0",
- "IPC::Open2" : "0",
- "Module::Metadata" : "0",
- "Test::More" : "0.89",
- "perl" : "5.008001"
+ "Software::License::Perl_5" : "0"
}
}
},
"provides" : {
"B::Hooks::EndOfScope" : {
"file" : "lib/B/Hooks/EndOfScope.pm",
- "version" : "0.21"
+ "version" : "0.24"
},
"B::Hooks::EndOfScope::PP" : {
"file" : "lib/B/Hooks/EndOfScope/PP.pm",
- "version" : "0.21"
+ "version" : "0.24"
},
"B::Hooks::EndOfScope::XS" : {
"file" : "lib/B/Hooks/EndOfScope/XS.pm",
- "version" : "0.21"
+ "version" : "0.24"
}
},
"release_status" : "stable",
@@ -176,10 +186,10 @@
"web" : "https://github.com/karenetheridge/B-Hooks-EndOfScope"
}
},
- "version" : "0.21",
+ "version" : "0.24",
"x_Dist_Zilla" : {
"perl" : {
- "version" : "5.025000"
+ "version" : "5.027011"
},
"plugins" : [
{
@@ -187,28 +197,11 @@
"config" : {
"Dist::Zilla::Plugin::Prereqs" : {
"phase" : "develop",
- "type" : "requires"
+ "type" : "recommends"
}
},
- "name" : "@Author::ETHER/bundle_plugins",
- "version" : "6.005"
- },
- {
- "class" : "Dist::Zilla::Plugin::RewriteVersion::Transitional",
- "config" : {
- "Dist::Zilla::Plugin::RewriteVersion" : {
- "add_tarball_name" : 0,
- "finders" : [
- ":ExecFiles",
- ":InstallModules"
- ],
- "global" : 1,
- "skip_version_provider" : 0
- },
- "Dist::Zilla::Plugin::RewriteVersion::Transitional" : {}
- },
- "name" : "@Author::ETHER/RewriteVersion::Transitional",
- "version" : "0.007"
+ "name" : "@Author::ETHER/pluginbundle version",
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::PromptIfStale",
@@ -220,30 +213,17 @@
"Dist::Zilla::PluginBundle::Author::ETHER"
],
"phase" : "build",
+ "run_under_travis" : 0,
"skip" : []
}
},
"name" : "@Author::ETHER/stale modules, build",
- "version" : "0.049"
- },
- {
- "class" : "Dist::Zilla::Plugin::PromptIfStale",
- "config" : {
- "Dist::Zilla::Plugin::PromptIfStale" : {
- "check_all_plugins" : 1,
- "check_all_prereqs" : 1,
- "modules" : [],
- "phase" : "release",
- "skip" : []
- }
- },
- "name" : "@Author::ETHER/stale modules, release",
- "version" : "0.049"
+ "version" : "0.054"
},
{
"class" : "Dist::Zilla::Plugin::FileFinder::ByName",
"name" : "@Author::ETHER/Examples",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Git::GatherDir",
@@ -268,32 +248,32 @@
}
},
"name" : "@Author::ETHER/Git::GatherDir",
- "version" : "2.039"
+ "version" : "2.043"
},
{
"class" : "Dist::Zilla::Plugin::MetaYAML",
"name" : "@Author::ETHER/MetaYAML",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::MetaJSON",
"name" : "@Author::ETHER/MetaJSON",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Readme",
"name" : "@Author::ETHER/Readme",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Manifest",
"name" : "@Author::ETHER/Manifest",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::License",
"name" : "@Author::ETHER/License",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::GenerateFile::FromShareDir",
@@ -309,16 +289,16 @@
"Dist::Zilla::Role::RepoFileInjector" : {
"allow_overwrite" : 1,
"repo_root" : ".",
- "version" : "0.006"
+ "version" : "0.007"
}
},
"name" : "@Author::ETHER/generate CONTRIBUTING",
- "version" : "0.009"
+ "version" : "0.013"
},
{
"class" : "Dist::Zilla::Plugin::InstallGuide",
"name" : "@Author::ETHER/InstallGuide",
- "version" : "1.200006"
+ "version" : "1.200009"
},
{
"class" : "Dist::Zilla::Plugin::Test::Compile",
@@ -337,11 +317,12 @@
":PerlExecFiles",
"@Author::ETHER/Examples"
],
- "skips" : []
+ "skips" : [],
+ "switch" : []
}
},
"name" : "@Author::ETHER/Test::Compile",
- "version" : "2.054"
+ "version" : "2.058"
},
{
"class" : "Dist::Zilla::Plugin::Test::NoTabs",
@@ -366,48 +347,73 @@
"Dist::Zilla::Plugin::Test::EOL" : {
"filename" : "xt/author/eol.t",
"finder" : [
- ":InstallModules",
":ExecFiles",
- "@Author::ETHER/Examples",
+ ":ExtraTestFiles",
+ ":InstallModules",
":TestFiles",
- ":ExtraTestFiles"
+ "@Author::ETHER/Examples"
],
"trailing_whitespace" : 1
}
},
"name" : "@Author::ETHER/Test::EOL",
- "version" : "0.18"
+ "version" : "0.19"
},
{
"class" : "Dist::Zilla::Plugin::MetaTests",
"name" : "@Author::ETHER/MetaTests",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Test::CPAN::Changes",
+ "config" : {
+ "Dist::Zilla::Plugin::Test::CPAN::Changes" : {
+ "changelog" : "Changes"
+ }
+ },
"name" : "@Author::ETHER/Test::CPAN::Changes",
- "version" : "0.009"
+ "version" : "0.012"
},
{
- "class" : "Dist::Zilla::Plugin::Test::ChangesHasContent",
- "name" : "@Author::ETHER/Test::ChangesHasContent",
- "version" : "0.009"
+ "class" : "Dist::Zilla::Plugin::GenerateFile::FromShareDir",
+ "config" : {
+ "Dist::Zilla::Plugin::GenerateFile::FromShareDir" : {
+ "destination_filename" : "xt/author/changes_has_content.t",
+ "dist" : "Dist-Zilla-PluginBundle-Author-ETHER",
+ "encoding" : "UTF-8",
+ "location" : "build",
+ "source_filename" : "changes_has_content.t"
+ },
+ "Dist::Zilla::Role::RepoFileInjector" : {
+ "allow_overwrite" : 1,
+ "repo_root" : ".",
+ "version" : "0.007"
+ }
+ },
+ "name" : "@Author::ETHER/generate xt/author/changes_has_content.t",
+ "version" : "0.013"
},
{
- "class" : "Dist::Zilla::Plugin::Test::MinimumVersion",
- "name" : "@Author::ETHER/Test::MinimumVersion",
- "version" : "2.000006"
+ "class" : "Dist::Zilla::Plugin::Test::ChangesHasContent",
+ "name" : "@Author::ETHER/Test::ChangesHasContent",
+ "version" : "0.011"
},
{
"class" : "Dist::Zilla::Plugin::PodSyntaxTests",
"name" : "@Author::ETHER/PodSyntaxTests",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Test::PodSpelling",
"config" : {
"Dist::Zilla::Plugin::Test::PodSpelling" : {
- "directories" : [],
+ "directories" : [
+ "examples",
+ "lib",
+ "script",
+ "t",
+ "xt"
+ ],
"spell_cmd" : "",
"stopwords" : [
"irc"
@@ -416,12 +422,12 @@
}
},
"name" : "@Author::ETHER/Test::PodSpelling",
- "version" : "2.007000"
+ "version" : "2.007005"
},
{
"class" : "Dist::Zilla::Plugin::Test::Pod::No404s",
"name" : "@Author::ETHER/Test::Pod::No404s",
- "version" : "1.003"
+ "version" : "1.004"
},
{
"class" : "Dist::Zilla::Plugin::Test::Kwalitee",
@@ -442,17 +448,22 @@
{
"class" : "Dist::Zilla::Plugin::Test::ReportPrereqs",
"name" : "@Author::ETHER/Test::ReportPrereqs",
- "version" : "0.024"
+ "version" : "0.027"
},
{
"class" : "Dist::Zilla::Plugin::Test::Portability",
+ "config" : {
+ "Dist::Zilla::Plugin::Test::Portability" : {
+ "options" : ""
+ }
+ },
"name" : "@Author::ETHER/Test::Portability",
- "version" : "2.000006"
+ "version" : "2.001000"
},
{
"class" : "Dist::Zilla::Plugin::Git::Describe",
"name" : "@Author::ETHER/Git::Describe",
- "version" : "0.006"
+ "version" : "0.007"
},
{
"class" : "Dist::Zilla::Plugin::SurgicalPodWeaver",
@@ -469,97 +480,97 @@
{
"class" : "Pod::Weaver::Plugin::EnsurePod5",
"name" : "@Author::ETHER/EnsurePod5",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Plugin::H1Nester",
"name" : "@Author::ETHER/H1Nester",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Plugin::SingleEncoding",
"name" : "@Author::ETHER/SingleEncoding",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Plugin::Transformer",
"name" : "@Author::ETHER/List",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Plugin::Transformer",
"name" : "@Author::ETHER/Verbatim",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Region",
"name" : "@Author::ETHER/header",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Name",
"name" : "@Author::ETHER/Name",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Version",
"name" : "@Author::ETHER/Version",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Region",
"name" : "@Author::ETHER/prelude",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Generic",
"name" : "SYNOPSIS",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Generic",
"name" : "DESCRIPTION",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Generic",
"name" : "OVERVIEW",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Collect",
"name" : "ATTRIBUTES",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Collect",
"name" : "METHODS",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Collect",
"name" : "FUNCTIONS",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Collect",
"name" : "TYPES",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Leftovers",
"name" : "@Author::ETHER/Leftovers",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Region",
"name" : "@Author::ETHER/postlude",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::GenerateSection",
"name" : "@Author::ETHER/generate SUPPORT",
- "version" : "1.01"
+ "version" : "1.06"
},
{
"class" : "Pod::Weaver::Section::AllowOverride",
@@ -569,7 +580,7 @@
{
"class" : "Pod::Weaver::Section::Authors",
"name" : "@Author::ETHER/Authors",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Contributors",
@@ -579,12 +590,12 @@
{
"class" : "Pod::Weaver::Section::Legal",
"name" : "@Author::ETHER/Legal",
- "version" : "4.013"
+ "version" : "4.015"
},
{
"class" : "Pod::Weaver::Section::Region",
"name" : "@Author::ETHER/footer",
- "version" : "4.013"
+ "version" : "4.015"
}
]
}
@@ -603,20 +614,6 @@
"version" : "1.21"
},
{
- "class" : "Dist::Zilla::Plugin::AuthorityFromModule",
- "config" : {
- "Dist::Zilla::Plugin::AuthorityFromModule" : {
- "module" : "B::Hooks::EndOfScope"
- },
- "Dist::Zilla::Role::ModuleMetadata" : {
- "Module::Metadata" : "1.000032",
- "version" : "0.003"
- }
- },
- "name" : "@Author::ETHER/AuthorityFromModule",
- "version" : "0.006"
- },
- {
"class" : "Dist::Zilla::Plugin::Authority",
"name" : "@Author::ETHER/Authority",
"version" : "1.009"
@@ -624,7 +621,7 @@
{
"class" : "Dist::Zilla::Plugin::MetaNoIndex",
"name" : "@Author::ETHER/MetaNoIndex",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::MetaProvides::Package",
@@ -637,28 +634,29 @@
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":InstallModules",
- "version" : "6.005"
+ "version" : "6.012"
}
- ]
+ ],
+ "include_underscores" : 0
},
"Dist::Zilla::Role::MetaProvider::Provider" : {
- "Dist::Zilla::Role::MetaProvider::Provider::VERSION" : "2.002000",
+ "$Dist::Zilla::Role::MetaProvider::Provider::VERSION" : "2.002004",
"inherit_missing" : 0,
"inherit_version" : 0,
"meta_noindex" : 1
},
"Dist::Zilla::Role::ModuleMetadata" : {
- "Module::Metadata" : "1.000032",
- "version" : "0.003"
+ "Module::Metadata" : "1.000033",
+ "version" : "0.006"
}
},
"name" : "@Author::ETHER/MetaProvides::Package",
- "version" : "2.004000"
+ "version" : "2.004003"
},
{
"class" : "Dist::Zilla::Plugin::MetaConfig",
"name" : "@Author::ETHER/MetaConfig",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Keywords",
@@ -676,9 +674,19 @@
"version" : "0.007"
},
{
+ "class" : "Dist::Zilla::Plugin::UseUnsafeInc",
+ "config" : {
+ "Dist::Zilla::Plugin::UseUnsafeInc" : {
+ "dot_in_INC" : 0
+ }
+ },
+ "name" : "@Author::ETHER/UseUnsafeInc",
+ "version" : "0.001"
+ },
+ {
"class" : "Dist::Zilla::Plugin::AutoPrereqs",
"name" : "@Author::ETHER/AutoPrereqs",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Prereqs::AuthorDeps",
@@ -686,31 +694,15 @@
"version" : "0.006"
},
{
- "class" : "Dist::Zilla::Plugin::MinimumPerl",
- "name" : "@Author::ETHER/MinimumPerl",
- "version" : "1.006"
- },
- {
"class" : "Dist::Zilla::Plugin::Prereqs",
"config" : {
"Dist::Zilla::Plugin::Prereqs" : {
- "phase" : "develop",
- "type" : "recommends"
- }
- },
- "name" : "@Author::ETHER/pluginbundle_version",
- "version" : "6.005"
- },
- {
- "class" : "Dist::Zilla::Plugin::Prereqs",
- "config" : {
- "Dist::Zilla::Plugin::Prereqs" : {
- "phase" : "develop",
+ "phase" : "x_Dist_Zilla",
"type" : "requires"
}
},
"name" : "@Author::ETHER/pod_weaving",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::MakeMaker",
@@ -720,22 +712,21 @@
}
},
"name" : "@Author::ETHER/MakeMaker",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Git::Contributors",
"config" : {
"Dist::Zilla::Plugin::Git::Contributors" : {
+ "git_version" : "2.14.2",
"include_authors" : 0,
"include_releaser" : 1,
"order_by" : "commits",
- "paths" : [
- "."
- ]
+ "paths" : []
}
},
"name" : "@Author::ETHER/Git::Contributors",
- "version" : "0.023"
+ "version" : "0.032"
},
{
"class" : "Dist::Zilla::Plugin::StaticInstall",
@@ -746,7 +737,7 @@
}
},
"name" : "@Author::ETHER/StaticInstall",
- "version" : "0.009"
+ "version" : "0.011"
},
{
"class" : "Dist::Zilla::Plugin::RunExtraTests",
@@ -767,8 +758,8 @@
]
},
"Dist::Zilla::Role::ModuleMetadata" : {
- "Module::Metadata" : "1.000032",
- "version" : "0.003"
+ "Module::Metadata" : "1.000033",
+ "version" : "0.006"
}
},
"name" : "@Author::ETHER/CheckSelfDependency",
@@ -782,11 +773,12 @@
"quiet" : 1,
"run" : [
"bash -c \"test -e .ackrc && grep -q -- '--ignore-dir=.latest' .ackrc || echo '--ignore-dir=.latest' >> .ackrc; if [[ `dirname '%d'` != .build ]]; then test -e .ackrc && grep -q -- '--ignore-dir=%d' .ackrc || echo '--ignore-dir=%d' >> .ackrc; fi\""
- ]
+ ],
+ "version" : "0.046"
}
},
"name" : "@Author::ETHER/.ackrc",
- "version" : "0.043"
+ "version" : "0.046"
},
{
"class" : "Dist::Zilla::Plugin::Run::AfterBuild",
@@ -795,12 +787,13 @@
"eval" : [
"if ('%d' =~ /^%n-[.[:xdigit:]]+$/) { unlink '.latest'; symlink '%d', '.latest'; }"
],
- "fatal_errors" : 1,
- "quiet" : 1
+ "fatal_errors" : 0,
+ "quiet" : 1,
+ "version" : "0.046"
}
},
"name" : "@Author::ETHER/.latest",
- "version" : "0.043"
+ "version" : "0.046"
},
{
"class" : "Dist::Zilla::Plugin::CheckStrictVersion",
@@ -808,6 +801,36 @@
"version" : "0.001"
},
{
+ "class" : "Dist::Zilla::Plugin::CheckMetaResources",
+ "name" : "@Author::ETHER/CheckMetaResources",
+ "version" : "0.001"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::EnsureLatestPerl",
+ "config" : {
+ "Dist::Zilla::Plugin::EnsureLatestPerl" : {
+ "Module::CoreList" : "5.20180420"
+ }
+ },
+ "name" : "@Author::ETHER/EnsureLatestPerl",
+ "version" : "0.007"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::PromptIfStale",
+ "config" : {
+ "Dist::Zilla::Plugin::PromptIfStale" : {
+ "check_all_plugins" : 1,
+ "check_all_prereqs" : 1,
+ "modules" : [],
+ "phase" : "release",
+ "run_under_travis" : 0,
+ "skip" : []
+ }
+ },
+ "name" : "@Author::ETHER/stale modules, release",
+ "version" : "0.054"
+ },
+ {
"class" : "Dist::Zilla::Plugin::Git::Check",
"config" : {
"Dist::Zilla::Plugin::Git::Check" : {
@@ -819,46 +842,49 @@
"changelog" : "Changes"
},
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
}
},
"name" : "@Author::ETHER/initial check",
- "version" : "2.039"
+ "version" : "2.043"
},
{
"class" : "Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts",
"config" : {
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
}
},
"name" : "@Author::ETHER/Git::CheckFor::MergeConflicts",
- "version" : "0.013"
+ "version" : "0.014"
},
{
"class" : "Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch",
"config" : {
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
}
},
"name" : "@Author::ETHER/Git::CheckFor::CorrectBranch",
- "version" : "0.013"
+ "version" : "0.014"
},
{
"class" : "Dist::Zilla::Plugin::Git::Remote::Check",
"name" : "@Author::ETHER/Git::Remote::Check",
- "version" : "0.2.0"
+ "version" : "0.1.2"
},
{
"class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed",
"name" : "@Author::ETHER/CheckPrereqsIndexed",
- "version" : "0.018"
+ "version" : "0.020"
},
{
"class" : "Dist::Zilla::Plugin::TestRelease",
"name" : "@Author::ETHER/TestRelease",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Git::Check",
@@ -872,21 +898,22 @@
"changelog" : "Changes"
},
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
}
},
"name" : "@Author::ETHER/after tests",
- "version" : "2.039"
+ "version" : "2.043"
},
{
"class" : "Dist::Zilla::Plugin::CheckIssues",
"name" : "@Author::ETHER/CheckIssues",
- "version" : "0.009"
+ "version" : "0.010"
},
{
"class" : "Dist::Zilla::Plugin::UploadToCPAN",
"name" : "@Author::ETHER/UploadToCPAN",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::CopyFilesFromRelease",
@@ -894,7 +921,6 @@
"Dist::Zilla::Plugin::CopyFilesFromRelease" : {
"filename" : [
"CONTRIBUTING",
- "Changes",
"INSTALL",
"LICENCE",
"LICENSE",
@@ -903,8 +929,8 @@
"match" : []
}
},
- "name" : "@Author::ETHER/CopyFilesFromRelease",
- "version" : "0.006"
+ "name" : "@Author::ETHER/copy generated files",
+ "version" : "0.007"
},
{
"class" : "Dist::Zilla::Plugin::ReadmeAnyFromPod",
@@ -914,7 +940,53 @@
}
},
"name" : "@Author::ETHER/ReadmeAnyFromPod",
- "version" : "0.161170"
+ "version" : "0.163250"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Prereqs",
+ "config" : {
+ "Dist::Zilla::Plugin::Prereqs" : {
+ "phase" : "develop",
+ "type" : "recommends"
+ }
+ },
+ "name" : "@Author::ETHER/@Git::VersionManager/pluginbundle version",
+ "version" : "6.012"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::RewriteVersion::Transitional",
+ "config" : {
+ "Dist::Zilla::Plugin::RewriteVersion" : {
+ "add_tarball_name" : 0,
+ "finders" : [
+ ":ExecFiles",
+ ":InstallModules"
+ ],
+ "global" : 1,
+ "skip_version_provider" : 0
+ },
+ "Dist::Zilla::Plugin::RewriteVersion::Transitional" : {}
+ },
+ "name" : "@Author::ETHER/@Git::VersionManager/RewriteVersion::Transitional",
+ "version" : "0.009"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::MetaProvides::Update",
+ "name" : "@Author::ETHER/@Git::VersionManager/MetaProvides::Update",
+ "version" : "0.007"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::CopyFilesFromRelease",
+ "config" : {
+ "Dist::Zilla::Plugin::CopyFilesFromRelease" : {
+ "filename" : [
+ "Changes"
+ ],
+ "match" : []
+ }
+ },
+ "name" : "@Author::ETHER/@Git::VersionManager/CopyFilesFromRelease",
+ "version" : "0.007"
},
{
"class" : "Dist::Zilla::Plugin::Git::Commit",
@@ -937,14 +1009,15 @@
"changelog" : "Changes"
},
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
},
"Dist::Zilla::Role::Git::StringFormatter" : {
"time_zone" : "local"
}
},
- "name" : "@Author::ETHER/release snapshot",
- "version" : "2.039"
+ "name" : "@Author::ETHER/@Git::VersionManager/release snapshot",
+ "version" : "2.043"
},
{
"class" : "Dist::Zilla::Plugin::Git::Tag",
@@ -953,29 +1026,20 @@
"branch" : null,
"changelog" : "Changes",
"signed" : 0,
- "tag" : "0.21",
+ "tag" : "0.24",
"tag_format" : "%v",
"tag_message" : "v%v%t"
},
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
},
"Dist::Zilla::Role::Git::StringFormatter" : {
"time_zone" : "local"
}
},
- "name" : "@Author::ETHER/Git::Tag",
- "version" : "2.039"
- },
- {
- "class" : "Dist::Zilla::Plugin::GitHub::Update",
- "config" : {
- "Dist::Zilla::Plugin::GitHub::Update" : {
- "metacpan" : 1
- }
- },
- "name" : "@Author::ETHER/GitHub::Update",
- "version" : "0.42"
+ "name" : "@Author::ETHER/@Git::VersionManager/Git::Tag",
+ "version" : "2.043"
},
{
"class" : "Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional",
@@ -990,13 +1054,13 @@
},
"Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional" : {}
},
- "name" : "@Author::ETHER/BumpVersionAfterRelease::Transitional",
- "version" : "0.007"
+ "name" : "@Author::ETHER/@Git::VersionManager/BumpVersionAfterRelease::Transitional",
+ "version" : "0.009"
},
{
"class" : "Dist::Zilla::Plugin::NextRelease",
- "name" : "@Author::ETHER/NextRelease",
- "version" : "6.005"
+ "name" : "@Author::ETHER/@Git::VersionManager/NextRelease",
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Git::Commit",
@@ -1007,7 +1071,9 @@
},
"Dist::Zilla::Role::Git::DirtyFiles" : {
"allow_dirty" : [
- "Changes"
+ "Build.PL",
+ "Changes",
+ "Makefile.PL"
],
"allow_dirty_match" : [
"(?^:^lib/.*\\.pm$)"
@@ -1015,14 +1081,26 @@
"changelog" : "Changes"
},
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
},
"Dist::Zilla::Role::Git::StringFormatter" : {
"time_zone" : "local"
}
},
- "name" : "@Author::ETHER/post-release commit",
- "version" : "2.039"
+ "name" : "@Author::ETHER/@Git::VersionManager/post-release commit",
+ "version" : "2.043"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Prereqs",
+ "config" : {
+ "Dist::Zilla::Plugin::Prereqs" : {
+ "phase" : "x_Dist_Zilla",
+ "type" : "requires"
+ }
+ },
+ "name" : "@Author::ETHER/@Git::VersionManager/prereqs for @Git::VersionManager",
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Git::Push",
@@ -1034,11 +1112,22 @@
"remotes_must_exist" : 1
},
"Dist::Zilla::Role::Git::Repo" : {
+ "git_version" : "2.14.2",
"repo_root" : "."
}
},
"name" : "@Author::ETHER/Git::Push",
- "version" : "2.039"
+ "version" : "2.043"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::GitHub::Update",
+ "config" : {
+ "Dist::Zilla::Plugin::GitHub::Update" : {
+ "metacpan" : 1
+ }
+ },
+ "name" : "@Author::ETHER/GitHub::Update",
+ "version" : "0.44"
},
{
"class" : "Dist::Zilla::Plugin::Run::AfterRelease",
@@ -1048,11 +1137,12 @@
"quiet" : 0,
"run" : [
"REDACTED"
- ]
+ ],
+ "version" : "0.046"
}
},
"name" : "@Author::ETHER/install release",
- "version" : "0.043"
+ "version" : "0.046"
},
{
"class" : "Dist::Zilla::Plugin::Run::AfterRelease",
@@ -1062,16 +1152,39 @@
"print \"release complete!\\xa\""
],
"fatal_errors" : 1,
- "quiet" : 1
+ "quiet" : 1,
+ "version" : "0.046"
}
},
"name" : "@Author::ETHER/release complete",
- "version" : "0.043"
+ "version" : "0.046"
},
{
"class" : "Dist::Zilla::Plugin::ConfirmRelease",
"name" : "@Author::ETHER/ConfirmRelease",
- "version" : "6.005"
+ "version" : "6.012"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Prereqs",
+ "config" : {
+ "Dist::Zilla::Plugin::Prereqs" : {
+ "phase" : "x_Dist_Zilla",
+ "type" : "requires"
+ }
+ },
+ "name" : "@Author::ETHER/prereqs for @Author::ETHER",
+ "version" : "6.012"
+ },
+ {
+ "class" : "Dist::Zilla::Plugin::Prereqs",
+ "config" : {
+ "Dist::Zilla::Plugin::Prereqs" : {
+ "phase" : "runtime",
+ "type" : "requires"
+ }
+ },
+ "name" : "Prereqs",
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::Prereqs",
@@ -1082,73 +1195,73 @@
}
},
"name" : "DevelopRequires",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::DynamicPrereqs",
"config" : {
"Dist::Zilla::Role::ModuleMetadata" : {
- "Module::Metadata" : "1.000032",
- "version" : "0.003"
+ "Module::Metadata" : "1.000033",
+ "version" : "0.006"
}
},
"name" : "DynamicPrereqs",
- "version" : "0.029"
+ "version" : "0.034"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":InstallModules",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":IncModules",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":TestFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":ExtraTestFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":ExecFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":PerlExecFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":ShareFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":MainModule",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":AllFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::FinderCode",
"name" : ":NoFiles",
- "version" : "6.005"
+ "version" : "6.012"
},
{
"class" : "Dist::Zilla::Plugin::VerifyPhases",
"name" : "@Author::ETHER/PHASE VERIFICATION",
- "version" : "0.014"
+ "version" : "0.016"
}
],
"zilla" : {
@@ -1156,18 +1269,20 @@
"config" : {
"is_trial" : 0
},
- "version" : "6.005"
+ "version" : "6.012"
}
},
"x_authority" : "cpan:FLORA",
- "x_authority_from_module" : "B::Hooks::EndOfScope",
"x_contributors" : [
"Karen Etheridge <ether@cpan.org>",
- "Christian Walde <walde.christian@googlemail.com>",
- "Simon Wilper <sxw@chronowerks.de>",
"Tatsuhiko Miyagawa <miyagawa@bulknews.net>",
- "Tomas Doran <bobtfish@bobtfish.net>"
+ "Christian Walde <walde.christian@googlemail.com>",
+ "Tomas Doran <bobtfish@bobtfish.net>",
+ "Graham Knop <haarg@haarg.org>",
+ "Simon Wilper <sxw@chronowerks.de>"
],
- "x_permissions_from_module" : "B::Hooks::EndOfScope"
+ "x_generated_by_perl" : "v5.27.11",
+ "x_serialization_backend" : "Cpanel::JSON::XS version 4.02",
+ "x_use_unsafe_inc" : 0
}
@@ -2,20 +2,19 @@
abstract: 'Execute code after a scope finished compilation'
author:
- 'Florian Ragwitz <rafl@debian.org>'
- - 'Peter Rabbitson <ribasushi@cpan.org>'
+ - 'Peter Rabbitson <ribasushi@leporine.io>'
build_requires:
+ ExtUtils::MakeMaker: '0'
File::Glob: '0'
File::Spec: '0'
IPC::Open2: '0'
- Module::Metadata: '0'
- Test::More: '0.89'
- perl: '5.008001'
+ Test::More: '0.88'
+ lib: '0'
configure_requires:
ExtUtils::MakeMaker: '0'
Text::ParseWords: '0'
- perl: '5.008001'
dynamic_config: 1
-generated_by: 'Dist::Zilla version 6.005, CPAN::Meta::Converter version 2.150005'
+generated_by: 'Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010'
keywords:
- code
- hooks
@@ -33,49 +32,37 @@ no_index:
provides:
B::Hooks::EndOfScope:
file: lib/B/Hooks/EndOfScope.pm
- version: '0.21'
+ version: '0.24'
B::Hooks::EndOfScope::PP:
file: lib/B/Hooks/EndOfScope/PP.pm
- version: '0.21'
+ version: '0.24'
B::Hooks::EndOfScope::XS:
file: lib/B/Hooks/EndOfScope/XS.pm
- version: '0.21'
+ version: '0.24'
requires:
Module::Implementation: '0.05'
+ Scalar::Util: '0'
Sub::Exporter::Progressive: '0.001006'
- perl: '5.008001'
+ perl: '5.006001'
strict: '0'
warnings: '0'
resources:
bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=B-Hooks-EndOfScope
homepage: https://github.com/karenetheridge/B-Hooks-EndOfScope
repository: https://github.com/karenetheridge/B-Hooks-EndOfScope.git
-version: '0.21'
+version: '0.24'
x_Dist_Zilla:
perl:
- version: '5.025000'
+ version: '5.027011'
plugins:
-
class: Dist::Zilla::Plugin::Prereqs
config:
Dist::Zilla::Plugin::Prereqs:
phase: develop
- type: requires
- name: '@Author::ETHER/bundle_plugins'
- version: '6.005'
- -
- class: Dist::Zilla::Plugin::RewriteVersion::Transitional
- config:
- Dist::Zilla::Plugin::RewriteVersion:
- add_tarball_name: 0
- finders:
- - ':ExecFiles'
- - ':InstallModules'
- global: 1
- skip_version_provider: 0
- Dist::Zilla::Plugin::RewriteVersion::Transitional: {}
- name: '@Author::ETHER/RewriteVersion::Transitional'
- version: '0.007'
+ type: recommends
+ name: '@Author::ETHER/pluginbundle version'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::PromptIfStale
config:
@@ -85,24 +72,14 @@ x_Dist_Zilla:
modules:
- Dist::Zilla::PluginBundle::Author::ETHER
phase: build
+ run_under_travis: 0
skip: []
name: '@Author::ETHER/stale modules, build'
- version: '0.049'
- -
- class: Dist::Zilla::Plugin::PromptIfStale
- config:
- Dist::Zilla::Plugin::PromptIfStale:
- check_all_plugins: 1
- check_all_prereqs: 1
- modules: []
- phase: release
- skip: []
- name: '@Author::ETHER/stale modules, release'
- version: '0.049'
+ version: '0.054'
-
class: Dist::Zilla::Plugin::FileFinder::ByName
name: '@Author::ETHER/Examples'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Git::GatherDir
config:
@@ -122,27 +99,27 @@ x_Dist_Zilla:
Dist::Zilla::Plugin::Git::GatherDir:
include_untracked: 0
name: '@Author::ETHER/Git::GatherDir'
- version: '2.039'
+ version: '2.043'
-
class: Dist::Zilla::Plugin::MetaYAML
name: '@Author::ETHER/MetaYAML'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::MetaJSON
name: '@Author::ETHER/MetaJSON'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Readme
name: '@Author::ETHER/Readme'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Manifest
name: '@Author::ETHER/Manifest'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::License
name: '@Author::ETHER/License'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::GenerateFile::FromShareDir
config:
@@ -156,18 +133,18 @@ x_Dist_Zilla:
Dist::Zilla::Role::RepoFileInjector:
allow_overwrite: 1
repo_root: .
- version: '0.006'
+ version: '0.007'
name: '@Author::ETHER/generate CONTRIBUTING'
- version: '0.009'
+ version: '0.013'
-
class: Dist::Zilla::Plugin::InstallGuide
name: '@Author::ETHER/InstallGuide'
- version: '1.200006'
+ version: '1.200009'
-
class: Dist::Zilla::Plugin::Test::Compile
config:
Dist::Zilla::Plugin::Test::Compile:
- bail_out_on_fail: 1
+ bail_out_on_fail: '1'
fail_on_warning: author
fake_home: 0
filename: xt/author/00-compile.t
@@ -179,8 +156,9 @@ x_Dist_Zilla:
- ':PerlExecFiles'
- '@Author::ETHER/Examples'
skips: []
+ switch: []
name: '@Author::ETHER/Test::Compile'
- version: '2.054'
+ version: '2.058'
-
class: Dist::Zilla::Plugin::Test::NoTabs
config:
@@ -200,49 +178,68 @@ x_Dist_Zilla:
Dist::Zilla::Plugin::Test::EOL:
filename: xt/author/eol.t
finder:
- - ':InstallModules'
- ':ExecFiles'
- - '@Author::ETHER/Examples'
- - ':TestFiles'
- ':ExtraTestFiles'
+ - ':InstallModules'
+ - ':TestFiles'
+ - '@Author::ETHER/Examples'
trailing_whitespace: 1
name: '@Author::ETHER/Test::EOL'
- version: '0.18'
+ version: '0.19'
-
class: Dist::Zilla::Plugin::MetaTests
name: '@Author::ETHER/MetaTests'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Test::CPAN::Changes
+ config:
+ Dist::Zilla::Plugin::Test::CPAN::Changes:
+ changelog: Changes
name: '@Author::ETHER/Test::CPAN::Changes'
- version: '0.009'
+ version: '0.012'
+ -
+ class: Dist::Zilla::Plugin::GenerateFile::FromShareDir
+ config:
+ Dist::Zilla::Plugin::GenerateFile::FromShareDir:
+ destination_filename: xt/author/changes_has_content.t
+ dist: Dist-Zilla-PluginBundle-Author-ETHER
+ encoding: UTF-8
+ location: build
+ source_filename: changes_has_content.t
+ Dist::Zilla::Role::RepoFileInjector:
+ allow_overwrite: 1
+ repo_root: .
+ version: '0.007'
+ name: '@Author::ETHER/generate xt/author/changes_has_content.t'
+ version: '0.013'
-
class: Dist::Zilla::Plugin::Test::ChangesHasContent
name: '@Author::ETHER/Test::ChangesHasContent'
- version: '0.009'
- -
- class: Dist::Zilla::Plugin::Test::MinimumVersion
- name: '@Author::ETHER/Test::MinimumVersion'
- version: '2.000006'
+ version: '0.011'
-
class: Dist::Zilla::Plugin::PodSyntaxTests
name: '@Author::ETHER/PodSyntaxTests'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Test::PodSpelling
config:
Dist::Zilla::Plugin::Test::PodSpelling:
- directories: []
+ directories:
+ - examples
+ - lib
+ - script
+ - t
+ - xt
spell_cmd: ''
stopwords:
- irc
wordlist: Pod::Wordlist
name: '@Author::ETHER/Test::PodSpelling'
- version: '2.007000'
+ version: '2.007005'
-
class: Dist::Zilla::Plugin::Test::Pod::No404s
name: '@Author::ETHER/Test::Pod::No404s'
- version: '1.003'
+ version: '1.004'
-
class: Dist::Zilla::Plugin::Test::Kwalitee
config:
@@ -258,15 +255,18 @@ x_Dist_Zilla:
-
class: Dist::Zilla::Plugin::Test::ReportPrereqs
name: '@Author::ETHER/Test::ReportPrereqs'
- version: '0.024'
+ version: '0.027'
-
class: Dist::Zilla::Plugin::Test::Portability
+ config:
+ Dist::Zilla::Plugin::Test::Portability:
+ options: ''
name: '@Author::ETHER/Test::Portability'
- version: '2.000006'
+ version: '2.001000'
-
class: Dist::Zilla::Plugin::Git::Describe
name: '@Author::ETHER/Git::Describe'
- version: '0.006'
+ version: '0.007'
-
class: Dist::Zilla::Plugin::SurgicalPodWeaver
config:
@@ -280,79 +280,79 @@ x_Dist_Zilla:
-
class: Pod::Weaver::Plugin::EnsurePod5
name: '@Author::ETHER/EnsurePod5'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Plugin::H1Nester
name: '@Author::ETHER/H1Nester'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Plugin::SingleEncoding
name: '@Author::ETHER/SingleEncoding'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Plugin::Transformer
name: '@Author::ETHER/List'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Plugin::Transformer
name: '@Author::ETHER/Verbatim'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Region
name: '@Author::ETHER/header'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Name
name: '@Author::ETHER/Name'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Version
name: '@Author::ETHER/Version'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Region
name: '@Author::ETHER/prelude'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Generic
name: SYNOPSIS
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Generic
name: DESCRIPTION
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Generic
name: OVERVIEW
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: ATTRIBUTES
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: METHODS
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: FUNCTIONS
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Collect
name: TYPES
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Leftovers
name: '@Author::ETHER/Leftovers'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Region
name: '@Author::ETHER/postlude'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::GenerateSection
name: '@Author::ETHER/generate SUPPORT'
- version: '1.01'
+ version: '1.06'
-
class: Pod::Weaver::Section::AllowOverride
name: '@Author::ETHER/allow override SUPPORT'
@@ -360,7 +360,7 @@ x_Dist_Zilla:
-
class: Pod::Weaver::Section::Authors
name: '@Author::ETHER/Authors'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Contributors
name: '@Author::ETHER/Contributors'
@@ -368,11 +368,11 @@ x_Dist_Zilla:
-
class: Pod::Weaver::Section::Legal
name: '@Author::ETHER/Legal'
- version: '4.013'
+ version: '4.015'
-
class: Pod::Weaver::Section::Region
name: '@Author::ETHER/footer'
- version: '4.013'
+ version: '4.015'
name: '@Author::ETHER/SurgicalPodWeaver'
version: '0.0023'
-
@@ -384,23 +384,13 @@ x_Dist_Zilla:
name: '@Author::ETHER/AutoMetaResources'
version: '1.21'
-
- class: Dist::Zilla::Plugin::AuthorityFromModule
- config:
- Dist::Zilla::Plugin::AuthorityFromModule:
- module: B::Hooks::EndOfScope
- Dist::Zilla::Role::ModuleMetadata:
- Module::Metadata: '1.000032'
- version: '0.003'
- name: '@Author::ETHER/AuthorityFromModule'
- version: '0.006'
- -
class: Dist::Zilla::Plugin::Authority
name: '@Author::ETHER/Authority'
version: '1.009'
-
class: Dist::Zilla::Plugin::MetaNoIndex
name: '@Author::ETHER/MetaNoIndex'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::MetaProvides::Package
config:
@@ -411,21 +401,22 @@ x_Dist_Zilla:
-
class: Dist::Zilla::Plugin::FinderCode
name: ':InstallModules'
- version: '6.005'
+ version: '6.012'
+ include_underscores: 0
Dist::Zilla::Role::MetaProvider::Provider:
- Dist::Zilla::Role::MetaProvider::Provider::VERSION: '2.002000'
- inherit_missing: 0
- inherit_version: 0
- meta_noindex: 1
+ $Dist::Zilla::Role::MetaProvider::Provider::VERSION: '2.002004'
+ inherit_missing: '0'
+ inherit_version: '0'
+ meta_noindex: '1'
Dist::Zilla::Role::ModuleMetadata:
- Module::Metadata: '1.000032'
- version: '0.003'
+ Module::Metadata: '1.000033'
+ version: '0.006'
name: '@Author::ETHER/MetaProvides::Package'
- version: '2.004000'
+ version: '2.004003'
-
class: Dist::Zilla::Plugin::MetaConfig
name: '@Author::ETHER/MetaConfig'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Keywords
config:
@@ -438,51 +429,46 @@ x_Dist_Zilla:
name: '@Author::ETHER/Keywords'
version: '0.007'
-
+ class: Dist::Zilla::Plugin::UseUnsafeInc
+ config:
+ Dist::Zilla::Plugin::UseUnsafeInc:
+ dot_in_INC: 0
+ name: '@Author::ETHER/UseUnsafeInc'
+ version: '0.001'
+ -
class: Dist::Zilla::Plugin::AutoPrereqs
name: '@Author::ETHER/AutoPrereqs'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Prereqs::AuthorDeps
name: '@Author::ETHER/Prereqs::AuthorDeps'
version: '0.006'
-
- class: Dist::Zilla::Plugin::MinimumPerl
- name: '@Author::ETHER/MinimumPerl'
- version: '1.006'
- -
- class: Dist::Zilla::Plugin::Prereqs
- config:
- Dist::Zilla::Plugin::Prereqs:
- phase: develop
- type: recommends
- name: '@Author::ETHER/pluginbundle_version'
- version: '6.005'
- -
class: Dist::Zilla::Plugin::Prereqs
config:
Dist::Zilla::Plugin::Prereqs:
- phase: develop
+ phase: x_Dist_Zilla
type: requires
name: '@Author::ETHER/pod_weaving'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::MakeMaker
config:
Dist::Zilla::Role::TestRunner:
default_jobs: 9
name: '@Author::ETHER/MakeMaker'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Git::Contributors
config:
Dist::Zilla::Plugin::Git::Contributors:
+ git_version: 2.14.2
include_authors: 0
include_releaser: 1
order_by: commits
- paths:
- - .
+ paths: []
name: '@Author::ETHER/Git::Contributors'
- version: '0.023'
+ version: '0.032'
-
class: Dist::Zilla::Plugin::StaticInstall
config:
@@ -490,7 +476,7 @@ x_Dist_Zilla:
dry_run: 1
mode: auto
name: '@Author::ETHER/StaticInstall'
- version: '0.009'
+ version: '0.011'
-
class: Dist::Zilla::Plugin::RunExtraTests
config:
@@ -505,8 +491,8 @@ x_Dist_Zilla:
finder:
- ':InstallModules'
Dist::Zilla::Role::ModuleMetadata:
- Module::Metadata: '1.000032'
- version: '0.003'
+ Module::Metadata: '1.000033'
+ version: '0.006'
name: '@Author::ETHER/CheckSelfDependency'
version: '0.011'
-
@@ -517,23 +503,48 @@ x_Dist_Zilla:
quiet: 1
run:
- "bash -c \"test -e .ackrc && grep -q -- '--ignore-dir=.latest' .ackrc || echo '--ignore-dir=.latest' >> .ackrc; if [[ `dirname '%d'` != .build ]]; then test -e .ackrc && grep -q -- '--ignore-dir=%d' .ackrc || echo '--ignore-dir=%d' >> .ackrc; fi\""
+ version: '0.046'
name: '@Author::ETHER/.ackrc'
- version: '0.043'
+ version: '0.046'
-
class: Dist::Zilla::Plugin::Run::AfterBuild
config:
Dist::Zilla::Plugin::Run::Role::Runner:
eval:
- "if ('%d' =~ /^%n-[.[:xdigit:]]+$/) { unlink '.latest'; symlink '%d', '.latest'; }"
- fatal_errors: 1
+ fatal_errors: 0
quiet: 1
+ version: '0.046'
name: '@Author::ETHER/.latest'
- version: '0.043'
+ version: '0.046'
-
class: Dist::Zilla::Plugin::CheckStrictVersion
name: '@Author::ETHER/CheckStrictVersion'
version: '0.001'
-
+ class: Dist::Zilla::Plugin::CheckMetaResources
+ name: '@Author::ETHER/CheckMetaResources'
+ version: '0.001'
+ -
+ class: Dist::Zilla::Plugin::EnsureLatestPerl
+ config:
+ Dist::Zilla::Plugin::EnsureLatestPerl:
+ Module::CoreList: '5.20180420'
+ name: '@Author::ETHER/EnsureLatestPerl'
+ version: '0.007'
+ -
+ class: Dist::Zilla::Plugin::PromptIfStale
+ config:
+ Dist::Zilla::Plugin::PromptIfStale:
+ check_all_plugins: 1
+ check_all_prereqs: 1
+ modules: []
+ phase: release
+ run_under_travis: 0
+ skip: []
+ name: '@Author::ETHER/stale modules, release'
+ version: '0.054'
+ -
class: Dist::Zilla::Plugin::Git::Check
config:
Dist::Zilla::Plugin::Git::Check:
@@ -543,35 +554,38 @@ x_Dist_Zilla:
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
name: '@Author::ETHER/initial check'
- version: '2.039'
+ version: '2.043'
-
class: Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts
config:
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
name: '@Author::ETHER/Git::CheckFor::MergeConflicts'
- version: '0.013'
+ version: '0.014'
-
class: Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch
config:
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
name: '@Author::ETHER/Git::CheckFor::CorrectBranch'
- version: '0.013'
+ version: '0.014'
-
class: Dist::Zilla::Plugin::Git::Remote::Check
name: '@Author::ETHER/Git::Remote::Check'
- version: 0.2.0
+ version: 0.1.2
-
class: Dist::Zilla::Plugin::CheckPrereqsIndexed
name: '@Author::ETHER/CheckPrereqsIndexed'
- version: '0.018'
+ version: '0.020'
-
class: Dist::Zilla::Plugin::TestRelease
name: '@Author::ETHER/TestRelease'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Git::Check
config:
@@ -582,38 +596,72 @@ x_Dist_Zilla:
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
name: '@Author::ETHER/after tests'
- version: '2.039'
+ version: '2.043'
-
class: Dist::Zilla::Plugin::CheckIssues
name: '@Author::ETHER/CheckIssues'
- version: '0.009'
+ version: '0.010'
-
class: Dist::Zilla::Plugin::UploadToCPAN
name: '@Author::ETHER/UploadToCPAN'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::CopyFilesFromRelease
config:
Dist::Zilla::Plugin::CopyFilesFromRelease:
filename:
- CONTRIBUTING
- - Changes
- INSTALL
- LICENCE
- LICENSE
- ppport.h
match: []
- name: '@Author::ETHER/CopyFilesFromRelease'
- version: '0.006'
+ name: '@Author::ETHER/copy generated files'
+ version: '0.007'
-
class: Dist::Zilla::Plugin::ReadmeAnyFromPod
config:
Dist::Zilla::Role::FileWatcher:
version: '0.006'
name: '@Author::ETHER/ReadmeAnyFromPod'
- version: '0.161170'
+ version: '0.163250'
+ -
+ class: Dist::Zilla::Plugin::Prereqs
+ config:
+ Dist::Zilla::Plugin::Prereqs:
+ phase: develop
+ type: recommends
+ name: '@Author::ETHER/@Git::VersionManager/pluginbundle version'
+ version: '6.012'
+ -
+ class: Dist::Zilla::Plugin::RewriteVersion::Transitional
+ config:
+ Dist::Zilla::Plugin::RewriteVersion:
+ add_tarball_name: 0
+ finders:
+ - ':ExecFiles'
+ - ':InstallModules'
+ global: 1
+ skip_version_provider: 0
+ Dist::Zilla::Plugin::RewriteVersion::Transitional: {}
+ name: '@Author::ETHER/@Git::VersionManager/RewriteVersion::Transitional'
+ version: '0.009'
+ -
+ class: Dist::Zilla::Plugin::MetaProvides::Update
+ name: '@Author::ETHER/@Git::VersionManager/MetaProvides::Update'
+ version: '0.007'
+ -
+ class: Dist::Zilla::Plugin::CopyFilesFromRelease
+ config:
+ Dist::Zilla::Plugin::CopyFilesFromRelease:
+ filename:
+ - Changes
+ match: []
+ name: '@Author::ETHER/@Git::VersionManager/CopyFilesFromRelease'
+ version: '0.007'
-
class: Dist::Zilla::Plugin::Git::Commit
config:
@@ -631,11 +679,12 @@ x_Dist_Zilla:
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
- name: '@Author::ETHER/release snapshot'
- version: '2.039'
+ name: '@Author::ETHER/@Git::VersionManager/release snapshot'
+ version: '2.043'
-
class: Dist::Zilla::Plugin::Git::Tag
config:
@@ -643,22 +692,16 @@ x_Dist_Zilla:
branch: ~
changelog: Changes
signed: 0
- tag: '0.21'
+ tag: '0.24'
tag_format: '%v'
tag_message: v%v%t
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
- name: '@Author::ETHER/Git::Tag'
- version: '2.039'
- -
- class: Dist::Zilla::Plugin::GitHub::Update
- config:
- Dist::Zilla::Plugin::GitHub::Update:
- metacpan: 1
- name: '@Author::ETHER/GitHub::Update'
- version: '0.42'
+ name: '@Author::ETHER/@Git::VersionManager/Git::Tag'
+ version: '2.043'
-
class: Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional
config:
@@ -669,12 +712,12 @@ x_Dist_Zilla:
global: 1
munge_makefile_pl: 1
Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional: {}
- name: '@Author::ETHER/BumpVersionAfterRelease::Transitional'
- version: '0.007'
+ name: '@Author::ETHER/@Git::VersionManager/BumpVersionAfterRelease::Transitional'
+ version: '0.009'
-
class: Dist::Zilla::Plugin::NextRelease
- name: '@Author::ETHER/NextRelease'
- version: '6.005'
+ name: '@Author::ETHER/@Git::VersionManager/NextRelease'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Git::Commit
config:
@@ -683,16 +726,27 @@ x_Dist_Zilla:
commit_msg: 'increment $VERSION after %v release'
Dist::Zilla::Role::Git::DirtyFiles:
allow_dirty:
+ - Build.PL
- Changes
+ - Makefile.PL
allow_dirty_match:
- (?^:^lib/.*\.pm$)
changelog: Changes
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
- name: '@Author::ETHER/post-release commit'
- version: '2.039'
+ name: '@Author::ETHER/@Git::VersionManager/post-release commit'
+ version: '2.043'
+ -
+ class: Dist::Zilla::Plugin::Prereqs
+ config:
+ Dist::Zilla::Plugin::Prereqs:
+ phase: x_Dist_Zilla
+ type: requires
+ name: '@Author::ETHER/@Git::VersionManager/prereqs for @Git::VersionManager'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Git::Push
config:
@@ -701,9 +755,17 @@ x_Dist_Zilla:
- origin
remotes_must_exist: 1
Dist::Zilla::Role::Git::Repo:
+ git_version: 2.14.2
repo_root: .
name: '@Author::ETHER/Git::Push'
- version: '2.039'
+ version: '2.043'
+ -
+ class: Dist::Zilla::Plugin::GitHub::Update
+ config:
+ Dist::Zilla::Plugin::GitHub::Update:
+ metacpan: 1
+ name: '@Author::ETHER/GitHub::Update'
+ version: '0.44'
-
class: Dist::Zilla::Plugin::Run::AfterRelease
config:
@@ -712,8 +774,9 @@ x_Dist_Zilla:
quiet: 0
run:
- REDACTED
+ version: '0.046'
name: '@Author::ETHER/install release'
- version: '0.043'
+ version: '0.046'
-
class: Dist::Zilla::Plugin::Run::AfterRelease
config:
@@ -722,12 +785,29 @@ x_Dist_Zilla:
- 'print "release complete!\xa"'
fatal_errors: 1
quiet: 1
+ version: '0.046'
name: '@Author::ETHER/release complete'
- version: '0.043'
+ version: '0.046'
-
class: Dist::Zilla::Plugin::ConfirmRelease
name: '@Author::ETHER/ConfirmRelease'
- version: '6.005'
+ version: '6.012'
+ -
+ class: Dist::Zilla::Plugin::Prereqs
+ config:
+ Dist::Zilla::Plugin::Prereqs:
+ phase: x_Dist_Zilla
+ type: requires
+ name: '@Author::ETHER/prereqs for @Author::ETHER'
+ version: '6.012'
+ -
+ class: Dist::Zilla::Plugin::Prereqs
+ config:
+ Dist::Zilla::Plugin::Prereqs:
+ phase: runtime
+ type: requires
+ name: Prereqs
+ version: '6.012'
-
class: Dist::Zilla::Plugin::Prereqs
config:
@@ -735,70 +815,72 @@ x_Dist_Zilla:
phase: develop
type: requires
name: DevelopRequires
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::DynamicPrereqs
config:
Dist::Zilla::Role::ModuleMetadata:
- Module::Metadata: '1.000032'
- version: '0.003'
+ Module::Metadata: '1.000033'
+ version: '0.006'
name: DynamicPrereqs
- version: '0.029'
+ version: '0.034'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':InstallModules'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':IncModules'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':TestFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ExtraTestFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ExecFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':PerlExecFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':ShareFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':MainModule'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':AllFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::FinderCode
name: ':NoFiles'
- version: '6.005'
+ version: '6.012'
-
class: Dist::Zilla::Plugin::VerifyPhases
name: '@Author::ETHER/PHASE VERIFICATION'
- version: '0.014'
+ version: '0.016'
zilla:
class: Dist::Zilla::Dist::Builder
config:
- is_trial: 0
- version: '6.005'
+ is_trial: '0'
+ version: '6.012'
x_authority: cpan:FLORA
-x_authority_from_module: B::Hooks::EndOfScope
x_contributors:
- 'Karen Etheridge <ether@cpan.org>'
- - 'Christian Walde <walde.christian@googlemail.com>'
- - 'Simon Wilper <sxw@chronowerks.de>'
- 'Tatsuhiko Miyagawa <miyagawa@bulknews.net>'
+ - 'Christian Walde <walde.christian@googlemail.com>'
- 'Tomas Doran <bobtfish@bobtfish.net>'
-x_permissions_from_module: B::Hooks::EndOfScope
+ - 'Graham Knop <haarg@haarg.org>'
+ - 'Simon Wilper <sxw@chronowerks.de>'
+x_generated_by_perl: v5.27.11
+x_serialization_backend: 'YAML::Tiny version 1.73'
+x_use_unsafe_inc: 0
@@ -1,36 +1,38 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.005.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.012.
use strict;
use warnings;
-use 5.008001;
+use 5.006001;
use ExtUtils::MakeMaker;
my %WriteMakefileArgs = (
"ABSTRACT" => "Execute code after a scope finished compilation",
- "AUTHOR" => "Florian Ragwitz <rafl\@debian.org>, Peter Rabbitson <ribasushi\@cpan.org>",
+ "AUTHOR" => "Florian Ragwitz <rafl\@debian.org>, Peter Rabbitson <ribasushi\@leporine.io>",
"CONFIGURE_REQUIRES" => {
"ExtUtils::MakeMaker" => 0,
"Text::ParseWords" => 0
},
"DISTNAME" => "B-Hooks-EndOfScope",
"LICENSE" => "perl",
- "MIN_PERL_VERSION" => "5.008001",
+ "MIN_PERL_VERSION" => "5.006001",
"NAME" => "B::Hooks::EndOfScope",
"PREREQ_PM" => {
"Module::Implementation" => "0.05",
+ "Scalar::Util" => 0,
"Sub::Exporter::Progressive" => "0.001006",
"strict" => 0,
"warnings" => 0
},
"TEST_REQUIRES" => {
+ "ExtUtils::MakeMaker" => 0,
"File::Glob" => 0,
"File::Spec" => 0,
"IPC::Open2" => 0,
- "Module::Metadata" => 0,
- "Test::More" => "0.89"
+ "Test::More" => "0.88",
+ "lib" => 0
},
- "VERSION" => "0.21",
+ "VERSION" => "0.24",
"test" => {
"TESTS" => "t/*.t"
}
@@ -38,32 +40,29 @@ my %WriteMakefileArgs = (
my %FallbackPrereqs = (
+ "ExtUtils::MakeMaker" => 0,
"File::Glob" => 0,
"File::Spec" => 0,
"IPC::Open2" => 0,
"Module::Implementation" => "0.05",
- "Module::Metadata" => 0,
+ "Scalar::Util" => 0,
"Sub::Exporter::Progressive" => "0.001006",
- "Test::More" => "0.89",
+ "Test::More" => "0.88",
+ "lib" => 0,
"strict" => 0,
"warnings" => 0
);
-# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.029
-if (!want_pp() and can_xs()) {
+# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.034
+if ("$]" >= 5.008004 and !want_pp() and can_xs()) {
requires('Variable::Magic', '0.48');
# make sure we smoke the pure-perl version fallback
test_requires('Devel::Hide', '0.0007') if is_smoker();
}
-else {
- requires('constant');
- if ("$]" < '5.010') {
- requires('Scalar::Util');
- } else {
- requires('Hash::Util::FieldHash');
- requires('Tie::Hash');
- }
+if ("$]" >= '5.010') {
+ requires('Hash::Util::FieldHash');
+ requires('Tie::Hash');
}
@@ -78,15 +77,18 @@ delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
WriteMakefile(%WriteMakefileArgs);
-# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.029
+# inserted by Dist::Zilla::Plugin::DynamicPrereqs 0.034
sub _add_prereq {
my ($mm_key, $module, $version_or_range) = @_;
- warn "$module already exists in $mm_key -- need to do a sane metamerge!"
+ $version_or_range ||= 0;
+ warn "$module already exists in $mm_key (at version $WriteMakefileArgs{$mm_key}{$module}) -- need to do a sane metamerge!"
if exists $WriteMakefileArgs{$mm_key}{$module}
- and $WriteMakefileArgs{$mm_key}{$module} ne ($version_or_range || 0);
- warn "$module already exists in FallbackPrereqs -- need to do a sane metamerge!"
- if exists $FallbackPrereqs{$module} and $FallbackPrereqs{$module} ne ($version_or_range || 0);
- $WriteMakefileArgs{$mm_key}{$module} = $FallbackPrereqs{$module} = $version_or_range || 0;
+ and $WriteMakefileArgs{$mm_key}{$module} ne '0'
+ and $WriteMakefileArgs{$mm_key}{$module} ne $version_or_range;
+ warn "$module already exists in FallbackPrereqs (at version $WriteMakefileArgs{$mm_key}{$module}) -- need to do a sane metamerge!"
+ if exists $FallbackPrereqs{$module} and $FallbackPrereqs{$module} ne '0'
+ and $FallbackPrereqs{$module} ne $version_or_range;
+ $WriteMakefileArgs{$mm_key}{$module} = $FallbackPrereqs{$module} = $version_or_range;
return;
}
@@ -1,7 +1,5 @@
-
-
This archive contains the distribution B-Hooks-EndOfScope,
-version 0.21:
+version 0.24:
Execute code after a scope finished compilation
@@ -11,5 +9,4 @@ 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 v6.005.
-
+This README file was generated by Dist::Zilla::Plugin::Readme v6.012.
@@ -1,31 +1,40 @@
name = B-Hooks-EndOfScope
author = Florian Ragwitz <rafl@debian.org>
-author = Peter Rabbitson <ribasushi@cpan.org>
+author = Peter Rabbitson <ribasushi@leporine.io>
license = Perl_5
copyright_year = 2008
copyright_holder = Florian Ragwitz
[@Author::ETHER]
-:version = 0.094
+:version = 0.119 ; for installer -> EUMM dep
installer = MakeMaker
surgical_podweaver = 1
-remove = PodCoverageTests ; TODO
-remove = Test::CleanNamespaces ; TODO: fix Sub::Exporter
+-remove = MinimumPerl ; 5.8.4 is hardcoded as the minimum in ::XS
+-remove = Test::MinimumVersion ; ""
Authority.authority = cpan:FLORA
Git::Tag.tag_format = %v
Test::Version.has_version = 0 ; for internal modules (FIXME: new option forthcoming)
-Test::MinimumVersion.max_target_perl = 5.008001
AutoPrereqs.finder = :MainModule ; only look in main module for runtime prereqs
AutoPrereqs.skip[0] = ^B::Hooks::EndOfScope
AutoPrereqs.skip[1] = ^Devel::Hide$
+Test::ReportPrereqs.include = DynaLoader
+
+[Prereqs]
+perl = 5.006001
+Scalar::Util = 0
+
+; authordep Dist::Zilla::Plugin::SurgicalPodWeaver
[Prereqs / DevelopRequires]
Devel::Hide = 0.0007 ; releasers *must* test both the XS and PP paths
+; authordep ExtUtils::HasCompiler = 0.014
[DynamicPrereqs]
:version = 0.029
-delimiter = |
--body = |if (!want_pp() and can_xs()) {
+-body = |if ("$]" >= 5.008004 and !want_pp() and can_xs()) {
; IMPORTANT!!! when changing prereqs here, also update in B::Hooks::EndOfScope::XS
-body = | requires('Variable::Magic', '0.48');
-body = |
@@ -33,12 +42,7 @@ Devel::Hide = 0.0007 ; releasers *must* test both the XS and PP paths
; IMPORTANT!!! when changing prereqs here, also update in t/10-test_without_vm_pure_pp.t
-body = | test_requires('Devel::Hide', '0.0007') if is_smoker();
-body = |}
--body = |else {
--body = | requires('constant');
--body = | if ("$]" < '5.010') {
--body = | requires('Scalar::Util');
--body = | } else {
--body = | requires('Hash::Util::FieldHash');
--body = | requires('Tie::Hash');
--body = | }
+-body = |if ("$]" >= '5.010') {
+-body = | requires('Hash::Util::FieldHash');
+-body = | requires('Tie::Hash');
-body = |}
@@ -1,10 +1,10 @@
package ExtUtils::HasCompiler;
-$ExtUtils::HasCompiler::VERSION = '0.014';
+$ExtUtils::HasCompiler::VERSION = '0.021';
use strict;
use warnings;
use base 'Exporter';
-our @EXPORT_OK = qw/can_compile_loadable_object/;
+our @EXPORT_OK = qw/can_compile_loadable_object can_compile_static_library can_compile_extension/;
our %EXPORT_TAGS = (all => \@EXPORT_OK);
use Config;
@@ -75,23 +75,14 @@ sub can_compile_loadable_object {
my ($source_handle, $source_name) = tempfile('TESTXXXX', DIR => $tempdir, SUFFIX => '.c', UNLINK => 1);
my $basename = basename($source_name, '.c');
-
- my $shortname = '_Loadable' . $counter++;
- my $package = "ExtUtils::HasCompiler::$shortname";
- printf $source_handle $loadable_object_format, $basename, $package or do { carp "Couldn't write to $source_name: $!"; return };
- close $source_handle or do { carp "Couldn't close $source_name: $!"; return };
-
my $abs_basename = catfile($tempdir, $basename);
- my $object_file = $abs_basename . $config->get('_o');
- my $loadable_object = $abs_basename . '.' . $config->get('dlext');
- my $incdir = catdir($config->get('archlibexp'), 'CORE');
- my ($cc, $ccflags, $optimize, $cccdlflags, $ld, $ldflags, $lddlflags, $libperl, $perllibs) = map { $config->get($_) } qw/cc ccflags optimize cccdlflags ld ldflags lddlflags libperl perllibs/;
+ my ($cc, $ccflags, $optimize, $cccdlflags, $ld, $ldflags, $lddlflags, $libperl, $perllibs, $archlibexp, $_o, $dlext) = map { $config->get($_) } qw/cc ccflags optimize cccdlflags ld ldflags lddlflags libperl perllibs archlibexp _o dlext/;
+
+ my $incdir = catdir($archlibexp, 'CORE');
+ my $object_file = $abs_basename.$_o;
+ my $loadable_object = "$abs_basename.$dlext";
- if ($prelinking{$^O}) {
- require ExtUtils::Mksymlists;
- ExtUtils::Mksymlists::Mksymlists(NAME => $basename, FILE => $abs_basename, IMPORTS => {});
- }
my @commands;
if ($^O eq 'MSWin32' && $cc =~ /^cl/) {
push @commands, qq{$cc $ccflags $cccdlflags $optimize /I "$incdir" /c $source_name /Fo$object_file};
@@ -124,9 +115,19 @@ sub can_compile_loadable_object {
push @extra, qq{"-L$incdir"}, '-lperl', $perllibs;
}
push @commands, qq{$cc $ccflags $optimize "-I$incdir" $cccdlflags -c $source_name -o $object_file};
- push @commands, qq{$cc $optimize $object_file -o $loadable_object $lddlflags @extra};
+ push @commands, qq{$ld $object_file -o $loadable_object $lddlflags @extra};
}
+ if ($prelinking{$^O}) {
+ require ExtUtils::Mksymlists;
+ ExtUtils::Mksymlists::Mksymlists(NAME => $basename, FILE => $abs_basename, IMPORTS => {});
+ }
+
+ my $shortname = '_Loadable' . $counter++;
+ my $package = "ExtUtils::HasCompiler::$shortname";
+ printf $source_handle $loadable_object_format, $basename, $package or do { carp "Couldn't write to $source_name: $!"; return };
+ close $source_handle or do { carp "Couldn't close $source_name: $!"; return };
+
for my $command (@commands) {
print $output "$command\n" if not $args{quiet};
system $command and do { carp "Couldn't execute $command: $!"; return };
@@ -152,6 +153,54 @@ sub can_compile_loadable_object {
}
}
+my %static_unsupported_on = map { $_ => 1 } qw/VMS aix MSWin32 cygwin/;
+sub can_compile_static_library {
+ my %args = @_;
+
+ my $output = $args{output} || \*STDOUT;
+
+ my $config = $args{config} || 'ExtUtils::HasCompiler::Config';
+ return if $config->get('useshrplib') eq 'true';
+
+ my ($source_handle, $source_name) = tempfile('TESTXXXX', DIR => $tempdir, SUFFIX => '.c', UNLINK => 1);
+ my $basename = basename($source_name, '.c');
+ my $abs_basename = catfile($tempdir, $basename);
+
+ my ($cc, $ccflags, $optimize, $ar, $full_ar, $ranlib, $archlibexp, $_o, $lib_ext) = map { $config->get($_) } qw/cc ccflags optimize ar full_ar ranlib archlibexp _o lib_ext/;
+ my $incdir = catdir($archlibexp, 'CORE');
+ my $object_file = "$abs_basename$_o";
+ my $static_library = $abs_basename.$lib_ext;
+
+ my @commands;
+ if ($static_unsupported_on{$^O}) {
+ return;
+ }
+ else {
+ my $my_ar = length $full_ar ? $full_ar : $ar;
+ push @commands, qq{$cc $ccflags $optimize "-I$incdir" -c $source_name -o $object_file};
+ push @commands, qq{$my_ar cr $static_library $object_file};
+ push @commands, qq{$ranlib $static_library} if $ranlib ne ':';
+ }
+
+ my $shortname = '_Loadable' . $counter++;
+ my $package = "ExtUtils::HasCompiler::$shortname";
+ printf $source_handle $loadable_object_format, $basename, $package or do { carp "Couldn't write to $source_name: $!"; return };
+ close $source_handle or do { carp "Couldn't close $source_name: $!"; return };
+
+ for my $command (@commands) {
+ print $output "$command\n" if not $args{quiet};
+ system $command and do { carp "Couldn't execute $command: $!"; return };
+ }
+ return 1;
+}
+
+sub can_compile_extension {
+ my %args = @_;
+ $args{config} ||= 'ExtUtils::HasCompiler::Config';
+ my $linktype = $args{linktype} || ($args{config}->get('usedl') ? 'dynamic' : 'static');
+ return $linktype eq 'static' ? can_compile_static_library(%args) : can_compile_loadable_object(%args);
+}
+
sub ExtUtils::HasCompiler::Config::get {
my (undef, $key) = @_;
return $ENV{uc $key} || $Config{$key};
@@ -173,7 +222,17 @@ ExtUtils::HasCompiler - Check for the presence of a compiler
=head1 VERSION
-version 0.014
+version 0.021
+
+=head1 SYNOPSIS
+
+ use ExtUtils::HasCompiler 'can_compile_extension';
+ if (can_compile_extension()) {
+ ...
+ }
+ else {
+ ...
+ }
=head1 DESCRIPTION
@@ -203,6 +262,34 @@ This causes can_compile_loadable_object to not try to load the generated object.
=back
+=head2 can_compile_static_library(%opts)
+
+This checks if the system can compile and link a perl static library. It does not check it it can compile a new perl with it. It may take the following options:
+
+=over 4
+
+=item * quiet
+
+Do not output the executed compilation commands.
+
+=item * config
+
+An L<ExtUtils::Config|ExtUtils::Config> (compatible) object for configuration.
+
+=back
+
+=head2 can_compile_extension(%opts)
+
+This will call either C<can_compile_loadable_object>, or C<can_compile_static_library>, depending on which is the default on your configuration. In addition to the arguments listed above, it can take one more optional argument:
+
+=over 4
+
+=item * linktype
+
+This will force the linktype to be either static or dynamic. Dynamic compilation on a static perl won't work, but static libraries can be viable on a dynamic perl.
+
+=back
+
=head1 AUTHOR
Leon Timmermans <leont@cpan.org>
@@ -7,7 +7,7 @@ package # hide from pause
use strict;
use warnings;
-our $VERSION = '0.21';
+our $VERSION = '0.24';
use Tie::Hash ();
use Hash::Util::FieldHash 'fieldhash';
@@ -39,7 +39,7 @@ sub on_scope_end (&) {
tie(%hh, 'B::Hooks::EndOfScope::PP::_TieHintHashFieldHash')
unless tied %hh;
- push @{ $hh{\%^H} ||= [] }, shift;
+ push @{ $hh{\%^H} ||= [] }, $_[0];
}
1;
@@ -1,4 +1,4 @@
-# Implementation of a pure-perl on_scope_end for perl 5.8.X
+# Implementation of a pure-perl on_scope_end for perls < 5.10
# (relies on lack of compile/runtime duality of %^H before 5.10
# which makes guard object operation possible)
@@ -8,14 +8,38 @@ package # hide from the pauses
use strict;
use warnings;
-our $VERSION = '0.21';
+our $VERSION = '0.24';
use Scalar::Util ();
+use constant _NEEDS_MEMORY_CORRUPTION_FIXUP => (
+ "$]" >= 5.008
+ and
+ "$]" < 5.008004
+) ? 1 : 0;
+
+
+use constant _PERL_VERSION => "$]";
# This is the original implementation, which sadly is broken
# on perl 5.10+ within string evals
sub on_scope_end (&) {
- $^H |= 0x020000;
+
+ # the scope-implicit %^H localization is a 5.8+ feature
+ $^H |= 0x020000
+ if _PERL_VERSION >= 5.008;
+
+ # the explicit localization of %^H works on anything < 5.10
+ # but we use it only on 5.6 where fiddling $^H has no effect
+ local %^H = %^H
+ if _PERL_VERSION < 5.008;
+
+ # Workaround for memory corruption during implicit $^H-induced
+ # localization of %^H on 5.8.0~5.8.3, see extended comment below
+ bless \%^H, 'B::Hooks::EndOfScope::PP::HintHash::__GraveyardTransport' if (
+ _NEEDS_MEMORY_CORRUPTION_FIXUP
+ and
+ ref \%^H eq 'HASH' # only bless if it is a "pure hash" to start with
+ );
# localised %^H behaves funny on 5.8 - a
# 'local %^H;'
@@ -26,17 +50,45 @@ sub on_scope_end (&) {
push @{
$^H{sprintf '__B_H_EOS__guardstack_0X%x', Scalar::Util::refaddr(\%^H) }
||= bless ([], 'B::Hooks::EndOfScope::PP::_SG_STACK')
- }, shift;
+ }, $_[0];
}
-package # hide from the pauses
- B::Hooks::EndOfScope::PP::_SG_STACK;
+sub B::Hooks::EndOfScope::PP::_SG_STACK::DESTROY {
+ B::Hooks::EndOfScope::PP::__invoke_callback($_) for @{$_[0]};
+}
-use warnings;
-use strict;
+# This scope implements a clunky yet effective workaround for a core perl bug
+# https://rt.perl.org/Public/Bug/Display.html?id=27040#txn-82797
+#
+# While we can not prevent the hinthash being marked for destruction twice,
+# we *can* intercept the first DESTROY pass, and squirrel away the entire
+# structure, until a time it can (hopefully) no longer do any visible harm
+#
+# There still *will* be corruption by the time we get to free it for real,
+# since we can not prevent Perl's erroneous SAVEFREESV mark. What we hope is
+# that by then the corruption will no longer matter
+#
+# Yes, this code does leak by design. Yes it is better than the alternative.
+{
+ my @Hint_Hash_Graveyard;
-sub DESTROY {
- B::Hooks::EndOfScope::PP::__invoke_callback($_) for @{$_[0]};
+ # "Leak" this entire structure: ensures it and its contents will not be
+ # garbage collected until the very very very end
+ push @Hint_Hash_Graveyard, \@Hint_Hash_Graveyard
+ if _NEEDS_MEMORY_CORRUPTION_FIXUP;
+
+ sub B::Hooks::EndOfScope::PP::HintHash::__GraveyardTransport::DESTROY {
+
+ # Resurrect the hinthash being destroyed, persist it into the graveyard
+ push @Hint_Hash_Graveyard, $_[0];
+
+ # ensure we won't try to re-resurrect during GlobalDestroy
+ bless $_[0], 'B::Hooks::EndOfScope::PP::HintHash::__DeactivateGraveyardTransport';
+
+ # Perform explicit free of elements (if any) triggering all callbacks
+ # This is what would have happened without this code being active
+ %{$_[0]} = ();
+ }
}
1;
@@ -4,7 +4,7 @@ package B::Hooks::EndOfScope::PP;
use warnings;
use strict;
-our $VERSION = '0.21';
+our $VERSION = '0.24';
use constant _PERL_VERSION => "$]";
@@ -58,7 +58,7 @@ B::Hooks::EndOfScope::PP - Execute code after a scope finished compilation - PP
=head1 VERSION
-version 0.21
+version 0.24
=head1 DESCRIPTION
@@ -96,7 +96,7 @@ Florian Ragwitz <rafl@debian.org>
=item *
-Peter Rabbitson <ribasushi@cpan.org>
+Peter Rabbitson <ribasushi@leporine.io>
=back
@@ -4,7 +4,16 @@ package B::Hooks::EndOfScope::XS;
use strict;
use warnings;
-our $VERSION = '0.21';
+our $VERSION = '0.24';
+
+# Limit the V::M-based (XS) version to perl 5.8.4+
+#
+# Given the unorthodox stuff we do to work around the hinthash double-free
+# might as well play it safe and only implement it in the PP version
+# and leave it at that
+# https://rt.perl.org/Public/Bug/Display.html?id=27040#txn-82797
+#
+use 5.008004;
use Variable::Magic 0.48 ();
use Sub::Exporter::Progressive 0.001006 -setup => {
@@ -17,7 +26,7 @@ my $wiz = Variable::Magic::wizard
free => sub { $_->() for @{ $_[1] }; () },
# When someone localise %^H, our magic doesn't want to be copied
# down. We want it to be around only for the scope we've initially
- # attached ourselfs to. Merely having MGf_LOCAL and a noop svt_local
+ # attached ourselves to. Merely having MGf_LOCAL and a noop svt_local
# callback achieves this. If anything wants to attach more magic of our
# kind to a localised %^H, things will continue to just work as we'll be
# attached with a new and empty callback list.
@@ -25,15 +34,13 @@ my $wiz = Variable::Magic::wizard
;
sub on_scope_end (&) {
- my $cb = shift;
-
$^H |= 0x020000;
if (my $stack = Variable::Magic::getdata %^H, $wiz) {
- push @{ $stack }, $cb;
+ push @{ $stack }, $_[0];
}
else {
- Variable::Magic::cast %^H, $wiz, $cb;
+ Variable::Magic::cast %^H, $wiz, $_[0];
}
}
@@ -51,7 +58,7 @@ B::Hooks::EndOfScope::XS - Execute code after a scope finished compilation - XS
=head1 VERSION
-version 0.21
+version 0.24
=head1 DESCRIPTION
@@ -87,7 +94,7 @@ Florian Ragwitz <rafl@debian.org>
=item *
-Peter Rabbitson <ribasushi@cpan.org>
+Peter Rabbitson <ribasushi@leporine.io>
=back
@@ -1,16 +1,13 @@
-package B::Hooks::EndOfScope; # git description: 0.20-3-ge7283e2
+package B::Hooks::EndOfScope; # git description: 0.23-2-ga391106
# ABSTRACT: Execute code after a scope finished compilation
# KEYWORDS: code hooks execution scope
use strict;
use warnings;
-our $VERSION = '0.21';
+our $VERSION = '0.24';
-# note - a %^H tie() fallback will probably work on 5.6 as well,
-# if you need to go that low - sane patches passing *all* tests
-# will be gladly accepted
-use 5.008001;
+use 5.006001;
BEGIN {
use Module::Implementation 0.05;
@@ -39,7 +36,7 @@ B::Hooks::EndOfScope - Execute code after a scope finished compilation
=head1 VERSION
-version 0.21
+version 0.24
=head1 SYNOPSIS
@@ -63,13 +60,18 @@ compiled.
This is exported by default. See L<Sub::Exporter> on how to customize it.
-=head1 PURE-PERL MODE CAVEAT
+=head1 LIMITATIONS
+
+=head2 Pure-perl mode caveat
+
+This caveat applies to B<any> version of perl where L<Variable::Magic>
+is unavailable or otherwise disabled.
While L<Variable::Magic> has access to some very dark sorcery to make it
possible to throw an exception from within a callback, the pure-perl
implementation does not have access to these hacks. Therefore, what
-would have been a compile-time exception is instead converted to a
-warning, and your execution will continue as if the exception never
+would have been a B<compile-time exception> is instead B<converted to a
+warning>, and your execution will continue as if the exception never
happened.
To explicitly request an XS (or PP) implementation one has two choices. Either
@@ -82,6 +84,32 @@ to import from the desired implementation explicitly:
or by setting C<$ENV{B_HOOKS_ENDOFSCOPE_IMPLEMENTATION}> to either C<XS> or
C<PP>.
+=head2 Perl 5.8.0 ~ 5.8.3
+
+Due to a L<core interpreter bug
+|https://rt.perl.org/Public/Bug/Display.html?id=27040#txn-82797> present in
+older perl versions, the implementation of B::Hooks::EndOfScope deliberately
+leaks a single empty hash for every scope being cleaned. This is done to
+avoid the memory corruption associated with the bug mentioned above.
+
+In order to stabilize this workaround use of L<Variable::Magic> is disabled
+on perls prior to version 5.8.4. On such systems loading/requesting
+L<B::Hooks::EndOfScope::XS> explicitly will result in a compile-time
+exception.
+
+=head2 Perl versions 5.6.x
+
+Versions of perl before 5.8.0 lack a feature allowing changing the visibility
+of C<%^H> via setting bit 17 within C<$^H>. As such the only way to achieve
+the effect necessary for this module to work, is to use the C<local> operator
+explicitly on these platforms. This might lead to unexpected interference
+with other scope-driven libraries relying on the same mechanism. On the flip
+side there are no such known incompatibilities at the time this note was
+written.
+
+For further details on the unavailable behavior please refer to the test
+file F<t/02-localise.t> included with the distribution.
+
=head1 SEE ALSO
L<Sub::Exporter>
@@ -103,13 +131,13 @@ Florian Ragwitz <rafl@debian.org>
=item *
-Peter Rabbitson <ribasushi@cpan.org>
+Peter Rabbitson <ribasushi@leporine.io>
=back
=head1 CONTRIBUTORS
-=for stopwords Karen Etheridge Christian Walde Simon Wilper Tatsuhiko Miyagawa Tomas Doran
+=for stopwords Karen Etheridge Tatsuhiko Miyagawa Christian Walde Tomas Doran Graham Knop Simon Wilper
=over 4
@@ -119,19 +147,23 @@ Karen Etheridge <ether@cpan.org>
=item *
+Tatsuhiko Miyagawa <miyagawa@bulknews.net>
+
+=item *
+
Christian Walde <walde.christian@googlemail.com>
=item *
-Simon Wilper <sxw@chronowerks.de>
+Tomas Doran <bobtfish@bobtfish.net>
=item *
-Tatsuhiko Miyagawa <miyagawa@bulknews.net>
+Graham Knop <haarg@haarg.org>
=item *
-Tomas Doran <bobtfish@bobtfish.net>
+Simon Wilper <sxw@chronowerks.de>
=back
@@ -2,91 +2,26 @@ do { my $x = {
'configure' => {
'requires' => {
'ExtUtils::MakeMaker' => '0',
- 'Text::ParseWords' => '0',
- 'perl' => '5.008001'
+ 'Text::ParseWords' => '0'
}
},
'develop' => {
'recommends' => {
- 'Dist::Zilla::PluginBundle::Author::ETHER' => '0.114'
+ 'Dist::Zilla::PluginBundle::Author::ETHER' => '0.137',
+ 'Dist::Zilla::PluginBundle::Git::VersionManager' => '0.007'
},
'requires' => {
'Devel::Hide' => '0.0007',
- 'Dist::Zilla' => '5',
- 'Dist::Zilla::Plugin::Authority' => '1.009',
- 'Dist::Zilla::Plugin::AuthorityFromModule' => '0.002',
- 'Dist::Zilla::Plugin::AutoMetaResources' => '0',
- 'Dist::Zilla::Plugin::AutoPrereqs' => '5.038',
- 'Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional' => '0.004',
- 'Dist::Zilla::Plugin::CheckIssues' => '0',
- 'Dist::Zilla::Plugin::CheckPrereqsIndexed' => '0',
- 'Dist::Zilla::Plugin::CheckSelfDependency' => '0',
- 'Dist::Zilla::Plugin::CheckStrictVersion' => '0',
- 'Dist::Zilla::Plugin::ConfirmRelease' => '0',
- 'Dist::Zilla::Plugin::CopyFilesFromRelease' => '0',
- 'Dist::Zilla::Plugin::DynamicPrereqs' => '0.029',
- 'Dist::Zilla::Plugin::FileFinder::ByName' => '0',
- 'Dist::Zilla::Plugin::GenerateFile::FromShareDir' => '0',
- 'Dist::Zilla::Plugin::Git::Check' => '0',
- 'Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch' => '0.004',
- 'Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts' => '0',
- 'Dist::Zilla::Plugin::Git::Commit' => '2.020',
- 'Dist::Zilla::Plugin::Git::Contributors' => '0.004',
- 'Dist::Zilla::Plugin::Git::Describe' => '0.004',
- 'Dist::Zilla::Plugin::Git::GatherDir' => '2.016',
- 'Dist::Zilla::Plugin::Git::Push' => '0',
- 'Dist::Zilla::Plugin::Git::Remote::Check' => '0',
- 'Dist::Zilla::Plugin::Git::Tag' => '0',
- 'Dist::Zilla::Plugin::GitHub::Update' => '0.40',
- 'Dist::Zilla::Plugin::GithubMeta' => '0.54',
- 'Dist::Zilla::Plugin::InstallGuide' => '1.200005',
- 'Dist::Zilla::Plugin::Keywords' => '0.004',
- 'Dist::Zilla::Plugin::License' => '5.038',
- 'Dist::Zilla::Plugin::MakeMaker' => '0',
- 'Dist::Zilla::Plugin::Manifest' => '0',
- 'Dist::Zilla::Plugin::MetaConfig' => '0',
- 'Dist::Zilla::Plugin::MetaJSON' => '0',
- 'Dist::Zilla::Plugin::MetaNoIndex' => '0',
- 'Dist::Zilla::Plugin::MetaProvides::Package' => '1.15000002',
- 'Dist::Zilla::Plugin::MetaTests' => '0',
- 'Dist::Zilla::Plugin::MetaYAML' => '0',
- 'Dist::Zilla::Plugin::MinimumPerl' => '1.006',
- 'Dist::Zilla::Plugin::MojibakeTests' => '0.8',
- 'Dist::Zilla::Plugin::NextRelease' => '5.033',
- 'Dist::Zilla::Plugin::PodSyntaxTests' => '5.040',
- 'Dist::Zilla::Plugin::Prereqs' => '0',
- 'Dist::Zilla::Plugin::Prereqs::AuthorDeps' => '0',
- 'Dist::Zilla::Plugin::PromptIfStale' => '0',
- 'Dist::Zilla::Plugin::Readme' => '0',
- 'Dist::Zilla::Plugin::ReadmeAnyFromPod' => '0.142180',
- 'Dist::Zilla::Plugin::RewriteVersion::Transitional' => '0.004',
- 'Dist::Zilla::Plugin::Run::AfterBuild' => '0.038',
- 'Dist::Zilla::Plugin::Run::AfterRelease' => '0.038',
- 'Dist::Zilla::Plugin::RunExtraTests' => '0.024',
- 'Dist::Zilla::Plugin::StaticInstall' => '0.005',
- 'Dist::Zilla::Plugin::SurgicalPodWeaver' => '0',
- 'Dist::Zilla::Plugin::Test::CPAN::Changes' => '0.008',
- 'Dist::Zilla::Plugin::Test::ChangesHasContent' => '0',
- 'Dist::Zilla::Plugin::Test::Compile' => '2.039',
- 'Dist::Zilla::Plugin::Test::EOL' => '0.17',
- 'Dist::Zilla::Plugin::Test::Kwalitee' => '2.10',
- 'Dist::Zilla::Plugin::Test::MinimumVersion' => '2.000003',
- 'Dist::Zilla::Plugin::Test::NoTabs' => '0.08',
- 'Dist::Zilla::Plugin::Test::Pod::No404s' => '1.002',
- 'Dist::Zilla::Plugin::Test::PodSpelling' => '2.006003',
- 'Dist::Zilla::Plugin::Test::Portability' => '0',
- 'Dist::Zilla::Plugin::Test::ReportPrereqs' => '0.022',
- 'Dist::Zilla::Plugin::TestRelease' => '0',
- 'Dist::Zilla::Plugin::UploadToCPAN' => '0',
- 'Dist::Zilla::PluginBundle::Author::ETHER' => '0.094',
+ 'Encode' => '0',
'ExtUtils::HasCompiler' => '0.014',
'File::Spec' => '0',
'IO::Handle' => '0',
'IPC::Open3' => '0',
+ 'Path::Tiny' => '0.062',
'Pod::Wordlist' => '0',
- 'Software::License::Perl_5' => '0',
'Test::CPAN::Changes' => '0.19',
'Test::CPAN::Meta' => '0',
+ 'Test::Deep' => '0',
'Test::EOL' => '0',
'Test::Kwalitee' => '1.21',
'Test::Mojibake' => '0',
@@ -94,15 +29,16 @@ do { my $x = {
'Test::NoTabs' => '0',
'Test::Pod' => '1.41',
'Test::Pod::No404s' => '0',
- 'Test::Spelling' => '0.12',
- 'blib' => '1.01'
+ 'Test::Portability::Files' => '0',
+ 'Test::Spelling' => '0.12'
}
},
'runtime' => {
'requires' => {
'Module::Implementation' => '0.05',
+ 'Scalar::Util' => '0',
'Sub::Exporter::Progressive' => '0.001006',
- 'perl' => '5.008001',
+ 'perl' => '5.006001',
'strict' => '0',
'warnings' => '0'
}
@@ -112,14 +48,88 @@ do { my $x = {
'CPAN::Meta' => '2.120900'
},
'requires' => {
+ 'ExtUtils::MakeMaker' => '0',
'File::Glob' => '0',
'File::Spec' => '0',
'IPC::Open2' => '0',
- 'Module::Metadata' => '0',
- 'Test::More' => '0.89',
- 'perl' => '5.008001'
+ 'Test::More' => '0.88',
+ 'lib' => '0'
}
- }
+ },
+ 'x_Dist_Zilla' => {
+ 'requires' => {
+ 'Dist::Zilla' => '5',
+ 'Dist::Zilla::Plugin::Authority' => '1.009',
+ 'Dist::Zilla::Plugin::AutoMetaResources' => '0',
+ 'Dist::Zilla::Plugin::AutoPrereqs' => '5.038',
+ 'Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional' => '0.004',
+ 'Dist::Zilla::Plugin::CheckIssues' => '0',
+ 'Dist::Zilla::Plugin::CheckMetaResources' => '0',
+ 'Dist::Zilla::Plugin::CheckPrereqsIndexed' => '0.019',
+ 'Dist::Zilla::Plugin::CheckSelfDependency' => '0',
+ 'Dist::Zilla::Plugin::CheckStrictVersion' => '0',
+ 'Dist::Zilla::Plugin::ConfirmRelease' => '0',
+ 'Dist::Zilla::Plugin::CopyFilesFromRelease' => '0',
+ 'Dist::Zilla::Plugin::DynamicPrereqs' => '0.029',
+ 'Dist::Zilla::Plugin::EnsureLatestPerl' => '0',
+ 'Dist::Zilla::Plugin::FileFinder::ByName' => '0',
+ 'Dist::Zilla::Plugin::GenerateFile::FromShareDir' => '0',
+ 'Dist::Zilla::Plugin::Git::Check' => '0',
+ 'Dist::Zilla::Plugin::Git::CheckFor::CorrectBranch' => '0.004',
+ 'Dist::Zilla::Plugin::Git::CheckFor::MergeConflicts' => '0',
+ 'Dist::Zilla::Plugin::Git::Commit' => '2.020',
+ 'Dist::Zilla::Plugin::Git::Contributors' => '0.029',
+ 'Dist::Zilla::Plugin::Git::Describe' => '0.004',
+ 'Dist::Zilla::Plugin::Git::GatherDir' => '2.016',
+ 'Dist::Zilla::Plugin::Git::Push' => '0',
+ 'Dist::Zilla::Plugin::Git::Remote::Check' => '0',
+ 'Dist::Zilla::Plugin::Git::Tag' => '0',
+ 'Dist::Zilla::Plugin::GitHub::Update' => '0.40',
+ 'Dist::Zilla::Plugin::GithubMeta' => '0.54',
+ 'Dist::Zilla::Plugin::InstallGuide' => '1.200005',
+ 'Dist::Zilla::Plugin::Keywords' => '0.004',
+ 'Dist::Zilla::Plugin::License' => '5.038',
+ 'Dist::Zilla::Plugin::MakeMaker' => '0',
+ 'Dist::Zilla::Plugin::Manifest' => '0',
+ 'Dist::Zilla::Plugin::MetaConfig' => '0',
+ 'Dist::Zilla::Plugin::MetaJSON' => '0',
+ 'Dist::Zilla::Plugin::MetaNoIndex' => '0',
+ 'Dist::Zilla::Plugin::MetaProvides::Package' => '1.15000002',
+ 'Dist::Zilla::Plugin::MetaTests' => '0',
+ 'Dist::Zilla::Plugin::MetaYAML' => '0',
+ 'Dist::Zilla::Plugin::MojibakeTests' => '0.8',
+ 'Dist::Zilla::Plugin::NextRelease' => '5.033',
+ 'Dist::Zilla::Plugin::PodSyntaxTests' => '5.040',
+ 'Dist::Zilla::Plugin::Prereqs' => '0',
+ 'Dist::Zilla::Plugin::Prereqs::AuthorDeps' => '0.006',
+ 'Dist::Zilla::Plugin::PromptIfStale' => '0',
+ 'Dist::Zilla::Plugin::Readme' => '0',
+ 'Dist::Zilla::Plugin::ReadmeAnyFromPod' => '0.142180',
+ 'Dist::Zilla::Plugin::RewriteVersion::Transitional' => '0.004',
+ 'Dist::Zilla::Plugin::Run::AfterBuild' => '0.041',
+ 'Dist::Zilla::Plugin::Run::AfterRelease' => '0.038',
+ 'Dist::Zilla::Plugin::RunExtraTests' => '0.024',
+ 'Dist::Zilla::Plugin::StaticInstall' => '0.005',
+ 'Dist::Zilla::Plugin::SurgicalPodWeaver' => '0',
+ 'Dist::Zilla::Plugin::Test::CPAN::Changes' => '0.012',
+ 'Dist::Zilla::Plugin::Test::ChangesHasContent' => '0',
+ 'Dist::Zilla::Plugin::Test::Compile' => '2.039',
+ 'Dist::Zilla::Plugin::Test::EOL' => '0.17',
+ 'Dist::Zilla::Plugin::Test::Kwalitee' => '2.10',
+ 'Dist::Zilla::Plugin::Test::NoTabs' => '0.08',
+ 'Dist::Zilla::Plugin::Test::Pod::No404s' => '1.003',
+ 'Dist::Zilla::Plugin::Test::PodSpelling' => '2.006003',
+ 'Dist::Zilla::Plugin::Test::Portability' => '2.000007',
+ 'Dist::Zilla::Plugin::Test::ReportPrereqs' => '0.022',
+ 'Dist::Zilla::Plugin::TestRelease' => '0',
+ 'Dist::Zilla::Plugin::UploadToCPAN' => '0',
+ 'Dist::Zilla::Plugin::UseUnsafeInc' => '0',
+ 'Dist::Zilla::PluginBundle::Author::ETHER' => '0.119',
+ 'Dist::Zilla::PluginBundle::Git::VersionManager' => '0',
+ 'ExtUtils::HasCompiler' => '0.014',
+ 'Software::License::Perl_5' => '0'
+ }
+ }
};
$x;
}
\ No newline at end of file
@@ -3,11 +3,11 @@
use strict;
use warnings;
-# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.024
+# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.027
use Test::More tests => 1;
-use Module::Metadata;
+use ExtUtils::MakeMaker;
use File::Spec;
# from $version::LAX
@@ -60,7 +60,12 @@ sub _merge_prereqs {
}
my @include = qw(
-
+ Encode
+ JSON::PP
+ Sub::Name
+ YAML
+ autodie
+ DynaLoader
);
my @exclude = qw(
@@ -68,7 +73,7 @@ my @exclude = qw(
);
# Add static prereqs to the included modules list
-my $static_prereqs = do 't/00-report-prereqs.dd';
+my $static_prereqs = do './t/00-report-prereqs.dd';
# Merge all prereqs (either with ::Prereqs or a hashref)
my $full_prereqs = _merge_prereqs(
@@ -78,12 +83,14 @@ my $full_prereqs = _merge_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) } ) {
- $full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs);
- }
+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';
}
@@ -122,7 +129,7 @@ for my $phase ( qw(configure build test runtime develop other) ) {
my $req_string = $want eq 'any' ? 'any version required' : "version '$want' required";
if ($prefix) {
- my $have = Module::Metadata->new_from_file( File::Spec->catfile($prefix, $file) )->version;
+ my $have = MM->parse_version( File::Spec->catfile($prefix, $file) );
$have = "undef" unless defined $have;
push @reports, [$mod, $want, $have];
@@ -169,10 +176,18 @@ 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",
- "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ***\n",
- "The following REQUIRED prerequisites were not satisfied:\n",
+ "\nThe following REQUIRED prerequisites were not satisfied:\n",
@dep_errors,
"\n"
);
@@ -1,7 +1,13 @@
use strict;
use warnings;
-use Test::More 0.89;
+use Test::More 0.88;
+
+BEGIN {
+ plan skip_all => "User-requested %^H local()ization works only on perl 5.8.0+"
+ if "$]" < 5.008;
+}
+
use B::Hooks::EndOfScope;
@@ -0,0 +1,24 @@
+use strict;
+use warnings;
+
+use lib 't/lib';
+use Test::More;
+
+use B::Hooks::EndOfScope;
+
+plan tests => 1;
+
+my @warnings;
+BEGIN { $SIG{__WARN__} = sub {
+ ( $_[0] =~ /unref/ )
+ ? push @warnings, $_[0]
+ : warn @_
+}}
+
+BEGIN { on_scope_end { 1 } }
+
+use OtherClass;
+
+is $warnings[0], undef,
+ 'on_scope_end used in module where loading module used on_scope_end'
+or diag join '', "\nAll unexpected warnings:\n========\n", @warnings, "\n";
@@ -0,0 +1,7 @@
+package OtherClass;
+use B::Hooks::EndOfScope;
+BEGIN { on_scope_end { 1 } }
+
+use YetAnotherClass;
+
+1;
@@ -0,0 +1,5 @@
+package YetAnotherClass;
+use B::Hooks::EndOfScope;
+BEGIN { on_scope_end { 1 } }
+
+1;
@@ -2,7 +2,7 @@ use 5.006;
use strict;
use warnings;
-# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.054
+# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.058
use Test::More 0.94;
@@ -20,7 +20,9 @@ my @module_files = (
# no fake home requested
-my $inc_switch = -d 'blib' ? '-Mblib' : '-Ilib';
+my @switches = (
+ -d 'blib' ? '-Mblib' : '-Ilib',
+);
use File::Spec;
use IPC::Open3;
@@ -34,14 +36,18 @@ for my $lib (@module_files)
# see L<perlfaq8/How can I capture STDERR from an external command?>
my $stderr = IO::Handle->new;
- my $pid = open3($stdin, '>&STDERR', $stderr, $^X, $inc_switch, '-e', "require q[$lib]");
+ 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') };
+ and not eval { +require blib; blib->VERSION('1.01') };
if (@_warnings)
{
@@ -0,0 +1,13 @@
+use strict;
+use warnings;
+
+use Test::More;
+plan skip_all => 'xt/release/changes_has_content.t is missing' if not -e 'xt/release/changes_has_content.t';
+
+my $branch_name = $ENV{TRAVIS_BRANCH};
+chomp($branch_name = `git rev-parse --abbrev-ref HEAD`) if not $branch_name;
+$TODO = 'Changes need not have content for this release yet if this is only the master branch'
+ if ($branch_name || '') eq 'master';
+
+do './xt/release/changes_has_content.t';
+die $@ if $@;
@@ -0,0 +1,22 @@
+use strict;
+use warnings;
+
+use Test::More 0.88;
+use Test::Deep;
+use Path::Tiny 0.062;
+
+plan skip_all => 'this test requires a built dist' if not -d 'inc';
+
+my @found_files;
+path('inc')->visit(
+ sub { push @found_files, $_->stringify if -f },
+ { recurse => 1 },
+);
+
+cmp_deeply(
+ \@found_files,
+ [ 'inc/ExtUtils/HasCompiler.pm' ],
+ 'only ExtUtils::HasCompiler is bundled, and nothing else!',
+);
+
+done_testing;
@@ -1,7 +1,7 @@
use strict;
use warnings;
-# this test was generated with Dist::Zilla::Plugin::Test::EOL 0.18
+# this test was generated with Dist::Zilla::Plugin::Test::EOL 0.19
use Test::More 0.88;
use Test::EOL;
@@ -19,10 +19,15 @@ my @files = (
't/02-localise.t',
't/05-exception_xs.t',
't/06-exception_pp.t',
+ 't/07-nested.t',
't/10-test_without_vm_pure_pp.t',
't/11-direct_xs.t',
't/12-direct_pp.t',
+ 't/lib/OtherClass.pm',
+ 't/lib/YetAnotherClass.pm',
'xt/author/00-compile.t',
+ 'xt/author/changes_has_content.t',
+ 'xt/author/check-inc.t',
'xt/author/eol.t',
'xt/author/kwalitee.t',
'xt/author/mojibake.t',
@@ -30,11 +35,10 @@ my @files = (
'xt/author/pod-no404s.t',
'xt/author/pod-spell.t',
'xt/author/pod-syntax.t',
+ 'xt/author/portability.t',
'xt/release/changes_has_content.t',
'xt/release/cpan-changes.t',
- 'xt/release/distmeta.t',
- 'xt/release/minimum-version.t',
- 'xt/release/portability.t'
+ 'xt/release/distmeta.t'
);
eol_unix_ok($_, { trailing_whitespace => 1 }) foreach @files;
@@ -19,10 +19,15 @@ my @files = (
't/02-localise.t',
't/05-exception_xs.t',
't/06-exception_pp.t',
+ 't/07-nested.t',
't/10-test_without_vm_pure_pp.t',
't/11-direct_xs.t',
't/12-direct_pp.t',
+ 't/lib/OtherClass.pm',
+ 't/lib/YetAnotherClass.pm',
'xt/author/00-compile.t',
+ 'xt/author/changes_has_content.t',
+ 'xt/author/check-inc.t',
'xt/author/eol.t',
'xt/author/kwalitee.t',
'xt/author/mojibake.t',
@@ -30,11 +35,10 @@ my @files = (
'xt/author/pod-no404s.t',
'xt/author/pod-spell.t',
'xt/author/pod-syntax.t',
+ 'xt/author/portability.t',
'xt/release/changes_has_content.t',
'xt/release/cpan-changes.t',
- 'xt/release/distmeta.t',
- 'xt/release/minimum-version.t',
- 'xt/release/portability.t'
+ 'xt/release/distmeta.t'
);
notabs_ok($_) foreach @files;
@@ -2,40 +2,43 @@ use strict;
use warnings;
use Test::More;
-# generated by Dist::Zilla::Plugin::Test::PodSpelling 2.007000
+# generated by Dist::Zilla::Plugin::Test::PodSpelling 2.007005
use Test::Spelling 0.12;
use Pod::Wordlist;
add_stopwords(<DATA>);
-all_pod_files_spelling_ok( qw( bin lib ) );
+all_pod_files_spelling_ok( qw( examples lib script t xt ) );
__DATA__
-irc
+Christian
+Doran
+EndOfScope
+Etheridge
+FieldHash
Florian
-Ragwitz
-rafl
+Graham
+HintHash
+Hooks
+Karen
+Knop
+Miyagawa
+PP
Peter
Rabbitson
-ribasushi
-Karen
-Etheridge
-ether
-Christian
-Walde
-walde
+Ragwitz
Simon
-Wilper
-sxw
Tatsuhiko
-Miyagawa
-miyagawa
Tomas
-Doran
+Walde
+Wilper
+XS
bobtfish
+ether
+haarg
+irc
lib
-Hooks
-EndOfScope
-PP
-FieldHash
-HintHash
-XS
+miyagawa
+rafl
+ribasushi
+sxw
+walde
@@ -0,0 +1,10 @@
+use strict;
+use warnings;
+
+use Test::More;
+
+eval 'use Test::Portability::Files';
+plan skip_all => 'Test::Portability::Files required for testing portability'
+ if $@;
+
+run_tests();
@@ -1,11 +1,10 @@
-#!perl
-
use Test::More tests => 2;
note 'Checking Changes';
my $changes_file = 'Changes';
-my $newver = '0.21';
+my $newver = '0.24';
my $trial_token = '-TRIAL';
+my $encoding = 'UTF-8';
SKIP: {
ok(-e $changes_file, "$changes_file file exists")
@@ -16,8 +15,6 @@ SKIP: {
done_testing;
-# _get_changes copied and adapted from Dist::Zilla::Plugin::Git::Commit
-# by Jerome Quelin
sub _get_changes
{
my $newver = shift;
@@ -25,6 +22,10 @@ sub _get_changes
# parse changelog to find commit message
open(my $fh, '<', $changes_file) or die "cannot open $changes_file: $!";
my $changelog = join('', <$fh>);
+ if ($encoding) {
+ require Encode;
+ $changelog = Encode::decode($encoding, $changelog, Encode::FB_CROAK());
+ }
close $fh;
my @content =
@@ -1,11 +1,10 @@
-#!perl
-
use strict;
use warnings;
-use Test::More 0.96 tests => 2;
-use_ok('Test::CPAN::Changes');
+# this test was generated with Dist::Zilla::Plugin::Test::CPAN::Changes 0.012
+
+use Test::More 0.96 tests => 1;
+use Test::CPAN::Changes;
subtest 'changes_ok' => sub {
changes_file_ok('Changes');
};
-done_testing();
@@ -1,8 +0,0 @@
-#!perl
-
-use Test::More;
-
-eval "use Test::MinimumVersion";
-plan skip_all => "Test::MinimumVersion required for testing minimum versions"
- if $@;
-all_minimum_version_ok( qq{5.008001} );
@@ -1,12 +0,0 @@
-#!perl
-
-use strict;
-use warnings;
-
-use Test::More;
-
-eval 'use Test::Portability::Files';
-plan skip_all => 'Test::Portability::Files required for testing portability'
- if $@;
-
-run_tests();