Dist-Zilla-Plugin-Test-Compile-2.058/000700 000766 000024 00000000000 13216334661 017511 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/AUTHOR_PLEDGE000644 000766 000024 00000001163 13216334661 021471 0ustar00etherstaff000000 000000 # CPAN Covenant for Dist-Zilla-Plugin-Test-Compile I, Jérôme Quelin , Karen Etheridge , hereby give modules@perl.org permission to grant co-maintainership to Dist-Zilla-Plugin-Test-Compile, if all the following conditions are met: (1) I haven't released the module for a year or more (2) There are outstanding issues in the module's public bug tracker (3) Email to my CPAN email address hasn't been answered after a month (4) The requester wants to make worthwhile changes that will benefit CPAN In the event of my death, then the time-limits in (1) and (3) do not apply. Dist-Zilla-Plugin-Test-Compile-2.058/Build.PL000644 000766 000024 00000012355 13216334661 021025 0ustar00etherstaff000000 000000 # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # 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 Build.PL for Dist-Zilla-Plugin-Test-Compile was generated by # Dist::Zilla::Plugin::ModuleBuildTiny::Fallback 0.025 use strict; use warnings; my %configure_requires = ( 'ExtUtils::MakeMaker' => '0', 'Module::Build::Tiny' => '0.034', ); my %errors = map { eval "require $_; $_->VERSION($configure_requires{$_}); 1"; $_ => $@, } keys %configure_requires; if (!grep { $_ } values %errors) { # This section for Dist-Zilla-Plugin-Test-Compile was generated by Dist::Zilla::Plugin::ModuleBuildTiny 0.015. use strict; use warnings; use 5.008; # use Module::Build::Tiny 0.034; Module::Build::Tiny::Build_PL(); } else { if (not $ENV{PERL_MB_FALLBACK_SILENCE_WARNING}) { warn <<'EOW' *** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING *** If you're seeing this warning, your toolchain is really, really old* and you'll almost certainly have problems installing CPAN modules from this century. But never fear, dear user, for we have the technology to fix this! If you're using CPAN.pm to install things, then you can upgrade it using: cpan CPAN If you're using CPANPLUS to install things, then you can upgrade it using: cpanp CPANPLUS If you're using cpanminus, you shouldn't be seeing this message in the first place, so please file an issue on github. This public service announcement was brought to you by the Perl Toolchain Gang, the irc.perl.org #toolchain IRC channel, and the number 42. ---- * Alternatively, you are running this file manually, in which case you need to learn to first fulfill all configure requires prerequisites listed in META.yml or META.json -- or use a cpan client to install this distribution. You can also silence this warning for future installations by setting the PERL_MB_FALLBACK_SILENCE_WARNING environment variable, but please don't do that until you fix your toolchain as described above. Errors from configure prereqs: EOW . do { require Data::Dumper; Data::Dumper->new([ \%errors ])->Indent(2)->Terse(1)->Sortkeys(1)->Dump; }; sleep 10 if -t STDIN && (-t STDOUT || !(-f STDOUT || -c STDOUT)); } # This section was automatically generated by Dist::Zilla::Plugin::ModuleBuild v6.010. use strict; use warnings; require Module::Build; Module::Build->VERSION(0.28); my %module_build_args = ( "configure_requires" => { "ExtUtils::MakeMaker" => 0, "Module::Build::Tiny" => "0.034", "perl" => "5.006" }, "dist_abstract" => "Common tests to check syntax of your modules, using only core modules", "dist_author" => [ "J\x{e9}r\x{f4}me Quelin ", "Karen Etheridge " ], "dist_name" => "Dist-Zilla-Plugin-Test-Compile", "dist_version" => "2.058", "license" => "perl", "module_name" => "Dist::Zilla::Plugin::Test::Compile", "recursive_test_files" => 1, "requires" => { "Data::Section" => "0.004", "Dist::Zilla" => "4.300039", "Dist::Zilla::Dist::Builder" => 0, "Dist::Zilla::File::InMemory" => 0, "Dist::Zilla::Role::FileFinderUser" => 0, "Dist::Zilla::Role::FileGatherer" => 0, "Dist::Zilla::Role::FileMunger" => 0, "Dist::Zilla::Role::PrereqSource" => 0, "Dist::Zilla::Role::TextTemplate" => 0, "Moose" => 0, "Moose::Util::TypeConstraints" => 0, "Path::Tiny" => 0, "Sub::Exporter::ForMethods" => 0, "namespace::autoclean" => 0, "perl" => "5.008", "strict" => 0, "warnings" => 0 }, "test_requires" => { "CPAN::Meta::Check" => "0.011", "CPAN::Meta::Requirements" => 0, "File::Spec" => 0, "File::pushd" => "1.004", "IO::Handle" => 0, "IPC::Open3" => 0, "Module::CoreList" => "2.77", "Module::Metadata" => 0, "Perl::PrereqScanner" => "1.016", "Test::DZil" => 0, "Test::Deep" => 0, "Test::MinimumVersion" => 0, "Test::More" => "0.96", "Test::Warnings" => "0.009", "if" => 0, "perl" => "5.008", "utf8" => 0, "version" => 0 } ); my %fallback_build_requires = ( "CPAN::Meta::Check" => "0.011", "CPAN::Meta::Requirements" => 0, "File::Spec" => 0, "File::pushd" => "1.004", "IO::Handle" => 0, "IPC::Open3" => 0, "Module::CoreList" => "2.77", "Module::Metadata" => 0, "Perl::PrereqScanner" => "1.016", "Test::DZil" => 0, "Test::Deep" => 0, "Test::MinimumVersion" => 0, "Test::More" => "0.96", "Test::Warnings" => "0.009", "if" => 0, "perl" => "5.008", "utf8" => 0, "version" => 0 ); unless ( eval { Module::Build->VERSION(0.4004) } ) { delete $module_build_args{test_requires}; $module_build_args{build_requires} = \%fallback_build_requires; } my $build = Module::Build->new(%module_build_args); $build->create_build_script; } Dist-Zilla-Plugin-Test-Compile-2.058/Changes000600 000766 000024 00000033021 13216334661 021005 0ustar00etherstaff000000 000000 Revision history for Dist-Zilla-Plugin-Test-Compile 2.058 2017-12-20 01:15:23Z - skip testing a script if -T is seen on the shebang line and $PERL5LIB is set (which will not be visible in taint mode) 2.057 2017-08-20 00:55:40Z - load optional modules in generated test in such a way that Perl::PrereqScanner doesn't think they are required dependencies (this is only significant on perl 5.7.2 and older) 2.056 2016-10-26 06:15:40Z - fix test failure on older perls 2.055 2016-10-24 01:39:56Z - verbose diagnostics can now be enabled in the test with the PERL_COMPILE_TEST_DEBUG environment variable. - added "switch" option, for passing additional command-line switches 2.054 2015-08-16 00:17:17Z - load blib as needed during tests, to check its $VERSION - use the :PerlExecFiles filefinder, when available (requires Dist::Zilla 5.038) 2.053 2015-06-01 03:33:51Z - filter out "Using .../lib" warning emitted by older blib when checking for warnings (reported by preaction) 2.052 2015-03-28 06:09:55Z - always test for warnings if fail_on_warning=author and the generated test is in xt/author, without AUTHOR_TESTING having to be set 2.051 2014-10-18 01:51:02Z - fix needs_display tests failing on MSWin32 since 2.048 2.050 2014-10-15 23:57:04Z - fix test (in our own test suite) that will break with an upcoming Test::More release 2.049 2014-10-14 04:46:44Z - use documented Test::Builder interface to examine test details 2.048 2014-10-11 21:54:16Z - make tests (and generated test) run when needs_display=1 and $DISPLAY is not set 2.047 2014-10-10 05:19:20Z - avoid use of Test::More::explain in generated test when version is too old 2.046 2014-08-20 15:10:15Z - When warnings occur under fail_on_warning, diag them. (GH #9, Kent Fredric) 2.045 2014-08-07 04:25:14Z - re-release to remove README.pod from shipped dist 2.044 2014-08-03 01:11:31Z - clean up dynamic prerequisite calculations - munge the file properly even if [ExtraTests] has already moved it 2.043 2014-06-13 21:00:24Z - fix remaining failures on 5.10.0 (due to buggy -C flags) introduced in 2.041 2.042 2014-06-04 02:28:25Z - fix test failures on older perls introduced in 2.041 2.041 2014-05-30 17:54:57Z - properly handle scripts with shebang lines with dashes in the path name, or extra whitespace, or comments (RT#95897) 2.040 2014-04-06 18:54:08Z - fix bad x_breaks metadata - line numbers in shipped code are now almost the same (within 3) as the repository source, for easier debugging 2.039 2013-12-02 05:23:01Z - fix bad handling of $stderr handle on win32 (from v2.038) 2.038 2013-11-29 18:20:37Z - test now reuses the same $stdin and $stderr handles across all processes - now asserting minimum perl version required (5.6) in the generated test - new 'file' option, for adding extra files to be checked 2.037 2013-10-18 01:18:15Z - files are loaded from lib/ if blib/ does not exist - now properly falling back to lib/ for scripts too 2.036 2013-10-12 21:32:51Z - new "xt_mode" option (thanks, David Golden!) 2.035 2013-10-12 17:35:49Z - new "phase" option, for selecting how prereqs are injected (thanks, David Golden!) 2.034 2013-10-06 06:24:12Z - now checking the full, unshifted value of $? (thanks, ribasushi!) - fixed incomplete prerequisite specification on Test::Warnings 2.033 2013-09-20 23:52:40Z - revert to IPC::Open3 implementation from v2.031 and earlier, but with waitpid ordering fixed so we never hang (thanks haarg!) - now bootstrapping ourselves so our own compile test is generated with the version of code we are shipping, rather than version N-1 2.032 2013-09-20 01:02:20Z - add missing prereq injection for File::Spec, when scripts are being tested - redo entire implementation, reverting from IPC::Open3 back to a capture{}, using an inlined form of the guts of Capture::Tiny courtesy of David Golden, to address ongoing occasional hang issues on win32 (see RT#88783 for the longer version) 2.031 2013-09-19 04:49:51Z - bypass cmd.exe on win32 to try to avoid occasional hang issue (RT#88783) 2.030 2013-09-11 05:01:26Z - depend on fixed Test::Warnings, where ':no_end_test' also covers the done_testing case (which turned out to be a red herring) 2.029 2013-09-10 01:19:46Z - fix test failures for non-authors (oops) 2.028 2013-09-10 01:12:53Z - fix binmode issue on win32 (introduced in 2.026) - warnings tests bypassed during installation, to prevent installation issues in the presence of deprecation warnings from upstream dependencies (in this case, via Moose 2.1100) - new 'filename' option, for creating the compile test in a different location 2.027 2013-09-08 16:36:45Z - promise in documentation that the generated test requires no non-core modules, and is compatible with perl 5.6.2 - re-release with properly encoded META.yml 2.026 2013-09-07 00:47:15Z - more fixes (hopefully the last) for script checking on win32 2.025 2013-09-04 01:32:34Z - more thoroughly test the generated test that no non-core modules are required, and syntax does not require a perl later than 5.8.8 - fix use of regex syntax in script checking that required perl 5.9.5 - properly screen out expected warnings from perl -c on older perls 2.024 2013-09-03 00:02:21Z - update warning regexp in test yet again, due to win32 failures (does not concern the generated test) 2.023 2013-08-30 01:27:54Z - now routing subprocesses' stdout to our stderr rather than throwing it away, for greater visibility into any side effects caused by loading modules - removed use of Test::Script entirely for testing scripts - now instead we call perl -c ourselves - we can now properly test scripts using special flags such as -T - now skipping non-perl scripts, by checking shebang lines - now any version of Test::More can be used (if the bail_out_on_fail option is not set) 2.022 2013-08-29 02:04:55Z - documentation fixes and cleanup - added missing test prereq on Test::Script (but still not injected into the built dist unless scripts are being shipped) - stop looking for newlines during install-time testing, to avoid needless failure on win32 (does not concern the generated test) 2.021 2013-08-27 00:59:49Z - fix incomplete prereq declaration on Test::Warnings - work around dubious install-time test failure on win32 with absolute filenames in tests (does not concern the generated test) 2.020 2013-08-24 18:06:49Z - fixed test prereq for Module::CoreList (thanks ambs!) - removed long-deprecated [CompileTests] 2.019 2013-08-24 04:09:07Z - now properly handling filenames with non-ascii characters - use IPC::Open3 for each subprocess, rather than Capture::Tiny; test added to confirm that no non-core prereqs are used (except sometimes Test::Script) 2.018 2013-08-04 02:25:37Z - delay inserting the list of modules to check until after all plugins have had an opportunity to add files (found via RT#87562) - fail_on_warning setting now also takes into consideration the results of script compilation checks 2.017 2013-08-03 18:06:44Z - fix conflicts metadata entry for Test::Kwalitee::Extra (I misinterpreted the metaspec as to what conflicts actually means!) 2.016 2013-08-02 18:48:44Z - convert Foo\Bar.pm to Foo/Bar.pm for proper %INC retrieval on win32 (thanks, haarg!) 2.015 2013-08-02 18:22:28Z - fix double-quoting of file paths in require statement, introduced in v2.006 (thanks, Peter Shangov!) 2.014 2013-08-01 02:37:00Z - fix install tests on win32, broken since 2.011 (RT#84781) - properly munge filenames on win32 (broken since 2.013) 2.013 2013-07-30 19:54:52Z - .pm files are tested with -Mblib again; 2.012 was a mistake. - now require()ing files without the leading lib/, to avoid potentially loading files twice (a problem since 2.009) - thanks dolmen and haarg! 2.012 2013-07-30 19:12:53Z - .pm files are once again tested with -Ilib, instead of -Mblib, to avoid potentially loading files twice (this was changed in 2.009). 2.011 2013-07-28 22:45:53Z - .pod files are now always omitted from the list of found modules in the dist (thanks for the report, Alberto Simões!) 2.010 2013-07-27 00:45:51Z - add conflicts metadata for Test::Kwalitee::Extra, which does not like the require() syntax we use - all changes since 2.002 now as a stable release: [FEATURES] - new fail_on_warning option - the 'skip' option can now be provided multiple times - calculate the list of files to check at build time, rather than using File::Find at runtime; the filefinders used are configurable. [IMPLEMENTATION DETAILS] - include a comment in the generated test indicating how it was generated - modules used by the test are injected as test requires dependencies. - avoid trying to load Test::Script if there are no scripts to check - we now load the .pm file, rather than attempting to calculate the module name and then loading that - if there are scripts to be tested, Test::Script is now mandatory; accurate prerequisites are injected into the dist in all cases - properly inject all used modules as test prerequisites - now using Text::Template to generate the test, for simpler munging code 2.009 2013-07-20 17:40:25Z (TRIAL RELEASE) - the 'skip' option can now be provided multiple times - now using Text::Template to generate the test, for simpler munging code - properly inject all used modules as test prerequisites 2.008 2013-07-20 01:40:11Z (TRIAL RELEASE) - screen out skipped files at test generation time, rather than at runtime (and make skips work again - broken in 2.007-TRIAL) 2.007 2013-07-20 01:14:30Z (TRIAL RELEASE) - if there are scripts to be tested, Test::Script is now mandatory; accurate prerequisites are injected into the dist in all cases 2.006 2013-07-17 19:38:55Z (TRIAL RELEASE) - we now load the .pm file, rather than attempting to calculate the module name and then loading that - avoid trying to load Test::Script if there are no scripts to check - calculate the list of files to check at build time, rather than using File::Find at runtime; the filefinders used are configurable. - modules used by the test are injected as test requires dependencies. 2.005 2013-07-14 19:54:24Z (TRIAL RELEASE) - fixed use of quoting in shell command to resolve mswin32 issues (introduced in 2.003) - include a comment in the generated test indicating how it was generated 2.004 2013-07-01 05:17:25Z (TRIAL RELEASE) - fixed typo in fail_on_warning=author 2.003 2013-07-01 04:39:31Z (TRIAL RELEASE) - new fail_on_warning option (Karen Etheridge) 2.002 2013-04-28 16:19:00Z - require version of Test::More that added is_passing() (RT#84904, Karen Etheridge) 2.001 2013-02-12 12:03:37Z - fix EOL in generated test (Olivier Mengué) 2.000 2013-02-11 12:52:18Z - new bail_out_on_fail option (Karen Etheridge) - dzil migrated to @Author::JQUELIN 1.112820 2011-10-09 09:31:56Z - look for scripts in scripts/ too (chris weyl) 1.112400 2011-08-28 12:41:01Z - fix breakage introduced by __END__ markers (randy stauner) - added test suite (randy stauner) 1.112392 2011-08-27 10:56:36Z - examples/ updated to use new module name 1.112391 2011-08-27 10:50:33Z - more aggressive deprecation in documentation - minimum date before DZP::CompileTests removal: 2012-08-27 - github repository renamed to match new dist name 1.112390 2011-08-27 10:40:32Z - renamed to Dist::Zilla::Plugin::Test::Compile. DZP::CompileTests, although deprecated, continues to work (fredric kent) - eliminate multiple phases work (fredric kent) 1.112380 2011-08-26 12:28:44Z - skip non-perl scripts in bin directory (harley pig) 1.110930 2011-04-03 10:19:08Z - fix rt#67183 - do not fail if no bin directory exists 1.110870 2011-03-28 11:44:54Z - allow regex skip of script files (jesse luehrs) 1.103030 2010-10-30 14:00:24Z - Removed reuse of Test::NeedsDisplay. It fails when DISPLAY is not set! (ahmad m. zawawi) 1.103010 2010-10-28 16:26:19Z - no_display is now called needs_display and it reuses Test::NeedsDisplay (ahmad m. zawawi) 1.103000 2010-10-27 08:16:26Z - new option no_display to skip tests on non win32 systems when $ENV{DISPLAY} is not set (ahmad m. zawawi) 1.101800 2010-06-29 17:42:20Z - skip all if no test are to be run (jesse luehrs) - require module instead of use, to test only compilation (jesse luehrs) 1.101600 2010-06-09 12:01:21Z - fix #55957: strip leading white spaces in module output 1.101500 2010-05-30 16:55:12Z - fix #57974: test::script 1.05 changed its interface 1.100740 2010-03-15 17:29:52Z - allow PERL5OPT to get a chance to be respected (marcel gruenauer) 1.100220 2010-01-22 15:26:16Z - new param fake_home to control $ENV{HOME} faking 1.100160 2010-01-16 13:43:14Z - requiring perl 5.8.x - faking $ENV{HOME} for cpantesters 1.092870 2009-10-14 09:10:00 - fix: skip did not update test count 1.092840 2009-10-11 19:12:32 - support for skip parameter 1.092460 2009-09-03 17:26:23 - using less magical load test (as kentnl reported) 1.092370 2009-08-25 16:57:16 - using plain File::Find which is core (rjbs) - moving to autoversion: 1.yydddn 0.1.3 2009-08-11 15:58:19 CEST - automatically add File::Find::Rule to prereqs (fix #48602) 0.1.2 2009-08-07 10:26:31 - skip script tests if test::script isn't installed 0.1.1 2009-08-06 15:43:34 - fix manifest 0.1.0 2009-08-06 15:34:26 - original release - basic compilation tests Dist-Zilla-Plugin-Test-Compile-2.058/CONTRIBUTING000644 000766 000024 00000007644 13216334661 021370 0ustar00etherstaff000000 000000 CONTRIBUTING Thank you for considering contributing to this distribution. This file contains instructions that will help you work with the source code. PLEASE NOTE that if you have any questions or difficulties, you can reach the maintainer(s) through the bug queue described later in this document (preferred), or by emailing the releaser directly. You are not required to follow any of the steps in this document to submit a patch or bug report; these are just recommendations, intended to help you (and help us help you faster). This distribution has a TODO file in the repository; you may want to check there to see if your issue or patch idea is mentioned. The distribution is managed with Dist::Zilla (https://metacpan.org/release/Dist-Zilla). This means than many of the usual files you might expect are not in the repository, but are generated at release time (e.g. Makefile.PL). However, you can run tests directly using the 'prove' tool: $ prove -l $ prove -lv t/some_test_file.t $ prove -lvr t/ 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 dependencies is to install the last release -- this is available at https://metacpan.org/release/Dist-Zilla-Plugin-Test-Compile If you use cpanminus, you can do it without downloading the tarball first: $ cpanm --reinstall --installdeps --with-recommends Dist::Zilla::Plugin::Test::Compile Dist::Zilla is a very powerful authoring tool, but requires a number of author-specific plugins. If you would like to use it for contributing, install it from CPAN, then run one of the following commands, depending on your CPAN client: $ cpan `dzil authordeps --missing` or $ dzil authordeps --missing | cpanm You should then also install any additional requirements not needed by the dzil build but may be needed by tests or other development: $ cpan `dzil listdeps --author --missing` or $ dzil listdeps --author --missing | cpanm Or, you can use the 'dzil stale' command to install all requirements at once: $ cpan Dist::Zilla::App::Command::stale $ cpan `dzil stale --all` or $ cpanm Dist::Zilla::App::Command::stale $ dzil stale --all | cpanm You can also do this via cpanm directly: $ cpanm --reinstall --installdeps --with-develop --with-recommends Dist::Zilla::Plugin::Test::Compile Once installed, here are some dzil commands you might try: $ dzil build $ dzil test $ dzil test --release $ dzil xtest $ dzil listdeps --json $ dzil build --notgz You can learn more about Dist::Zilla at http://dzil.org/. The code for this distribution is hosted at GitHub. The repository is: https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile You can submit code changes by forking the repository, pushing your code changes to your clone, and then submitting a pull request. Detailed instructions for doing that is available here: https://help.github.com/articles/creating-a-pull-request If you have found a bug, but do not have an accompanying patch to fix it, you can submit an issue report here: https://rt.cpan.org/Public/Dist/Display.html?Name=Dist-Zilla-Plugin-Test-Compile or via email: bug-Dist-Zilla-Plugin-Test-Compile@rt.cpan.org There is also a mailing list available for users of this distribution, at http://dzil.org/#mailing-list There is also an irc channel available for users of this distribution, at irc://irc.perl.org/#distzilla If you send me a patch or pull request, your name and email address will be included in the documentation as a contributor (using the attribution on the commit or patch), unless you specifically request for it not to be. If you 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.013 from a template file originating in Dist-Zilla-PluginBundle-Author-ETHER-0.132. Dist-Zilla-Plugin-Test-Compile-2.058/dist.ini000600 000766 000024 00000002520 13216334661 021156 0ustar00etherstaff000000 000000 name = Dist-Zilla-Plugin-Test-Compile author = Jérôme Quelin author = Karen Etheridge license = Perl_5 copyright_holder = Jérôme Quelin copyright_year = 2009 [Prepender] :version = 2.002 copyright = 1 skip = INSTALL [Bootstrap::lib] [Test::Compile] fail_on_warning = author bail_out_on_fail = 1 script_finder = :ExecFiles script_finder = @Author::ETHER/Examples [@Author::ETHER] :version = 0.097 Authority.authority = cpan:JQUELIN -remove = Test::Compile ; added directly, above Test::ReportPrereqs.include[0] = Dist::CheckConflicts Test::ReportPrereqs.include[1] = CPAN::Meta::Validator Test::MinimumVersion.max_target_perl = 5.008003 ModuleBuildTiny::Fallback.:version = 0.016 StaticInstall.dry_run = 0 ; we can safely set this here Git::GatherDir.exclude_filename = AUTHOR_PLEDGE copy_file_from_release = AUTHOR_PLEDGE [Covenant] [MetaResources] x_IRC = irc://irc.perl.org/#distzilla x_MailingList = http://dzil.org/#mailing-list [Breaks] Test::Kwalitee::Extra = <= v0.0.8 [Test::CheckBreaks] :version = 0.017 conflicts_module = Moose::Conflicts conflicts_module = Module::Runtime::Conflicts [Prereqs] Dist::Zilla = 4.300039 ; v2 meta-compliant license field [Prereqs / DevelopRequires] Test::Warnings = 0 Dist::Zilla = 5.000 Test::Mojibake = 1.0 perl = 5.014 ; ensure we run all tests Dist-Zilla-Plugin-Test-Compile-2.058/examples/000700 000766 000024 00000000000 13216334661 021327 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/INSTALL000644 000766 000024 00000002373 13216334661 020561 0ustar00etherstaff000000 000000 This is the Perl distribution Dist-Zilla-Plugin-Test-Compile. Installing Dist-Zilla-Plugin-Test-Compile is straightforward. ## Installation with cpanm If you have cpanm, you only need one line: % cpanm Dist::Zilla::Plugin::Test::Compile 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 Alternatively, if your CPAN shell is set up, you should just be able to do: % cpan Dist::Zilla::Plugin::Test::Compile ## Manual installation As a last resort, you can manually install it. Download the tarball, untar it, then build it: % perl Build.PL % ./Build && ./Build test Then install it: % ./Build install 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 ## Documentation Dist-Zilla-Plugin-Test-Compile documentation is available as POD. You can run perldoc from a shell to read the documentation: % perldoc Dist::Zilla::Plugin::Test::Compile Dist-Zilla-Plugin-Test-Compile-2.058/lib/000700 000766 000024 00000000000 13216334661 020257 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/LICENCE000644 000766 000024 00000043666 13216334661 020527 0ustar00etherstaff000000 000000 This software is copyright (c) 2009 by Jérôme Quelin. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. Terms of the Perl programming language system itself a) the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version, or b) the "Artistic License" --- The GNU General Public License, Version 1, February 1989 --- This software is Copyright (c) 2009 by Jérôme Quelin. This is free software, licensed under: The GNU General Public License, Version 1, February 1989 GNU GENERAL PUBLIC LICENSE Version 1, February 1989 Copyright (C) 1989 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The license agreements of most software companies try to keep users at the mercy of those companies. By contrast, our General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. The General Public License applies to the Free Software Foundation's software and to any other program whose authors commit to using it. You can use it for your programs, too. When we speak of free software, we are referring to freedom, not price. Specifically, the General Public License is designed to make sure that you have the freedom to give away or sell copies of free software, that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of a such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must tell them their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any work containing the Program or a portion of it, either verbatim or with modifications. Each licensee is addressed as "you". 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this General Public License and to the absence of any warranty; and give any other recipients of the Program a copy of this General Public License along with the Program. You may charge a fee for the physical act of transferring a copy. 2. You may modify your copy or copies of the Program or any portion of it, and copy and distribute such modifications under the terms of Paragraph 1 above, provided that you also do the following: a) cause the modified files to carry prominent notices stating that you changed the files and the date of any change; and b) cause the whole of any work that you distribute or publish, that in whole or in part contains the Program or any part thereof, either with or without modifications, to be licensed at no charge to all third parties under the terms of this General Public License (except that you may choose to grant warranty protection to some or all third parties, at your option). c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the simplest and most usual way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this General Public License. d) You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. Mere aggregation of another independent work with the Program (or its derivative) on a volume of a storage or distribution medium does not bring the other work under the scope of these terms. 3. You may copy and distribute the Program (or a portion or derivative of it, under Paragraph 2) in object code or executable form under the terms of Paragraphs 1 and 2 above provided that you also do one of the following: a) accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Paragraphs 1 and 2 above; or, b) accompany it with a written offer, valid for at least three years, to give any third party free (except for a nominal charge for the cost of distribution) a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Paragraphs 1 and 2 above; or, c) accompany it with the information you received as to where the corresponding source code may be obtained. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form alone.) Source code for a work means the preferred form of the work for making modifications to it. For an executable file, complete source code means all the source code for all modules it contains; but, as a special exception, it need not include source code for modules which are standard libraries that accompany the operating system on which the executable file runs, or for standard header files or definitions files that accompany that operating system. 4. You may not copy, modify, sublicense, distribute or transfer the Program except as expressly provided under this General Public License. Any attempt otherwise to copy, modify, sublicense, distribute or transfer the Program is void, and will automatically terminate your rights to use the Program under this License. However, parties who have received copies, or rights to use copies, from you under this General Public License will not have their licenses terminated so long as such parties remain in full compliance. 5. By copying, distributing or modifying the Program (or any work based on the Program) you indicate your acceptance of this license to do so, and all its terms and conditions. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. 7. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of the license which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the license, you may choose any version ever published by the Free Software Foundation. 8. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 9. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 10. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to humanity, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 1, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19xx name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (a program to direct compilers to make passes at assemblers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice That's all there is to it! --- The Artistic License 1.0 --- This software is Copyright (c) 2009 by Jérôme Quelin. This is free software, licensed under: The Artistic License 1.0 The Artistic License Preamble The intent of this document is to state the conditions under which a Package may be copied, such that the Copyright Holder maintains some semblance of artistic control over the development of the package, while giving the users of the package the right to use and distribute the Package in a more-or-less customary fashion, plus the right to make reasonable modifications. Definitions: - "Package" refers to the collection of files distributed by the Copyright Holder, and derivatives of that collection of files created through textual modification. - "Standard Version" refers to such a Package if it has not been modified, or has been modified in accordance with the wishes of the Copyright Holder. - "Copyright Holder" is whoever is named in the copyright or copyrights for the package. - "You" is you, if you're thinking about copying or distributing this Package. - "Reasonable copying fee" is whatever you can justify on the basis of media cost, duplication charges, time of people involved, and so on. (You will not be required to justify it to the Copyright Holder, but only to the computing community at large as a market that must bear the fee.) - "Freely Available" means that no fee is charged for the item itself, though there may be fees involved in handling the item. It also means that recipients of the item may redistribute it under the same conditions they received it. 1. You may make and give away verbatim copies of the source form of the Standard Version of this Package without restriction, provided that you duplicate all of the original copyright notices and associated disclaimers. 2. You may apply bug fixes, portability fixes and other modifications derived from the Public Domain or from the Copyright Holder. A Package modified in such a way shall still be considered the Standard Version. 3. You may otherwise modify your copy of this Package in any way, provided that you insert a prominent notice in each changed file stating how and when you changed that file, and provided that you do at least ONE of the following: a) place your modifications in the Public Domain or otherwise make them Freely Available, such as by posting said modifications to Usenet or an equivalent medium, or placing the modifications on a major archive site such as ftp.uu.net, or by allowing the Copyright Holder to include your modifications in the Standard Version of the Package. b) use the modified Package only within your corporation or organization. c) rename any non-standard executables so the names do not conflict with standard executables, which must also be provided, and provide a separate manual page for each non-standard executable that clearly documents how it differs from the Standard Version. d) make other distribution arrangements with the Copyright Holder. 4. You may distribute the programs of this Package in object code or executable form, provided that you do at least ONE of the following: a) distribute a Standard Version of the executables and library files, together with instructions (in the manual page or equivalent) on where to get the Standard Version. b) accompany the distribution with the machine-readable source of the Package with your modifications. c) accompany any non-standard executables with their corresponding Standard Version executables, giving the non-standard executables non-standard names, and clearly documenting the differences in manual pages (or equivalent), together with instructions on where to get the Standard Version. d) make other distribution arrangements with the Copyright Holder. 5. You may charge a reasonable copying fee for any distribution of this Package. You may charge any fee you choose for support of this Package. You may not charge a fee for this Package itself. However, you may distribute this Package in aggregate with other (possibly commercial) programs as part of a larger (possibly commercial) software distribution provided that you do not advertise this Package as a product of your own. 6. The scripts and library files supplied as input to or produced as output from the programs of this Package do not automatically fall under the copyright of this Package, but belong to whomever generated them, and may be sold commercially, and may be aggregated with this Package. 7. C or perl subroutines supplied by you and linked into this Package shall not be considered part of this Package. 8. The name of the Copyright Holder may not be used to endorse or promote products derived from this software without specific prior written permission. 9. THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. The End Dist-Zilla-Plugin-Test-Compile-2.058/Makefile.PL000644 000766 000024 00000012507 13216334661 021502 0ustar00etherstaff000000 000000 # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # 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 Makefile.PL for Dist-Zilla-Plugin-Test-Compile was generated by # Dist::Zilla::Plugin::MakeMaker::Fallback 0.026 # and Dist::Zilla::Plugin::MakeMaker::Awesome 0.39. # Don't edit it but the dist.ini and plugins used to construct it. use strict; use warnings; use 5.008; use ExtUtils::MakeMaker; BEGIN { my %configure_requires = ( 'ExtUtils::MakeMaker' => '0', 'Module::Build::Tiny' => '0.034', ); my %errors = map { eval "require $_; $_->VERSION($configure_requires{$_}); 1"; $_ => $@, } keys %configure_requires; if (grep { $_ } values %errors) { warn "Errors from configure prereqs:\n" . do { require Data::Dumper; Data::Dumper->new([ \%errors ])->Indent(2)->Terse(1)->Sortkeys(1)->Dump; }; } if (not $ENV{PERL_MM_FALLBACK_SILENCE_WARNING}) { warn <<'EOW'; *** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING *** If you're seeing this warning, your toolchain is really, really old* and you'll almost certainly have problems installing CPAN modules from this century. But never fear, dear user, for we have the technology to fix this! If you're using CPAN.pm to install things, then you can upgrade it using: cpan CPAN If you're using CPANPLUS to install things, then you can upgrade it using: cpanp CPANPLUS If you're using cpanminus, you shouldn't be seeing this message in the first place, so please file an issue on github. If you're using a packaging tool through a unix distribution, this issue should be reported to the package manager. If you're installing manually, please retrain your fingers to run Build.PL when present instead of Makefile.PL. This public service announcement was brought to you by the Perl Toolchain Gang, the irc.perl.org #toolchain IRC channel, and the number 42. ---- * Alternatively, you are doing something overly clever, in which case you should consider setting the 'prefer_installer' config option in CPAN.pm, or 'prefer_makefile' in CPANPLUS, to 'mb" and '0' respectively. You can also silence this warning for future installations by setting the PERL_MM_FALLBACK_SILENCE_WARNING environment variable. EOW sleep 10 if -t STDIN && (-t STDOUT || !(-f STDOUT || -c STDOUT)); } } # end BEGIN my %WriteMakefileArgs = ( "ABSTRACT" => "Common tests to check syntax of your modules, using only core modules", "AUTHOR" => "J\x{e9}r\x{f4}me Quelin , Karen Etheridge ", "CONFIGURE_REQUIRES" => { "ExtUtils::MakeMaker" => 0, "Module::Build::Tiny" => "0.034" }, "DISTNAME" => "Dist-Zilla-Plugin-Test-Compile", "LICENSE" => "perl", "MIN_PERL_VERSION" => "5.008", "NAME" => "Dist::Zilla::Plugin::Test::Compile", "PL_FILES" => {}, "PREREQ_PM" => { "Data::Section" => "0.004", "Dist::Zilla" => "4.300039", "Dist::Zilla::Dist::Builder" => 0, "Dist::Zilla::File::InMemory" => 0, "Dist::Zilla::Role::FileFinderUser" => 0, "Dist::Zilla::Role::FileGatherer" => 0, "Dist::Zilla::Role::FileMunger" => 0, "Dist::Zilla::Role::PrereqSource" => 0, "Dist::Zilla::Role::TextTemplate" => 0, "Moose" => 0, "Moose::Util::TypeConstraints" => 0, "Path::Tiny" => 0, "Sub::Exporter::ForMethods" => 0, "namespace::autoclean" => 0, "strict" => 0, "warnings" => 0 }, "TEST_REQUIRES" => { "CPAN::Meta::Check" => "0.011", "CPAN::Meta::Requirements" => 0, "File::Spec" => 0, "File::pushd" => "1.004", "IO::Handle" => 0, "IPC::Open3" => 0, "Module::CoreList" => "2.77", "Module::Metadata" => 0, "Perl::PrereqScanner" => "1.016", "Test::DZil" => 0, "Test::Deep" => 0, "Test::MinimumVersion" => 0, "Test::More" => "0.96", "Test::Warnings" => "0.009", "if" => 0, "utf8" => 0, "version" => 0 }, "VERSION" => "2.058", "test" => { "TESTS" => "t/*.t" } ); my %FallbackPrereqs = ( "CPAN::Meta::Check" => "0.011", "CPAN::Meta::Requirements" => 0, "Data::Section" => "0.004", "Dist::Zilla" => "4.300039", "Dist::Zilla::Dist::Builder" => 0, "Dist::Zilla::File::InMemory" => 0, "Dist::Zilla::Role::FileFinderUser" => 0, "Dist::Zilla::Role::FileGatherer" => 0, "Dist::Zilla::Role::FileMunger" => 0, "Dist::Zilla::Role::PrereqSource" => 0, "Dist::Zilla::Role::TextTemplate" => 0, "File::Spec" => 0, "File::pushd" => "1.004", "IO::Handle" => 0, "IPC::Open3" => 0, "Module::CoreList" => "2.77", "Module::Metadata" => 0, "Moose" => 0, "Moose::Util::TypeConstraints" => 0, "Path::Tiny" => 0, "Perl::PrereqScanner" => "1.016", "Sub::Exporter::ForMethods" => 0, "Test::DZil" => 0, "Test::Deep" => 0, "Test::MinimumVersion" => 0, "Test::More" => "0.96", "Test::Warnings" => "0.009", "if" => 0, "namespace::autoclean" => 0, "strict" => 0, "utf8" => 0, "version" => 0, "warnings" => 0 ); unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) { delete $WriteMakefileArgs{TEST_REQUIRES}; delete $WriteMakefileArgs{BUILD_REQUIRES}; $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs; } delete $WriteMakefileArgs{CONFIGURE_REQUIRES} unless eval { ExtUtils::MakeMaker->VERSION(6.52) }; WriteMakefile(%WriteMakefileArgs); Dist-Zilla-Plugin-Test-Compile-2.058/MANIFEST000644 000766 000024 00000001714 13216334661 020657 0ustar00etherstaff000000 000000 # This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.010. AUTHOR_PLEDGE Build.PL CONTRIBUTING Changes INSTALL LICENCE MANIFEST META.json META.yml Makefile.PL README dist.ini examples/dist.ini lib/Dist/Zilla/Plugin/Test/Compile.pm t/00-compile.t t/00-report-prereqs.dd t/00-report-prereqs.t t/01-basic.t t/02-warnings.t t/03-taint.t t/04-bash.t t/05-prereqs.t t/06-filename.t t/07-prereqs-phase.t t/08-xt_mode.t t/09-extra-files.t t/10-shebang-w.t t/11-shebang-C.t t/12-shebang-comment.t t/13-shebang-dashes.t t/14-extratests.t t/15-needs-display.t t/16-filename-fail-on-warning.t t/17-switch.t t/zzz-check-breaks.t xt/author/clean-namespaces.t xt/author/eol.t xt/author/kwalitee.t xt/author/mojibake.t xt/author/no-tabs.t xt/author/pod-coverage.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 Dist-Zilla-Plugin-Test-Compile-2.058/META.json000644 000766 000024 00000143050 13216334661 021147 0ustar00etherstaff000000 000000 { "abstract" : "Common tests to check syntax of your modules, using only core modules", "author" : [ "J\u00e9r\u00f4me Quelin ", "Karen Etheridge " ], "dynamic_config" : 0, "generated_by" : "Dist::Zilla version 6.010, CPAN::Meta::Converter version 2.150010", "keywords" : [ "plugin", "test", "compile", "verify", "validate", "load", "modules", "scripts" ], "license" : [ "perl_5" ], "meta-spec" : { "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", "version" : 2 }, "name" : "Dist-Zilla-Plugin-Test-Compile", "no_index" : { "directory" : [ "examples", "t", "xt" ] }, "prereqs" : { "configure" : { "requires" : { "ExtUtils::MakeMaker" : "0", "Module::Build::Tiny" : "0.034", "perl" : "5.006" } }, "develop" : { "recommends" : { "Dist::Zilla::PluginBundle::Author::ETHER" : "0.132" }, "requires" : { "Dist::Zilla" : "5.000", "Encode" : "0", "Pod::Coverage::TrustPod" : "0", "Pod::Wordlist" : "0", "Test::CPAN::Changes" : "0.19", "Test::CPAN::Meta" : "0", "Test::CleanNamespaces" : "0.15", "Test::EOL" : "0", "Test::Kwalitee" : "1.21", "Test::MinimumVersion" : "0", "Test::Mojibake" : "1.0", "Test::More" : "0.96", "Test::NoTabs" : "0", "Test::Pod" : "1.41", "Test::Pod::Coverage" : "1.08", "Test::Pod::No404s" : "0", "Test::Portability::Files" : "0", "Test::Spelling" : "0.12", "Test::Warnings" : "0", "perl" : "5.014" }, "suggests" : { "Dist::Zilla" : "5", "Dist::Zilla::Plugin::Authority" : "1.009", "Dist::Zilla::Plugin::AutoMetaResources" : "0", "Dist::Zilla::Plugin::AutoPrereqs" : "5.038", "Dist::Zilla::Plugin::Bootstrap::lib" : "0", "Dist::Zilla::Plugin::Breaks" : "0", "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::Covenant" : "0", "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::Fallback" : "0.012", "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::MetaResources" : "0", "Dist::Zilla::Plugin::MetaTests" : "0", "Dist::Zilla::Plugin::MetaYAML" : "0", "Dist::Zilla::Plugin::MinimumPerl" : "1.006", "Dist::Zilla::Plugin::ModuleBuildTiny::Fallback" : "0.018", "Dist::Zilla::Plugin::MojibakeTests" : "0.8", "Dist::Zilla::Plugin::NextRelease" : "5.033", "Dist::Zilla::Plugin::PodCoverageTests" : "5.040", "Dist::Zilla::Plugin::PodSyntaxTests" : "5.040", "Dist::Zilla::Plugin::PodWeaver" : "4.005", "Dist::Zilla::Plugin::Prepender" : "2.002", "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::Test::CPAN::Changes" : "0.012", "Dist::Zilla::Plugin::Test::ChangesHasContent" : "0", "Dist::Zilla::Plugin::Test::CheckBreaks" : "0.017", "Dist::Zilla::Plugin::Test::CleanNamespaces" : "0.006", "Dist::Zilla::Plugin::Test::Compile" : "0", "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.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.097", "Dist::Zilla::PluginBundle::Git::VersionManager" : "0", "Software::License::Perl_5" : "0" } }, "runtime" : { "requires" : { "Data::Section" : "0.004", "Dist::Zilla" : "4.300039", "Dist::Zilla::Dist::Builder" : "0", "Dist::Zilla::File::InMemory" : "0", "Dist::Zilla::Role::FileFinderUser" : "0", "Dist::Zilla::Role::FileGatherer" : "0", "Dist::Zilla::Role::FileMunger" : "0", "Dist::Zilla::Role::PrereqSource" : "0", "Dist::Zilla::Role::TextTemplate" : "0", "Moose" : "0", "Moose::Util::TypeConstraints" : "0", "Path::Tiny" : "0", "Sub::Exporter::ForMethods" : "0", "namespace::autoclean" : "0", "perl" : "5.008", "strict" : "0", "warnings" : "0" } }, "test" : { "recommends" : { "CPAN::Meta" : "2.120900" }, "requires" : { "CPAN::Meta::Check" : "0.011", "CPAN::Meta::Requirements" : "0", "File::Spec" : "0", "File::pushd" : "1.004", "IO::Handle" : "0", "IPC::Open3" : "0", "Module::CoreList" : "2.77", "Module::Metadata" : "0", "Perl::PrereqScanner" : "1.016", "Test::DZil" : "0", "Test::Deep" : "0", "Test::MinimumVersion" : "0", "Test::More" : "0.96", "Test::Warnings" : "0.009", "if" : "0", "perl" : "5.008", "utf8" : "0", "version" : "0" } } }, "provides" : { "Dist::Zilla::Plugin::Test::Compile" : { "file" : "lib/Dist/Zilla/Plugin/Test/Compile.pm", "version" : "2.058" } }, "release_status" : "stable", "resources" : { "bugtracker" : { "mailto" : "bug-Dist-Zilla-Plugin-Test-Compile@rt.cpan.org", "web" : "https://rt.cpan.org/Public/Dist/Display.html?Name=Dist-Zilla-Plugin-Test-Compile" }, "homepage" : "https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile", "repository" : { "type" : "git", "url" : "https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile.git", "web" : "https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile" }, "x_IRC" : "irc://irc.perl.org/#distzilla", "x_MailingList" : "http://dzil.org/#mailing-list" }, "version" : "2.058", "x_Dist_Zilla" : { "perl" : { "version" : "5.027006" }, "plugins" : [ { "class" : "Dist::Zilla::Plugin::Prepender", "name" : "Prepender", "version" : "2.004" }, { "class" : "Dist::Zilla::Plugin::Bootstrap::lib", "config" : { "Dist::Zilla::Role::Bootstrap" : { "$Dist::Zilla::Role::Bootstrap::VERSION" : "1.001004", "distname" : "Dist-Zilla-Plugin-Test-Compile", "fallback" : 1, "try_built" : null, "try_built_method" : "mtime" } }, "name" : "Bootstrap::lib", "version" : "1.001002" }, { "class" : "Dist::Zilla::Plugin::Test::Compile", "config" : { "Dist::Zilla::Plugin::Test::Compile" : { "bail_out_on_fail" : "1", "fail_on_warning" : "author", "fake_home" : 0, "filename" : "t/00-compile.t", "module_finder" : [ ":InstallModules" ], "needs_display" : 0, "phase" : "test", "script_finder" : [ ":ExecFiles", "@Author::ETHER/Examples" ], "skips" : [], "switch" : [] } }, "name" : "Test::Compile", "version" : "2.058" }, { "class" : "Dist::Zilla::Plugin::PromptIfStale", "config" : { "Dist::Zilla::Plugin::PromptIfStale" : { "check_all_plugins" : 0, "check_all_prereqs" : 0, "modules" : [ "Dist::Zilla::PluginBundle::Author::ETHER" ], "phase" : "build", "run_under_travis" : 0, "skip" : [] } }, "name" : "@Author::ETHER/stale modules, build", "version" : "0.054" }, { "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::FileFinder::ByName", "name" : "@Author::ETHER/Examples", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Git::GatherDir", "config" : { "Dist::Zilla::Plugin::GatherDir" : { "exclude_filename" : [ "AUTHOR_PLEDGE", "CONTRIBUTING", "INSTALL", "LICENCE", "README.pod", "TODO" ], "exclude_match" : [], "follow_symlinks" : 0, "include_dotfiles" : 0, "prefix" : "", "prune_directory" : [], "root" : "." }, "Dist::Zilla::Plugin::Git::GatherDir" : { "include_untracked" : 0 } }, "name" : "@Author::ETHER/Git::GatherDir", "version" : "2.043" }, { "class" : "Dist::Zilla::Plugin::MetaYAML", "name" : "@Author::ETHER/MetaYAML", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::MetaJSON", "name" : "@Author::ETHER/MetaJSON", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Readme", "name" : "@Author::ETHER/Readme", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Manifest", "name" : "@Author::ETHER/Manifest", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::License", "name" : "@Author::ETHER/License", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::GenerateFile::FromShareDir", "config" : { "Dist::Zilla::Plugin::GenerateFile::FromShareDir" : { "destination_filename" : "CONTRIBUTING", "dist" : "Dist-Zilla-PluginBundle-Author-ETHER", "encoding" : "UTF-8", "has_xs" : 0, "location" : "build", "source_filename" : "CONTRIBUTING" }, "Dist::Zilla::Role::RepoFileInjector" : { "allow_overwrite" : 1, "repo_root" : ".", "version" : "0.007" } }, "name" : "@Author::ETHER/generate CONTRIBUTING", "version" : "0.013" }, { "class" : "Dist::Zilla::Plugin::InstallGuide", "name" : "@Author::ETHER/InstallGuide", "version" : "1.200007" }, { "class" : "Dist::Zilla::Plugin::Test::NoTabs", "config" : { "Dist::Zilla::Plugin::Test::NoTabs" : { "filename" : "xt/author/no-tabs.t", "finder" : [ ":InstallModules", ":ExecFiles", "@Author::ETHER/Examples", ":TestFiles", ":ExtraTestFiles" ] } }, "name" : "@Author::ETHER/Test::NoTabs", "version" : "0.15" }, { "class" : "Dist::Zilla::Plugin::Test::EOL", "config" : { "Dist::Zilla::Plugin::Test::EOL" : { "filename" : "xt/author/eol.t", "finder" : [ ":ExecFiles", ":ExtraTestFiles", ":InstallModules", ":TestFiles", "@Author::ETHER/Examples" ], "trailing_whitespace" : 1 } }, "name" : "@Author::ETHER/Test::EOL", "version" : "0.19" }, { "class" : "Dist::Zilla::Plugin::MetaTests", "name" : "@Author::ETHER/MetaTests", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Test::CPAN::Changes", "config" : { "Dist::Zilla::Plugin::Test::CPAN::Changes" : { "changelog" : "Changes" } }, "name" : "@Author::ETHER/Test::CPAN::Changes", "version" : "0.012" }, { "class" : "Dist::Zilla::Plugin::Test::ChangesHasContent", "name" : "@Author::ETHER/Test::ChangesHasContent", "version" : "0.011" }, { "class" : "Dist::Zilla::Plugin::Test::MinimumVersion", "name" : "@Author::ETHER/Test::MinimumVersion", "version" : "2.000007" }, { "class" : "Dist::Zilla::Plugin::PodSyntaxTests", "name" : "@Author::ETHER/PodSyntaxTests", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::PodCoverageTests", "name" : "@Author::ETHER/PodCoverageTests", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Test::PodSpelling", "config" : { "Dist::Zilla::Plugin::Test::PodSpelling" : { "directories" : [ "examples", "lib", "script", "t", "xt" ], "spell_cmd" : "", "stopwords" : [ "irc" ], "wordlist" : "Pod::Wordlist" } }, "name" : "@Author::ETHER/Test::PodSpelling", "version" : "2.007005" }, { "class" : "Dist::Zilla::Plugin::Test::Pod::No404s", "name" : "@Author::ETHER/Test::Pod::No404s", "version" : "1.004" }, { "class" : "Dist::Zilla::Plugin::Test::Kwalitee", "config" : { "Dist::Zilla::Plugin::Test::Kwalitee" : { "filename" : "xt/author/kwalitee.t", "skiptest" : [] } }, "name" : "@Author::ETHER/Test::Kwalitee", "version" : "2.12" }, { "class" : "Dist::Zilla::Plugin::MojibakeTests", "name" : "@Author::ETHER/MojibakeTests", "version" : "0.8" }, { "class" : "Dist::Zilla::Plugin::Test::ReportPrereqs", "name" : "@Author::ETHER/Test::ReportPrereqs", "version" : "0.027" }, { "class" : "Dist::Zilla::Plugin::Test::Portability", "config" : { "Dist::Zilla::Plugin::Test::Portability" : { "options" : "" } }, "name" : "@Author::ETHER/Test::Portability", "version" : "2.001000" }, { "class" : "Dist::Zilla::Plugin::Test::CleanNamespaces", "config" : { "Dist::Zilla::Plugin::Test::CleanNamespaces" : { "filename" : "xt/author/clean-namespaces.t", "skips" : [] } }, "name" : "@Author::ETHER/Test::CleanNamespaces", "version" : "0.006" }, { "class" : "Dist::Zilla::Plugin::Git::Describe", "name" : "@Author::ETHER/Git::Describe", "version" : "0.007" }, { "class" : "Dist::Zilla::Plugin::PodWeaver", "config" : { "Dist::Zilla::Plugin::PodWeaver" : { "config_plugins" : [ "@Author::ETHER" ], "finder" : [ ":InstallModules", ":ExecFiles" ], "plugins" : [ { "class" : "Pod::Weaver::Plugin::EnsurePod5", "name" : "@Author::ETHER/EnsurePod5", "version" : "4.015" }, { "class" : "Pod::Weaver::Plugin::H1Nester", "name" : "@Author::ETHER/H1Nester", "version" : "4.015" }, { "class" : "Pod::Weaver::Plugin::SingleEncoding", "name" : "@Author::ETHER/SingleEncoding", "version" : "4.015" }, { "class" : "Pod::Weaver::Plugin::Transformer", "name" : "@Author::ETHER/List", "version" : "4.015" }, { "class" : "Pod::Weaver::Plugin::Transformer", "name" : "@Author::ETHER/Verbatim", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Region", "name" : "@Author::ETHER/header", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Name", "name" : "@Author::ETHER/Name", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Version", "name" : "@Author::ETHER/Version", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Region", "name" : "@Author::ETHER/prelude", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Generic", "name" : "SYNOPSIS", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Generic", "name" : "DESCRIPTION", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Generic", "name" : "OVERVIEW", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "ATTRIBUTES", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "METHODS", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "FUNCTIONS", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Collect", "name" : "TYPES", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Leftovers", "name" : "@Author::ETHER/Leftovers", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Region", "name" : "@Author::ETHER/postlude", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::GenerateSection", "name" : "@Author::ETHER/generate SUPPORT", "version" : "1.06" }, { "class" : "Pod::Weaver::Section::AllowOverride", "name" : "@Author::ETHER/allow override SUPPORT", "version" : "0.05" }, { "class" : "Pod::Weaver::Section::Authors", "name" : "@Author::ETHER/Authors", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Contributors", "name" : "@Author::ETHER/Contributors", "version" : "0.009" }, { "class" : "Pod::Weaver::Section::Legal", "name" : "@Author::ETHER/Legal", "version" : "4.015" }, { "class" : "Pod::Weaver::Section::Region", "name" : "@Author::ETHER/footer", "version" : "4.015" } ] } }, "name" : "@Author::ETHER/PodWeaver", "version" : "4.008" }, { "class" : "Dist::Zilla::Plugin::GithubMeta", "name" : "@Author::ETHER/GithubMeta", "version" : "0.54" }, { "class" : "Dist::Zilla::Plugin::AutoMetaResources", "name" : "@Author::ETHER/AutoMetaResources", "version" : "1.21" }, { "class" : "Dist::Zilla::Plugin::Authority", "name" : "@Author::ETHER/Authority", "version" : "1.009" }, { "class" : "Dist::Zilla::Plugin::MetaNoIndex", "name" : "@Author::ETHER/MetaNoIndex", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::MetaProvides::Package", "config" : { "Dist::Zilla::Plugin::MetaProvides::Package" : { "finder" : [ ":InstallModules" ], "finder_objects" : [ { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":InstallModules", "version" : "6.010" } ], "include_underscores" : 0 }, "Dist::Zilla::Role::MetaProvider::Provider" : { "$Dist::Zilla::Role::MetaProvider::Provider::VERSION" : "2.002004", "inherit_missing" : 0, "inherit_version" : 0, "meta_noindex" : 1 }, "Dist::Zilla::Role::ModuleMetadata" : { "Module::Metadata" : "1.000033", "version" : "0.004" } }, "name" : "@Author::ETHER/MetaProvides::Package", "version" : "2.004003" }, { "class" : "Dist::Zilla::Plugin::MetaConfig", "name" : "@Author::ETHER/MetaConfig", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Keywords", "config" : { "Dist::Zilla::Plugin::Keywords" : { "keywords" : [ "plugin", "test", "compile", "verify", "validate", "load", "modules", "scripts" ] } }, "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.010" }, { "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.010" }, { "class" : "Dist::Zilla::Plugin::MakeMaker::Fallback", "config" : { "Dist::Zilla::Plugin::MakeMaker" : { "make_path" : "make", "version" : "6.010" }, "Dist::Zilla::Plugin::MakeMaker::Awesome" : { "version" : "0.39" }, "Dist::Zilla::Role::TestRunner" : { "default_jobs" : 9, "version" : "6.010" } }, "name" : "@Author::ETHER/MakeMaker::Fallback", "version" : "0.026" }, { "class" : "Dist::Zilla::Plugin::ModuleBuildTiny::Fallback", "config" : { "Dist::Zilla::Plugin::ModuleBuildTiny::Fallback" : { "mb_version" : "0.28", "plugins" : [ { "class" : "Dist::Zilla::Plugin::ModuleBuild", "config" : { "Dist::Zilla::Role::TestRunner" : { "default_jobs" : 9 } }, "name" : "ModuleBuild, via ModuleBuildTiny::Fallback", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::ModuleBuildTiny", "config" : { "Dist::Zilla::Role::TestRunner" : { "default_jobs" : 9 } }, "name" : "ModuleBuildTiny, via ModuleBuildTiny::Fallback", "version" : "0.015" } ] }, "Dist::Zilla::Role::TestRunner" : { "default_jobs" : 9 } }, "name" : "@Author::ETHER/ModuleBuildTiny::Fallback", "version" : "0.025" }, { "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" : [] } }, "name" : "@Author::ETHER/Git::Contributors", "version" : "0.032" }, { "class" : "Dist::Zilla::Plugin::StaticInstall", "config" : { "Dist::Zilla::Plugin::StaticInstall" : { "dry_run" : 0, "mode" : "auto" } }, "name" : "@Author::ETHER/StaticInstall", "version" : "0.011" }, { "class" : "Dist::Zilla::Plugin::RunExtraTests", "config" : { "Dist::Zilla::Role::TestRunner" : { "default_jobs" : 9 } }, "name" : "@Author::ETHER/RunExtraTests", "version" : "0.029" }, { "class" : "Dist::Zilla::Plugin::CheckSelfDependency", "config" : { "Dist::Zilla::Plugin::CheckSelfDependency" : { "finder" : [ ":InstallModules" ] }, "Dist::Zilla::Role::ModuleMetadata" : { "Module::Metadata" : "1.000033", "version" : "0.004" } }, "name" : "@Author::ETHER/CheckSelfDependency", "version" : "0.011" }, { "class" : "Dist::Zilla::Plugin::Run::AfterBuild", "config" : { "Dist::Zilla::Plugin::Run::Role::Runner" : { "fatal_errors" : 1, "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.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" : 0, "quiet" : 1, "version" : "0.046" } }, "name" : "@Author::ETHER/.latest", "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.20171120" } }, "name" : "@Author::ETHER/EnsureLatestPerl", "version" : "0.006" }, { "class" : "Dist::Zilla::Plugin::Git::Check", "config" : { "Dist::Zilla::Plugin::Git::Check" : { "untracked_files" : "die" }, "Dist::Zilla::Role::Git::DirtyFiles" : { "allow_dirty" : [], "allow_dirty_match" : [], "changelog" : "Changes" }, "Dist::Zilla::Role::Git::Repo" : { "git_version" : "2.14.2", "repo_root" : "." } }, "name" : "@Author::ETHER/initial check", "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.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.014" }, { "class" : "Dist::Zilla::Plugin::Git::Remote::Check", "name" : "@Author::ETHER/Git::Remote::Check", "version" : "0.1.2" }, { "class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed", "name" : "@Author::ETHER/CheckPrereqsIndexed", "version" : "0.020" }, { "class" : "Dist::Zilla::Plugin::TestRelease", "name" : "@Author::ETHER/TestRelease", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Git::Check", "config" : { "Dist::Zilla::Plugin::Git::Check" : { "untracked_files" : "die" }, "Dist::Zilla::Role::Git::DirtyFiles" : { "allow_dirty" : [], "allow_dirty_match" : [], "changelog" : "Changes" }, "Dist::Zilla::Role::Git::Repo" : { "git_version" : "2.14.2", "repo_root" : "." } }, "name" : "@Author::ETHER/after tests", "version" : "2.043" }, { "class" : "Dist::Zilla::Plugin::CheckIssues", "name" : "@Author::ETHER/CheckIssues", "version" : "0.010" }, { "class" : "Dist::Zilla::Plugin::UploadToCPAN", "name" : "@Author::ETHER/UploadToCPAN", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::CopyFilesFromRelease", "config" : { "Dist::Zilla::Plugin::CopyFilesFromRelease" : { "filename" : [ "AUTHOR_PLEDGE", "CONTRIBUTING", "INSTALL", "LICENCE", "LICENSE", "ppport.h" ], "match" : [] } }, "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.163250" }, { "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.008" }, { "class" : "Dist::Zilla::Plugin::MetaProvides::Update", "name" : "@Author::ETHER/@Git::VersionManager/MetaProvides::Update", "version" : "0.003" }, { "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" : { "Dist::Zilla::Plugin::Git::Commit" : { "add_files_in" : [ "." ], "commit_msg" : "%N-%v%t%n%n%c" }, "Dist::Zilla::Role::Git::DirtyFiles" : { "allow_dirty" : [ "AUTHOR_PLEDGE", "CONTRIBUTING", "Changes", "INSTALL", "LICENCE", "README.pod" ], "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/@Git::VersionManager/release snapshot", "version" : "2.043" }, { "class" : "Dist::Zilla::Plugin::Git::Tag", "config" : { "Dist::Zilla::Plugin::Git::Tag" : { "branch" : null, "changelog" : "Changes", "signed" : 0, "tag" : "v2.058", "tag_format" : "v%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::VersionManager/Git::Tag", "version" : "2.043" }, { "class" : "Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional", "config" : { "Dist::Zilla::Plugin::BumpVersionAfterRelease" : { "finders" : [ ":ExecFiles", ":InstallModules" ], "global" : 1, "munge_makefile_pl" : 1 }, "Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional" : {} }, "name" : "@Author::ETHER/@Git::VersionManager/BumpVersionAfterRelease::Transitional", "version" : "0.008" }, { "class" : "Dist::Zilla::Plugin::NextRelease", "name" : "@Author::ETHER/@Git::VersionManager/NextRelease", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Git::Commit", "config" : { "Dist::Zilla::Plugin::Git::Commit" : { "add_files_in" : [], "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/@Git::VersionManager/post-release commit", "version" : "2.043" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "develop", "type" : "suggests" } }, "name" : "@Author::ETHER/@Git::VersionManager/prereqs for @Git::VersionManager", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Git::Push", "config" : { "Dist::Zilla::Plugin::Git::Push" : { "push_to" : [ "origin" ], "remotes_must_exist" : 1 }, "Dist::Zilla::Role::Git::Repo" : { "git_version" : "2.14.2", "repo_root" : "." } }, "name" : "@Author::ETHER/Git::Push", "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" : { "Dist::Zilla::Plugin::Run::Role::Runner" : { "fatal_errors" : 0, "quiet" : 0, "run" : [ "REDACTED" ], "version" : "0.046" } }, "name" : "@Author::ETHER/install release", "version" : "0.046" }, { "class" : "Dist::Zilla::Plugin::Run::AfterRelease", "config" : { "Dist::Zilla::Plugin::Run::Role::Runner" : { "eval" : [ "print \"release complete!\\xa\"" ], "fatal_errors" : 1, "quiet" : 1, "version" : "0.046" } }, "name" : "@Author::ETHER/release complete", "version" : "0.046" }, { "class" : "Dist::Zilla::Plugin::ConfirmRelease", "name" : "@Author::ETHER/ConfirmRelease", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "develop", "type" : "suggests" } }, "name" : "@Author::ETHER/prereqs for @Author::ETHER", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Covenant", "name" : "Covenant", "version" : "0.1.2" }, { "class" : "Dist::Zilla::Plugin::MetaResources", "name" : "MetaResources", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Breaks", "name" : "Breaks", "version" : "0.004" }, { "class" : "Dist::Zilla::Plugin::Test::CheckBreaks", "config" : { "Dist::Zilla::Plugin::Test::CheckBreaks" : { "conflicts_module" : [ "Module::Runtime::Conflicts", "Moose::Conflicts" ], "no_forced_deps" : 0 }, "Dist::Zilla::Role::ModuleMetadata" : { "Module::Metadata" : "1.000033", "version" : "0.004" } }, "name" : "Test::CheckBreaks", "version" : "0.019" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "runtime", "type" : "requires" } }, "name" : "Prereqs", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::Prereqs", "config" : { "Dist::Zilla::Plugin::Prereqs" : { "phase" : "develop", "type" : "requires" } }, "name" : "DevelopRequires", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":InstallModules", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":IncModules", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":TestFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":ExtraTestFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":ExecFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":PerlExecFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":ShareFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":MainModule", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":AllFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::FinderCode", "name" : ":NoFiles", "version" : "6.010" }, { "class" : "Dist::Zilla::Plugin::VerifyPhases", "name" : "@Author::ETHER/PHASE VERIFICATION", "version" : "0.016" } ], "zilla" : { "class" : "Dist::Zilla::Dist::Builder", "config" : { "is_trial" : 0 }, "version" : "6.010" } }, "x_author_pledge" : { "version" : 1 }, "x_authority" : "cpan:JQUELIN", "x_breaks" : { "Test::Kwalitee::Extra" : "<= v0.0.8" }, "x_contributors" : [ "Ahmad M. Zawawi ", "Olivier Mengu\u00e9 ", "Kent Fredric ", "Jesse Luehrs ", "David Golden ", "Randy Stauner ", "Harley Pig ", "Graham Knop ", "fayland ", "Peter Shangov ", "Chris Weyl ", "Ricardo SIGNES ", "Marcel Gruenauer " ], "x_serialization_backend" : "Cpanel::JSON::XS version 3.0239", "x_static_install" : 0, "x_use_unsafe_inc" : 0 } Dist-Zilla-Plugin-Test-Compile-2.058/META.yml000644 000766 000024 00000071736 13216334661 021012 0ustar00etherstaff000000 000000 --- abstract: 'Common tests to check syntax of your modules, using only core modules' author: - 'Jérôme Quelin ' - 'Karen Etheridge ' build_requires: CPAN::Meta::Check: '0.011' CPAN::Meta::Requirements: '0' File::Spec: '0' File::pushd: '1.004' IO::Handle: '0' IPC::Open3: '0' Module::CoreList: '2.77' Module::Metadata: '0' Perl::PrereqScanner: '1.016' Test::DZil: '0' Test::Deep: '0' Test::MinimumVersion: '0' Test::More: '0.96' Test::Warnings: '0.009' if: '0' perl: '5.008' utf8: '0' version: '0' configure_requires: ExtUtils::MakeMaker: '0' Module::Build::Tiny: '0.034' perl: '5.006' dynamic_config: 0 generated_by: 'Dist::Zilla version 6.010, CPAN::Meta::Converter version 2.150010' keywords: - plugin - test - compile - verify - validate - load - modules - scripts license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: '1.4' name: Dist-Zilla-Plugin-Test-Compile no_index: directory: - examples - t - xt provides: Dist::Zilla::Plugin::Test::Compile: file: lib/Dist/Zilla/Plugin/Test/Compile.pm version: '2.058' requires: Data::Section: '0.004' Dist::Zilla: '4.300039' Dist::Zilla::Dist::Builder: '0' Dist::Zilla::File::InMemory: '0' Dist::Zilla::Role::FileFinderUser: '0' Dist::Zilla::Role::FileGatherer: '0' Dist::Zilla::Role::FileMunger: '0' Dist::Zilla::Role::PrereqSource: '0' Dist::Zilla::Role::TextTemplate: '0' Moose: '0' Moose::Util::TypeConstraints: '0' Path::Tiny: '0' Sub::Exporter::ForMethods: '0' namespace::autoclean: '0' perl: '5.008' strict: '0' warnings: '0' resources: IRC: irc://irc.perl.org/#distzilla MailingList: http://dzil.org/#mailing-list bugtracker: https://rt.cpan.org/Public/Dist/Display.html?Name=Dist-Zilla-Plugin-Test-Compile homepage: https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile repository: https://github.com/karenetheridge/Dist-Zilla-Plugin-Test-Compile.git version: '2.058' x_Dist_Zilla: perl: version: '5.027006' plugins: - class: Dist::Zilla::Plugin::Prepender name: Prepender version: '2.004' - class: Dist::Zilla::Plugin::Bootstrap::lib config: Dist::Zilla::Role::Bootstrap: $Dist::Zilla::Role::Bootstrap::VERSION: '1.001004' distname: Dist-Zilla-Plugin-Test-Compile fallback: '1' try_built: ~ try_built_method: mtime name: Bootstrap::lib version: '1.001002' - class: Dist::Zilla::Plugin::Test::Compile config: Dist::Zilla::Plugin::Test::Compile: bail_out_on_fail: '1' fail_on_warning: author fake_home: 0 filename: t/00-compile.t module_finder: - ':InstallModules' needs_display: 0 phase: test script_finder: - ':ExecFiles' - '@Author::ETHER/Examples' skips: [] switch: [] name: Test::Compile version: '2.058' - class: Dist::Zilla::Plugin::PromptIfStale config: Dist::Zilla::Plugin::PromptIfStale: check_all_plugins: 0 check_all_prereqs: 0 modules: - Dist::Zilla::PluginBundle::Author::ETHER phase: build run_under_travis: 0 skip: [] name: '@Author::ETHER/stale modules, build' version: '0.054' - 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::FileFinder::ByName name: '@Author::ETHER/Examples' version: '6.010' - class: Dist::Zilla::Plugin::Git::GatherDir config: Dist::Zilla::Plugin::GatherDir: exclude_filename: - AUTHOR_PLEDGE - CONTRIBUTING - INSTALL - LICENCE - README.pod - TODO exclude_match: [] follow_symlinks: 0 include_dotfiles: 0 prefix: '' prune_directory: [] root: . Dist::Zilla::Plugin::Git::GatherDir: include_untracked: 0 name: '@Author::ETHER/Git::GatherDir' version: '2.043' - class: Dist::Zilla::Plugin::MetaYAML name: '@Author::ETHER/MetaYAML' version: '6.010' - class: Dist::Zilla::Plugin::MetaJSON name: '@Author::ETHER/MetaJSON' version: '6.010' - class: Dist::Zilla::Plugin::Readme name: '@Author::ETHER/Readme' version: '6.010' - class: Dist::Zilla::Plugin::Manifest name: '@Author::ETHER/Manifest' version: '6.010' - class: Dist::Zilla::Plugin::License name: '@Author::ETHER/License' version: '6.010' - class: Dist::Zilla::Plugin::GenerateFile::FromShareDir config: Dist::Zilla::Plugin::GenerateFile::FromShareDir: destination_filename: CONTRIBUTING dist: Dist-Zilla-PluginBundle-Author-ETHER encoding: UTF-8 has_xs: 0 location: build source_filename: CONTRIBUTING Dist::Zilla::Role::RepoFileInjector: allow_overwrite: 1 repo_root: . version: '0.007' name: '@Author::ETHER/generate CONTRIBUTING' version: '0.013' - class: Dist::Zilla::Plugin::InstallGuide name: '@Author::ETHER/InstallGuide' version: '1.200007' - class: Dist::Zilla::Plugin::Test::NoTabs config: Dist::Zilla::Plugin::Test::NoTabs: filename: xt/author/no-tabs.t finder: - ':InstallModules' - ':ExecFiles' - '@Author::ETHER/Examples' - ':TestFiles' - ':ExtraTestFiles' name: '@Author::ETHER/Test::NoTabs' version: '0.15' - class: Dist::Zilla::Plugin::Test::EOL config: Dist::Zilla::Plugin::Test::EOL: filename: xt/author/eol.t finder: - ':ExecFiles' - ':ExtraTestFiles' - ':InstallModules' - ':TestFiles' - '@Author::ETHER/Examples' trailing_whitespace: 1 name: '@Author::ETHER/Test::EOL' version: '0.19' - class: Dist::Zilla::Plugin::MetaTests name: '@Author::ETHER/MetaTests' version: '6.010' - class: Dist::Zilla::Plugin::Test::CPAN::Changes config: Dist::Zilla::Plugin::Test::CPAN::Changes: changelog: Changes name: '@Author::ETHER/Test::CPAN::Changes' version: '0.012' - class: Dist::Zilla::Plugin::Test::ChangesHasContent name: '@Author::ETHER/Test::ChangesHasContent' version: '0.011' - class: Dist::Zilla::Plugin::Test::MinimumVersion name: '@Author::ETHER/Test::MinimumVersion' version: '2.000007' - class: Dist::Zilla::Plugin::PodSyntaxTests name: '@Author::ETHER/PodSyntaxTests' version: '6.010' - class: Dist::Zilla::Plugin::PodCoverageTests name: '@Author::ETHER/PodCoverageTests' version: '6.010' - class: Dist::Zilla::Plugin::Test::PodSpelling config: Dist::Zilla::Plugin::Test::PodSpelling: directories: - examples - lib - script - t - xt spell_cmd: '' stopwords: - irc wordlist: Pod::Wordlist name: '@Author::ETHER/Test::PodSpelling' version: '2.007005' - class: Dist::Zilla::Plugin::Test::Pod::No404s name: '@Author::ETHER/Test::Pod::No404s' version: '1.004' - class: Dist::Zilla::Plugin::Test::Kwalitee config: Dist::Zilla::Plugin::Test::Kwalitee: filename: xt/author/kwalitee.t skiptest: [] name: '@Author::ETHER/Test::Kwalitee' version: '2.12' - class: Dist::Zilla::Plugin::MojibakeTests name: '@Author::ETHER/MojibakeTests' version: '0.8' - class: Dist::Zilla::Plugin::Test::ReportPrereqs name: '@Author::ETHER/Test::ReportPrereqs' version: '0.027' - class: Dist::Zilla::Plugin::Test::Portability config: Dist::Zilla::Plugin::Test::Portability: options: '' name: '@Author::ETHER/Test::Portability' version: '2.001000' - class: Dist::Zilla::Plugin::Test::CleanNamespaces config: Dist::Zilla::Plugin::Test::CleanNamespaces: filename: xt/author/clean-namespaces.t skips: [] name: '@Author::ETHER/Test::CleanNamespaces' version: '0.006' - class: Dist::Zilla::Plugin::Git::Describe name: '@Author::ETHER/Git::Describe' version: '0.007' - class: Dist::Zilla::Plugin::PodWeaver config: Dist::Zilla::Plugin::PodWeaver: config_plugins: - '@Author::ETHER' finder: - ':InstallModules' - ':ExecFiles' plugins: - class: Pod::Weaver::Plugin::EnsurePod5 name: '@Author::ETHER/EnsurePod5' version: '4.015' - class: Pod::Weaver::Plugin::H1Nester name: '@Author::ETHER/H1Nester' version: '4.015' - class: Pod::Weaver::Plugin::SingleEncoding name: '@Author::ETHER/SingleEncoding' version: '4.015' - class: Pod::Weaver::Plugin::Transformer name: '@Author::ETHER/List' version: '4.015' - class: Pod::Weaver::Plugin::Transformer name: '@Author::ETHER/Verbatim' version: '4.015' - class: Pod::Weaver::Section::Region name: '@Author::ETHER/header' version: '4.015' - class: Pod::Weaver::Section::Name name: '@Author::ETHER/Name' version: '4.015' - class: Pod::Weaver::Section::Version name: '@Author::ETHER/Version' version: '4.015' - class: Pod::Weaver::Section::Region name: '@Author::ETHER/prelude' version: '4.015' - class: Pod::Weaver::Section::Generic name: SYNOPSIS version: '4.015' - class: Pod::Weaver::Section::Generic name: DESCRIPTION version: '4.015' - class: Pod::Weaver::Section::Generic name: OVERVIEW version: '4.015' - class: Pod::Weaver::Section::Collect name: ATTRIBUTES version: '4.015' - class: Pod::Weaver::Section::Collect name: METHODS version: '4.015' - class: Pod::Weaver::Section::Collect name: FUNCTIONS version: '4.015' - class: Pod::Weaver::Section::Collect name: TYPES version: '4.015' - class: Pod::Weaver::Section::Leftovers name: '@Author::ETHER/Leftovers' version: '4.015' - class: Pod::Weaver::Section::Region name: '@Author::ETHER/postlude' version: '4.015' - class: Pod::Weaver::Section::GenerateSection name: '@Author::ETHER/generate SUPPORT' version: '1.06' - class: Pod::Weaver::Section::AllowOverride name: '@Author::ETHER/allow override SUPPORT' version: '0.05' - class: Pod::Weaver::Section::Authors name: '@Author::ETHER/Authors' version: '4.015' - class: Pod::Weaver::Section::Contributors name: '@Author::ETHER/Contributors' version: '0.009' - class: Pod::Weaver::Section::Legal name: '@Author::ETHER/Legal' version: '4.015' - class: Pod::Weaver::Section::Region name: '@Author::ETHER/footer' version: '4.015' name: '@Author::ETHER/PodWeaver' version: '4.008' - class: Dist::Zilla::Plugin::GithubMeta name: '@Author::ETHER/GithubMeta' version: '0.54' - class: Dist::Zilla::Plugin::AutoMetaResources name: '@Author::ETHER/AutoMetaResources' version: '1.21' - class: Dist::Zilla::Plugin::Authority name: '@Author::ETHER/Authority' version: '1.009' - class: Dist::Zilla::Plugin::MetaNoIndex name: '@Author::ETHER/MetaNoIndex' version: '6.010' - class: Dist::Zilla::Plugin::MetaProvides::Package config: Dist::Zilla::Plugin::MetaProvides::Package: finder: - ':InstallModules' finder_objects: - class: Dist::Zilla::Plugin::FinderCode name: ':InstallModules' version: '6.010' include_underscores: 0 Dist::Zilla::Role::MetaProvider::Provider: $Dist::Zilla::Role::MetaProvider::Provider::VERSION: '2.002004' inherit_missing: '0' inherit_version: '0' meta_noindex: '1' Dist::Zilla::Role::ModuleMetadata: Module::Metadata: '1.000033' version: '0.004' name: '@Author::ETHER/MetaProvides::Package' version: '2.004003' - class: Dist::Zilla::Plugin::MetaConfig name: '@Author::ETHER/MetaConfig' version: '6.010' - class: Dist::Zilla::Plugin::Keywords config: Dist::Zilla::Plugin::Keywords: keywords: - plugin - test - compile - verify - validate - load - modules - scripts 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.010' - 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.010' - class: Dist::Zilla::Plugin::MakeMaker::Fallback config: Dist::Zilla::Plugin::MakeMaker: make_path: make version: '6.010' Dist::Zilla::Plugin::MakeMaker::Awesome: version: '0.39' Dist::Zilla::Role::TestRunner: default_jobs: 9 version: '6.010' name: '@Author::ETHER/MakeMaker::Fallback' version: '0.026' - class: Dist::Zilla::Plugin::ModuleBuildTiny::Fallback config: Dist::Zilla::Plugin::ModuleBuildTiny::Fallback: mb_version: '0.28' plugins: - class: Dist::Zilla::Plugin::ModuleBuild config: Dist::Zilla::Role::TestRunner: default_jobs: 9 name: 'ModuleBuild, via ModuleBuildTiny::Fallback' version: '6.010' - class: Dist::Zilla::Plugin::ModuleBuildTiny config: Dist::Zilla::Role::TestRunner: default_jobs: 9 name: 'ModuleBuildTiny, via ModuleBuildTiny::Fallback' version: '0.015' Dist::Zilla::Role::TestRunner: default_jobs: 9 name: '@Author::ETHER/ModuleBuildTiny::Fallback' version: '0.025' - 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: [] name: '@Author::ETHER/Git::Contributors' version: '0.032' - class: Dist::Zilla::Plugin::StaticInstall config: Dist::Zilla::Plugin::StaticInstall: dry_run: 0 mode: auto name: '@Author::ETHER/StaticInstall' version: '0.011' - class: Dist::Zilla::Plugin::RunExtraTests config: Dist::Zilla::Role::TestRunner: default_jobs: 9 name: '@Author::ETHER/RunExtraTests' version: '0.029' - class: Dist::Zilla::Plugin::CheckSelfDependency config: Dist::Zilla::Plugin::CheckSelfDependency: finder: - ':InstallModules' Dist::Zilla::Role::ModuleMetadata: Module::Metadata: '1.000033' version: '0.004' name: '@Author::ETHER/CheckSelfDependency' version: '0.011' - class: Dist::Zilla::Plugin::Run::AfterBuild config: Dist::Zilla::Plugin::Run::Role::Runner: fatal_errors: 1 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.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: 0 quiet: 1 version: '0.046' name: '@Author::ETHER/.latest' 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.20171120' name: '@Author::ETHER/EnsureLatestPerl' version: '0.006' - class: Dist::Zilla::Plugin::Git::Check config: Dist::Zilla::Plugin::Git::Check: untracked_files: die Dist::Zilla::Role::Git::DirtyFiles: allow_dirty: [] allow_dirty_match: [] changelog: Changes Dist::Zilla::Role::Git::Repo: git_version: 2.14.2 repo_root: . name: '@Author::ETHER/initial check' 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.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.014' - class: Dist::Zilla::Plugin::Git::Remote::Check name: '@Author::ETHER/Git::Remote::Check' version: 0.1.2 - class: Dist::Zilla::Plugin::CheckPrereqsIndexed name: '@Author::ETHER/CheckPrereqsIndexed' version: '0.020' - class: Dist::Zilla::Plugin::TestRelease name: '@Author::ETHER/TestRelease' version: '6.010' - class: Dist::Zilla::Plugin::Git::Check config: Dist::Zilla::Plugin::Git::Check: untracked_files: die Dist::Zilla::Role::Git::DirtyFiles: allow_dirty: [] allow_dirty_match: [] changelog: Changes Dist::Zilla::Role::Git::Repo: git_version: 2.14.2 repo_root: . name: '@Author::ETHER/after tests' version: '2.043' - class: Dist::Zilla::Plugin::CheckIssues name: '@Author::ETHER/CheckIssues' version: '0.010' - class: Dist::Zilla::Plugin::UploadToCPAN name: '@Author::ETHER/UploadToCPAN' version: '6.010' - class: Dist::Zilla::Plugin::CopyFilesFromRelease config: Dist::Zilla::Plugin::CopyFilesFromRelease: filename: - AUTHOR_PLEDGE - CONTRIBUTING - INSTALL - LICENCE - LICENSE - ppport.h match: [] 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.163250' - 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.008' - class: Dist::Zilla::Plugin::MetaProvides::Update name: '@Author::ETHER/@Git::VersionManager/MetaProvides::Update' version: '0.003' - 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: Dist::Zilla::Plugin::Git::Commit: add_files_in: - . commit_msg: '%N-%v%t%n%n%c' Dist::Zilla::Role::Git::DirtyFiles: allow_dirty: - AUTHOR_PLEDGE - CONTRIBUTING - Changes - INSTALL - LICENCE - README.pod 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/@Git::VersionManager/release snapshot' version: '2.043' - class: Dist::Zilla::Plugin::Git::Tag config: Dist::Zilla::Plugin::Git::Tag: branch: ~ changelog: Changes signed: 0 tag: v2.058 tag_format: v%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::VersionManager/Git::Tag' version: '2.043' - class: Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional config: Dist::Zilla::Plugin::BumpVersionAfterRelease: finders: - ':ExecFiles' - ':InstallModules' global: 1 munge_makefile_pl: 1 Dist::Zilla::Plugin::BumpVersionAfterRelease::Transitional: {} name: '@Author::ETHER/@Git::VersionManager/BumpVersionAfterRelease::Transitional' version: '0.008' - class: Dist::Zilla::Plugin::NextRelease name: '@Author::ETHER/@Git::VersionManager/NextRelease' version: '6.010' - class: Dist::Zilla::Plugin::Git::Commit config: Dist::Zilla::Plugin::Git::Commit: add_files_in: [] 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/@Git::VersionManager/post-release commit' version: '2.043' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: develop type: suggests name: '@Author::ETHER/@Git::VersionManager/prereqs for @Git::VersionManager' version: '6.010' - class: Dist::Zilla::Plugin::Git::Push config: Dist::Zilla::Plugin::Git::Push: push_to: - origin remotes_must_exist: 1 Dist::Zilla::Role::Git::Repo: git_version: 2.14.2 repo_root: . name: '@Author::ETHER/Git::Push' 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: Dist::Zilla::Plugin::Run::Role::Runner: fatal_errors: 0 quiet: 0 run: - REDACTED version: '0.046' name: '@Author::ETHER/install release' version: '0.046' - class: Dist::Zilla::Plugin::Run::AfterRelease config: Dist::Zilla::Plugin::Run::Role::Runner: eval: - 'print "release complete!\xa"' fatal_errors: 1 quiet: 1 version: '0.046' name: '@Author::ETHER/release complete' version: '0.046' - class: Dist::Zilla::Plugin::ConfirmRelease name: '@Author::ETHER/ConfirmRelease' version: '6.010' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: develop type: suggests name: '@Author::ETHER/prereqs for @Author::ETHER' version: '6.010' - class: Dist::Zilla::Plugin::Covenant name: Covenant version: 0.1.2 - class: Dist::Zilla::Plugin::MetaResources name: MetaResources version: '6.010' - class: Dist::Zilla::Plugin::Breaks name: Breaks version: '0.004' - class: Dist::Zilla::Plugin::Test::CheckBreaks config: Dist::Zilla::Plugin::Test::CheckBreaks: conflicts_module: - Module::Runtime::Conflicts - Moose::Conflicts no_forced_deps: 0 Dist::Zilla::Role::ModuleMetadata: Module::Metadata: '1.000033' version: '0.004' name: Test::CheckBreaks version: '0.019' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: runtime type: requires name: Prereqs version: '6.010' - class: Dist::Zilla::Plugin::Prereqs config: Dist::Zilla::Plugin::Prereqs: phase: develop type: requires name: DevelopRequires version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':InstallModules' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':IncModules' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':TestFiles' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':ExtraTestFiles' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':ExecFiles' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':PerlExecFiles' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':ShareFiles' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':MainModule' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':AllFiles' version: '6.010' - class: Dist::Zilla::Plugin::FinderCode name: ':NoFiles' version: '6.010' - class: Dist::Zilla::Plugin::VerifyPhases name: '@Author::ETHER/PHASE VERIFICATION' version: '0.016' zilla: class: Dist::Zilla::Dist::Builder config: is_trial: '0' version: '6.010' x_author_pledge: version: 1 x_authority: cpan:JQUELIN x_breaks: Test::Kwalitee::Extra: '<= v0.0.8' x_contributors: - 'Ahmad M. Zawawi ' - 'Olivier Mengué ' - 'Kent Fredric ' - 'Jesse Luehrs ' - 'David Golden ' - 'Randy Stauner ' - 'Harley Pig ' - 'Graham Knop ' - 'fayland ' - 'Peter Shangov ' - 'Chris Weyl ' - 'Ricardo SIGNES ' - 'Marcel Gruenauer ' x_serialization_backend: 'YAML::Tiny version 1.72' x_static_install: 0 x_use_unsafe_inc: 0 Dist-Zilla-Plugin-Test-Compile-2.058/README000644 000766 000024 00000000653 13216334661 020407 0ustar00etherstaff000000 000000 This archive contains the distribution Dist-Zilla-Plugin-Test-Compile, version 2.058: Common tests to check syntax of your modules, using only core modules This software is copyright (c) 2009 by Jérôme Quelin. 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.010. Dist-Zilla-Plugin-Test-Compile-2.058/t/000700 000766 000024 00000000000 13216334661 017754 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/xt/000700 000766 000024 00000000000 13216334661 020144 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/000700 000766 000024 00000000000 13216334661 021446 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/xt/release/000700 000766 000024 00000000000 13216334661 021564 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/xt/release/changes_has_content.t000644 000766 000024 00000002101 13216334661 025752 0ustar00etherstaff000000 000000 use Test::More tests => 2; note 'Checking Changes'; my $changes_file = 'Changes'; my $newver = '2.058'; my $trial_token = '-TRIAL'; my $encoding = 'UTF-8'; SKIP: { ok(-e $changes_file, "$changes_file file exists") or skip 'Changes is missing', 1; ok(_get_changes($newver), "$changes_file has content for $newver"); } done_testing; sub _get_changes { my $newver = shift; # parse changelog to find commit message open(my $fh, '<', $changes_file) or die "cannot open $changes_file: $!"; my $changelog = join('', <$fh>); if ($encoding) { require Encode; $changelog = Encode::decode($encoding, $changelog, Encode::FB_CROAK()); } close $fh; my @content = grep { /^$newver(?:$trial_token)?(?:\s+|$)/ ... /^\S/ } # from newver to un-indented split /\n/, $changelog; shift @content; # drop the version line # drop unindented last line and trailing blank lines pop @content while ( @content && $content[-1] =~ /^(?:\S|\s*$)/ ); # return number of non-blank lines return scalar @content; } Dist-Zilla-Plugin-Test-Compile-2.058/xt/release/cpan-changes.t000644 000766 000024 00000000344 13216334661 024313 0ustar00etherstaff000000 000000 use strict; use warnings; # 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'); }; Dist-Zilla-Plugin-Test-Compile-2.058/xt/release/distmeta.t000644 000766 000024 00000000575 13216334661 023604 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # 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 file was automatically generated by Dist::Zilla::Plugin::MetaTests. use Test::CPAN::Meta; meta_yaml_ok(); Dist-Zilla-Plugin-Test-Compile-2.058/xt/release/minimum-version.t000644 000766 000024 00000000674 13216334661 025130 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # This is free software; you can redistribute it and/or modify it under # the same terms as the Perl 5 programming language system itself. # use Test::More; eval "use Test::MinimumVersion"; plan skip_all => "Test::MinimumVersion required for testing minimum versions" if $@; all_minimum_version_ok( qq{5.008003} ); Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/clean-namespaces.t000644 000766 000024 00000000361 13216334661 025044 0ustar00etherstaff000000 000000 use strict; use warnings; # this test was generated with Dist::Zilla::Plugin::Test::CleanNamespaces 0.006 use Test::More 0.94; use Test::CleanNamespaces 0.15; subtest all_namespaces_clean => sub { all_namespaces_clean() }; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/eol.t000644 000766 000024 00000002353 13216334661 022427 0ustar00etherstaff000000 000000 use strict; use warnings; # this test was generated with Dist::Zilla::Plugin::Test::EOL 0.19 use Test::More 0.88; use Test::EOL; my @files = ( 'examples/dist.ini', 'lib/Dist/Zilla/Plugin/Test/Compile.pm', 't/00-compile.t', 't/00-report-prereqs.dd', 't/00-report-prereqs.t', 't/01-basic.t', 't/02-warnings.t', 't/03-taint.t', 't/04-bash.t', 't/05-prereqs.t', 't/06-filename.t', 't/07-prereqs-phase.t', 't/08-xt_mode.t', 't/09-extra-files.t', 't/10-shebang-w.t', 't/11-shebang-C.t', 't/12-shebang-comment.t', 't/13-shebang-dashes.t', 't/14-extratests.t', 't/15-needs-display.t', 't/16-filename-fail-on-warning.t', 't/17-switch.t', 't/zzz-check-breaks.t', 'xt/author/clean-namespaces.t', 'xt/author/eol.t', 'xt/author/kwalitee.t', 'xt/author/mojibake.t', 'xt/author/no-tabs.t', 'xt/author/pod-coverage.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' ); eol_unix_ok($_, { trailing_whitespace => 1 }) foreach @files; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/kwalitee.t000644 000766 000024 00000000275 13216334661 023456 0ustar00etherstaff000000 000000 # this test was generated with Dist::Zilla::Plugin::Test::Kwalitee 2.12 use strict; use warnings; use Test::More 0.88; use Test::Kwalitee 1.21 'kwalitee_ok'; kwalitee_ok(); done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/mojibake.t000644 000766 000024 00000000554 13216334661 023432 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # This is free software; you can redistribute it and/or modify it under # the same terms as the Perl 5 programming language system itself. # use strict; use warnings qw(all); use Test::More; use Test::Mojibake; all_files_encoding_ok(); Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/no-tabs.t000644 000766 000024 00000002321 13216334661 023206 0ustar00etherstaff000000 000000 use strict; use warnings; # this test was generated with Dist::Zilla::Plugin::Test::NoTabs 0.15 use Test::More 0.88; use Test::NoTabs; my @files = ( 'examples/dist.ini', 'lib/Dist/Zilla/Plugin/Test/Compile.pm', 't/00-compile.t', 't/00-report-prereqs.dd', 't/00-report-prereqs.t', 't/01-basic.t', 't/02-warnings.t', 't/03-taint.t', 't/04-bash.t', 't/05-prereqs.t', 't/06-filename.t', 't/07-prereqs-phase.t', 't/08-xt_mode.t', 't/09-extra-files.t', 't/10-shebang-w.t', 't/11-shebang-C.t', 't/12-shebang-comment.t', 't/13-shebang-dashes.t', 't/14-extratests.t', 't/15-needs-display.t', 't/16-filename-fail-on-warning.t', 't/17-switch.t', 't/zzz-check-breaks.t', 'xt/author/clean-namespaces.t', 'xt/author/eol.t', 'xt/author/kwalitee.t', 'xt/author/mojibake.t', 'xt/author/no-tabs.t', 'xt/author/pod-coverage.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' ); notabs_ok($_) foreach @files; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/pod-coverage.t000644 000766 000024 00000000737 13216334661 024227 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # 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 file was automatically generated by Dist::Zilla::Plugin::PodCoverageTests. use Test::Pod::Coverage 1.08; use Pod::Coverage::TrustPod; all_pod_coverage_ok({ coverage_class => 'Pod::Coverage::TrustPod' }); Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/pod-no404s.t000644 000766 000024 00000001132 13216334661 023451 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # This is free software; you can redistribute it and/or modify it under # the same terms as the Perl 5 programming language system itself. # use strict; use warnings; use Test::More; foreach my $env_skip ( qw( SKIP_POD_NO404S AUTOMATED_TESTING ) ){ plan skip_all => "\$ENV{$env_skip} is set, skipping" if $ENV{$env_skip}; } eval "use Test::Pod::No404s"; if ( $@ ) { plan skip_all => 'Test::Pod::No404s required for testing POD'; } else { all_pod_files_ok(); } Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/pod-spell.t000644 000766 000024 00000001114 13216334661 023541 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More; # generated by Dist::Zilla::Plugin::Test::PodSpelling 2.007005 use Test::Spelling 0.12; use Pod::Wordlist; add_stopwords(); all_pod_files_spelling_ok( qw( examples lib script t xt ) ); __DATA__ Ahmad Chris Compile David Dist Etheridge Fredric Golden Graham Gruenauer Harley Jesse Jérôme Karen Kent Knop Luehrs Marcel Mengué Olivier Peter Pig Plugin Quelin Randy Ricardo SIGNES Shangov Stauner Test Weyl Zawawi Zilla ahmad cweyl dagolden dolmen doy ether fayland haarg hanekomu harleypig irc jquelin kentnl lib pshangov rjbs rwstauner Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/pod-syntax.t000644 000766 000024 00000000655 13216334661 023761 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # 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 file was automatically generated by Dist::Zilla::Plugin::PodSyntaxTests. use strict; use warnings; use Test::More; use Test::Pod 1.41; all_pod_files_ok(); Dist-Zilla-Plugin-Test-Compile-2.058/xt/author/portability.t000644 000766 000024 00000000267 13216334661 024214 0ustar00etherstaff000000 000000 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(); Dist-Zilla-Plugin-Test-Compile-2.058/t/00-compile.t000644 000766 000024 00000005335 13216334661 022026 0ustar00etherstaff000000 000000 use 5.006; use strict; use warnings; # this test was generated with Dist::Zilla::Plugin::Test::Compile 2.058 use Test::More 0.94; plan tests => 2 + ($ENV{AUTHOR_TESTING} ? 1 : 0); my @module_files = ( 'Dist/Zilla/Plugin/Test/Compile.pm' ); my @scripts = ( 'examples/dist.ini' ); # no fake home requested my @switches = ( -d 'blib' ? '-Mblib' : '-Ilib', ); use File::Spec; use IPC::Open3; use IO::Handle; open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!"; my @warnings; for my $lib (@module_files) { # see L my $stderr = IO::Handle->new; diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . $str . q{'} } $^X, @switches, '-e', "require q[$lib]")) if $ENV{PERL_COMPILE_TEST_DEBUG}; my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-e', "require q[$lib]"); binmode $stderr, ':crlf' if $^O eq 'MSWin32'; my @_warnings = <$stderr>; waitpid($pid, 0); is($?, 0, "$lib loaded ok"); shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/ and not eval { +require blib; blib->VERSION('1.01') }; if (@_warnings) { warn @_warnings; push @warnings, @_warnings; } } foreach my $file (@scripts) { SKIP: { open my $fh, '<', $file or warn("Unable to open $file: $!"), next; my $line = <$fh>; close $fh and skip("$file isn't perl", 1) unless $line =~ /^#!\s*(?:\S*perl\S*)((?:\s+-\w*)*)(?:\s*#.*)?$/; @switches = (@switches, split(' ', $1)) if $1; close $fh and skip("$file uses -T; not testable with PERL5LIB", 1) if grep { $_ eq '-T' } @switches and $ENV{PERL5LIB}; my $stderr = IO::Handle->new; diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . $str . q{'} } $^X, @switches, '-c', $file)) if $ENV{PERL_COMPILE_TEST_DEBUG}; my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-c', $file); binmode $stderr, ':crlf' if $^O eq 'MSWin32'; my @_warnings = <$stderr>; waitpid($pid, 0); is($?, 0, "$file compiled ok"); shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/ and not eval { +require blib; blib->VERSION('1.01') }; # in older perls, -c output is simply the file portion of the path being tested if (@_warnings = grep { !/\bsyntax OK$/ } grep { chomp; $_ ne (File::Spec->splitpath($file))[2] } @_warnings) { warn @_warnings; push @warnings, @_warnings; } } } is(scalar(@warnings), 0, 'no warnings found') or diag 'got warnings: ', explain(\@warnings) if $ENV{AUTHOR_TESTING}; BAIL_OUT("Compilation problems") if !Test::More->builder->is_passing; Dist-Zilla-Plugin-Test-Compile-2.058/t/00-report-prereqs.dd000644 000766 000024 00000026366 13216334661 023523 0ustar00etherstaff000000 000000 do { my $x = { 'configure' => { 'requires' => { 'ExtUtils::MakeMaker' => '0', 'Module::Build::Tiny' => '0.034', 'perl' => '5.006' } }, 'develop' => { 'recommends' => { 'Dist::Zilla::PluginBundle::Author::ETHER' => '0.132' }, 'requires' => { 'Dist::Zilla' => '5.000', 'Encode' => '0', 'Pod::Coverage::TrustPod' => '0', 'Pod::Wordlist' => '0', 'Test::CPAN::Changes' => '0.19', 'Test::CPAN::Meta' => '0', 'Test::CleanNamespaces' => '0.15', 'Test::EOL' => '0', 'Test::Kwalitee' => '1.21', 'Test::MinimumVersion' => '0', 'Test::Mojibake' => '1.0', 'Test::More' => '0.96', 'Test::NoTabs' => '0', 'Test::Pod' => '1.41', 'Test::Pod::Coverage' => '1.08', 'Test::Pod::No404s' => '0', 'Test::Portability::Files' => '0', 'Test::Spelling' => '0.12', 'Test::Warnings' => '0', 'perl' => '5.014' }, 'suggests' => { 'Dist::Zilla' => '5', 'Dist::Zilla::Plugin::Authority' => '1.009', 'Dist::Zilla::Plugin::AutoMetaResources' => '0', 'Dist::Zilla::Plugin::AutoPrereqs' => '5.038', 'Dist::Zilla::Plugin::Bootstrap::lib' => '0', 'Dist::Zilla::Plugin::Breaks' => '0', '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::Covenant' => '0', '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::Fallback' => '0.012', '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::MetaResources' => '0', 'Dist::Zilla::Plugin::MetaTests' => '0', 'Dist::Zilla::Plugin::MetaYAML' => '0', 'Dist::Zilla::Plugin::MinimumPerl' => '1.006', 'Dist::Zilla::Plugin::ModuleBuildTiny::Fallback' => '0.018', 'Dist::Zilla::Plugin::MojibakeTests' => '0.8', 'Dist::Zilla::Plugin::NextRelease' => '5.033', 'Dist::Zilla::Plugin::PodCoverageTests' => '5.040', 'Dist::Zilla::Plugin::PodSyntaxTests' => '5.040', 'Dist::Zilla::Plugin::PodWeaver' => '4.005', 'Dist::Zilla::Plugin::Prepender' => '2.002', '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::Test::CPAN::Changes' => '0.012', 'Dist::Zilla::Plugin::Test::ChangesHasContent' => '0', 'Dist::Zilla::Plugin::Test::CheckBreaks' => '0.017', 'Dist::Zilla::Plugin::Test::CleanNamespaces' => '0.006', 'Dist::Zilla::Plugin::Test::Compile' => '0', '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.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.097', 'Dist::Zilla::PluginBundle::Git::VersionManager' => '0', 'Software::License::Perl_5' => '0' } }, 'runtime' => { 'requires' => { 'Data::Section' => '0.004', 'Dist::Zilla' => '4.300039', 'Dist::Zilla::Dist::Builder' => '0', 'Dist::Zilla::File::InMemory' => '0', 'Dist::Zilla::Role::FileFinderUser' => '0', 'Dist::Zilla::Role::FileGatherer' => '0', 'Dist::Zilla::Role::FileMunger' => '0', 'Dist::Zilla::Role::PrereqSource' => '0', 'Dist::Zilla::Role::TextTemplate' => '0', 'Moose' => '0', 'Moose::Util::TypeConstraints' => '0', 'Path::Tiny' => '0', 'Sub::Exporter::ForMethods' => '0', 'namespace::autoclean' => '0', 'perl' => '5.008', 'strict' => '0', 'warnings' => '0' } }, 'test' => { 'recommends' => { 'CPAN::Meta' => '2.120900' }, 'requires' => { 'CPAN::Meta::Check' => '0.011', 'CPAN::Meta::Requirements' => '0', 'File::Spec' => '0', 'File::pushd' => '1.004', 'IO::Handle' => '0', 'IPC::Open3' => '0', 'Module::CoreList' => '2.77', 'Module::Metadata' => '0', 'Perl::PrereqScanner' => '1.016', 'Test::DZil' => '0', 'Test::Deep' => '0', 'Test::MinimumVersion' => '0', 'Test::More' => '0.96', 'Test::Warnings' => '0.009', 'if' => '0', 'perl' => '5.008', 'utf8' => '0', 'version' => '0' } } }; $x; }Dist-Zilla-Plugin-Test-Compile-2.058/t/00-report-prereqs.t000644 000766 000024 00000014223 13216334661 023364 0ustar00etherstaff000000 000000 #!perl # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # This is free software; you can redistribute it and/or modify it under # the same terms as the Perl 5 programming language system itself. # use strict; use warnings; # This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.027 use Test::More tests => 1; use Module::Metadata; use File::Spec; # from $version::LAX my $lax_version_re = qr/(?: undef | (?: (?:[0-9]+) (?: \. | (?:\.[0-9]+) (?:_[0-9]+)? )? | (?:\.[0-9]+) (?:_[0-9]+)? ) | (?: v (?:[0-9]+) (?: (?:\.[0-9]+)+ (?:_[0-9]+)? )? | (?:[0-9]+)? (?:\.[0-9]+){2,} (?:_[0-9]+)? ) )/x; # hide optional CPAN::Meta modules from prereq scanner # and check if they are available my $cpan_meta = "CPAN::Meta"; my $cpan_meta_pre = "CPAN::Meta::Prereqs"; my $HAS_CPAN_META = eval "require $cpan_meta; $cpan_meta->VERSION('2.120900')" && eval "require $cpan_meta_pre"; ## no critic # Verify requirements? my $DO_VERIFY_PREREQS = 1; sub _max { my $max = shift; $max = ( $_ > $max ) ? $_ : $max for @_; return $max; } sub _merge_prereqs { my ($collector, $prereqs) = @_; # CPAN::Meta::Prereqs object if (ref $collector eq $cpan_meta_pre) { return $collector->with_merged_prereqs( CPAN::Meta::Prereqs->new( $prereqs ) ); } # Raw hashrefs for my $phase ( keys %$prereqs ) { for my $type ( keys %{ $prereqs->{$phase} } ) { for my $module ( keys %{ $prereqs->{$phase}{$type} } ) { $collector->{$phase}{$type}{$module} = $prereqs->{$phase}{$type}{$module}; } } } return $collector; } my @include = qw( JSON::PP Pod::Coverage Sub::Name YAML autodie Dist::CheckConflicts CPAN::Meta::Validator ); my @exclude = qw( ); # Add static prereqs to the included modules list my $static_prereqs = do './t/00-report-prereqs.dd'; # Merge all prereqs (either with ::Prereqs or a hashref) my $full_prereqs = _merge_prereqs( ( $HAS_CPAN_META ? $cpan_meta_pre->new : {} ), $static_prereqs ); # Add dynamic prereqs to the included modules list (if we can) my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml'; my $cpan_meta_error; if ( $source && $HAS_CPAN_META && (my $meta = eval { CPAN::Meta->load_file($source) } ) ) { $full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs); } else { $cpan_meta_error = $@; # capture error from CPAN::Meta->load_file($source) $source = 'static metadata'; } my @full_reports; my @dep_errors; my $req_hash = $HAS_CPAN_META ? $full_prereqs->as_string_hash : $full_prereqs; # Add static includes into a fake section for my $mod (@include) { $req_hash->{other}{modules}{$mod} = 0; } for my $phase ( qw(configure build test runtime develop other) ) { next unless $req_hash->{$phase}; next if ($phase eq 'develop' and not $ENV{AUTHOR_TESTING}); for my $type ( qw(requires recommends suggests conflicts modules) ) { next unless $req_hash->{$phase}{$type}; my $title = ucfirst($phase).' '.ucfirst($type); my @reports = [qw/Module Want Have/]; for my $mod ( sort keys %{ $req_hash->{$phase}{$type} } ) { next if $mod eq 'perl'; next if grep { $_ eq $mod } @exclude; my $file = $mod; $file =~ s{::}{/}g; $file .= ".pm"; my ($prefix) = grep { -e File::Spec->catfile($_, $file) } @INC; my $want = $req_hash->{$phase}{$type}{$mod}; $want = "undef" unless defined $want; $want = "any" if !$want && $want == 0; my $req_string = $want eq 'any' ? 'any version required' : "version '$want' required"; if ($prefix) { my $have = Module::Metadata->new_from_file( File::Spec->catfile($prefix, $file) )->version; $have = "undef" unless defined $have; push @reports, [$mod, $want, $have]; if ( $DO_VERIFY_PREREQS && $HAS_CPAN_META && $type eq 'requires' ) { if ( $have !~ /\A$lax_version_re\z/ ) { push @dep_errors, "$mod version '$have' cannot be parsed ($req_string)"; } elsif ( ! $full_prereqs->requirements_for( $phase, $type )->accepts_module( $mod => $have ) ) { push @dep_errors, "$mod version '$have' is not in required range '$want'"; } } } else { push @reports, [$mod, $want, "missing"]; if ( $DO_VERIFY_PREREQS && $type eq 'requires' ) { push @dep_errors, "$mod is not installed ($req_string)"; } } } if ( @reports ) { push @full_reports, "=== $title ===\n\n"; my $ml = _max( map { length $_->[0] } @reports ); my $wl = _max( map { length $_->[1] } @reports ); my $hl = _max( map { length $_->[2] } @reports ); if ($type eq 'modules') { splice @reports, 1, 0, ["-" x $ml, "", "-" x $hl]; push @full_reports, map { sprintf(" %*s %*s\n", -$ml, $_->[0], $hl, $_->[2]) } @reports; } else { splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl]; push @full_reports, map { sprintf(" %*s %*s %*s\n", -$ml, $_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports; } push @full_reports, "\n"; } } } if ( @full_reports ) { diag "\nVersions for all modules listed in $source (including optional ones):\n\n", @full_reports; } if ( $cpan_meta_error || @dep_errors ) { diag "\n*** WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING ***\n"; } if ( $cpan_meta_error ) { my ($orig_source) = grep { -f } 'MYMETA.json', 'MYMETA.yml'; diag "\nCPAN::Meta->load_file('$orig_source') failed with: $cpan_meta_error\n"; } if ( @dep_errors ) { diag join("\n", "\nThe following REQUIRED prerequisites were not satisfied:\n", @dep_errors, "\n" ); } pass; # vim: ts=4 sts=4 sw=4 et: Dist-Zilla-Plugin-Test-Compile-2.058/t/01-basic.t000600 000766 000024 00000007710 13216334661 021447 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use File::pushd 'pushd'; use Test::Deep; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ MetaConfig => ], [ 'Test::Compile' => { bail_out_on_fail => 1, fake_home => 1, } ], # we generate a new module after we insert the compile test, # to confirm that this module is picked up too [ GenerateFile => 'file-from-code' => { filename => 'lib/Baz.pm', is_template => 0, content => [ 'package Baz;', '$VERSION = 0.001;', '1;' ], }, ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source lib Bar.pod)) => qq{die 'this .pod file is not valid perl!';\n}, path(qw(source lib Baz Quz.pm)) => "package Baz::Quz;\n1;\n", path(qw(source bin foobar)) => "#!/usr/bin/perl\nprint \"foo\n\";\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok(-e $file, 'test created'); my $content = $file->slurp_utf8; unlike($content, qr/[^\S\n]\n/, 'no trailing whitespace in generated test'); my @files = ( path(qw(Foo.pm)), path(qw(Baz.pm)), path(qw(Baz Quz.pm)), path(qw(bin foobar)), ); like($content, qr/'\Q$_\E'/m, "test checks $_") foreach @files; cmp_deeply( $tzil->distmeta, superhashof({ prereqs => { configure => ignore, # populated by [MakeMaker] test => { requires => { 'Test::More' => '0.94', 'File::Spec' => '0', 'IPC::Open3' => '0', 'IO::Handle' => '0', 'File::Temp' => '0', }, }, }, x_Dist_Zilla => superhashof({ plugins => supersetof( { class => 'Dist::Zilla::Plugin::Test::Compile', config => { 'Dist::Zilla::Plugin::Test::Compile' => { module_finder => [ ':InstallModules' ], script_finder => [ eval { Dist::Zilla::Dist::Builder->VERSION('5.038'); 1 } ? ':PerlExecFiles' : ':ExecFiles' ], filename => 't/00-compile.t', fake_home => 1, needs_display => 0, fail_on_warning => 'author', bail_out_on_fail => 1, phase => 'test', skips => [], switch => [], }, }, name => 'Test::Compile', version => Dist::Zilla::Plugin::Test::Compile->VERSION, }, ), }), }), 'prereqs are properly injected for the test phase; dumped configs are good', ) or diag 'got distmeta: ', explain $tzil->distmeta; my $num_tests; subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; local $ENV{AUTHOR_TESTING} = 1; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; $num_tests = Test::Builder->new->current_test; }; is($num_tests, @files + 1, 'correct number of files were tested, plus warnings checked'); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/02-warnings.t000600 000766 000024 00000003231 13216334661 022211 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib LittleKaboom.pm)) => <<'MODULE', package LittleKaboom; use strict; use warnings; warn 'there was supposed to be a kaboom'; 1; MODULE }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my $content = $file->slurp_utf8; unlike($content, qr/[^\S\n]\n/, 'no trailing whitespace in generated test'); my $num_tests; my $warning = warning { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; $num_tests = Test::Builder->new->current_test; }; }; like( $warning, qr/^there was supposed to be a kaboom/, 'warnings from compiling LittleKaboom are captured', ) or diag 'got warning(s): ', explain($warning); is($num_tests, 1, 'correct number of files were tested (no warning checks)'); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/03-taint.t000600 000766 000024 00000003040 13216334661 021477 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => <<'EXECUTABLE', #!/usr/bin/perl -T print "hello world\n"; EXECUTABLE }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; }; # normally we'd see: # "-T" is on the #! line, it must also be used on the command line at ... # unless we also run perl -c with the -T flag. is(@warnings, 0, 'no warnings from compiling the executable using -T') or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/04-bash.t000600 000766 000024 00000002743 13216334661 021307 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => <<'EXECUTABLE', #!/bin/bash echo 'this is not perl!'; exit 1; EXECUTABLE path(qw(source bin qux)) => qq{#!/usr/bin/perl\nprint "script after foo\n";\n}, }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok(-e $file, 'test created'); my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; }; is(@warnings, 0, "no warnings when a script isn't perl") or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/05-prereqs.t000600 000766 000024 00000006536 13216334661 022060 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use Test::MinimumVersion; use Perl::PrereqScanner 1.016; # don't skip "lib" use Module::CoreList 2.77; use version; use File::pushd 'pushd'; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { # use ALL the features! fake_home => 1, needs_display => 1, fail_on_warning => 'all', bail_out_on_fail => 1, } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => "#!/usr/bin/perl\nprint qq{hello!\n}\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); # here we perform a static analysis of the file generated: # - check minimum perl version # - check prereqs required by this file - analyse for core (against latest perl) my $minimum_perl = version->parse('5.006002'); # minimum perl for any version of the prereq my $in_core_perl = version->parse('5.012000'); # minimum perl to contain the version we use minimum_version_ok($file->stringify, $minimum_perl) or diag `perlver --blame $file`; my $scanner = Perl::PrereqScanner->new(); my $file_req = $scanner->scan_string(scalar $file->slurp_utf8); my $req_hash = $file_req->as_string_hash; # TODO: this code should really be pulled out into its own dist. foreach my $prereq (keys %$req_hash) { next if $prereq eq 'perl'; my $added_in = Module::CoreList->first_release($prereq); # this code is borrowed ethusiastically from [OnlyCorePrereqs] ok(defined($added_in), "$prereq is available in core") or next; ok( version->parse($added_in) <= $minimum_perl, "$prereq was available in perl $minimum_perl", ) or note("$prereq was not added until $added_in"), next; # get the version that was in core for our minimum my $has = $Module::CoreList::version{$in_core_perl->numify}{$prereq}; $has = version->parse($has); # version.pm XS hates tie() - RT#87983 # see if our req is satisfied ok( $file_req->accepts_module($prereq => $has), "perl $in_core_perl has $prereq $req_hash->{$prereq}", ) or note('detected a dependency on ' . $prereq . ' ' . $req_hash->{$prereq} . ': perl ' . $in_core_perl . ' only has ' . $has), next; my $deprecated_in = Module::CoreList->deprecated_in($prereq); ok(!$deprecated_in, "$prereq has not been ejected from core") or note 'detected a dependency that was deprecated from core in ' . $deprecated_in . ': '. $prereq; } subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; # let tests run, rather than skip_all local $ENV{DISPLAY} = 'something'; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/06-filename.t000600 000766 000024 00000002571 13216334661 022153 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use File::pushd 'pushd'; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none', filename => 'xt/author/foo.t' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); ok(!-e $build_dir->child(qw(t 00-compile.t)), 'default test not created'); my $file = $build_dir->child(qw(xt author foo.t)); ok(-e $file, 'test created using new name'); my $num_tests; subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; # ensure the variable is *not* set local $ENV{AUTHOR_TESTING}; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; $num_tests = Test::Builder->new->current_test; }; is($num_tests, 1, 'correct number of files were tested'); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/07-prereqs-phase.t000600 000766 000024 00000004354 13216334661 023154 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.88; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use Test::Deep; { my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ 'Test::Compile' => { phase => 'develop' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok(-e $file, 'test created'); cmp_deeply( $tzil->distmeta, superhashof({ prereqs => { develop => { requires => { 'Test::More' => '0', 'File::Spec' => '0', 'IPC::Open3' => '0', 'IO::Handle' => '0', }, }, }, }), 'prereqs are properly injected for the develop phase', ) or diag 'got distmeta: ', explain $tzil->distmeta; diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; } { my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ 'Test::Compile' => { phase => '' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok(-e $file, 'test created'); cmp_deeply( $tzil->distmeta, superhashof({ prereqs => {} }), 'no prereqs are injected', ) or diag 'got distmeta: ', explain $tzil->distmeta; diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; } done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/08-xt_mode.t000600 000766 000024 00000003300 13216334661 022023 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use File::pushd 'pushd'; use Test::Deep; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ 'Test::Compile' => { fail_on_warning => 'none', xt_mode => 1 } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); ok(!-e $build_dir->child(qw(t 00-compile.t)), 'default test not created'); my $file = $build_dir->child(qw(xt author 00-compile.t)); ok(-e $file, 'test created using new name'); cmp_deeply( $tzil->distmeta, superhashof({ prereqs => { develop => { requires => { 'Test::More' => '0', 'File::Spec' => '0', 'IPC::Open3' => '0', 'IO::Handle' => '0', }, }, }, }), 'prereqs are properly injected for the develop phase', ) or diag 'got distmeta: ', explain $tzil->distmeta; my $num_tests; subtest 'run the generated test' => sub { my $wd = pushd $build_dir; # intentionally not running Makefile.PL... do $file; note 'ran tests successfully' if not $@; fail($@) if $@; $num_tests = Test::Builder->new->current_test; }; is($num_tests, 1, 'correct number of files were tested'); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/09-extra-files.t000600 000766 000024 00000001556 13216334661 022623 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.88; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ 'Test::Compile' => { fail_on_warning => 'none', file => [ 'Bar.pm' ] } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $content = path($tzil->tempdir)->child(qw(build t 00-compile.t))->slurp_utf8; like($content, qr' my @module_files = \( \'Bar\.pm\', \'Foo\.pm\' \); ', 'test checks explicitly added file',); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/10-shebang-w.t000600 000766 000024 00000003355 13216334661 022242 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; use Test::Deep; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => <<'EXECUTABLE', #!/usr/bin/perl -w my $foo = 1; print "oh noes\n" if $foo = 2; EXECUTABLE path(qw(source bin bar)) => <<'EXECUTABLE', #!/usr/bin/perl my $bar = 1; print "oh noes\n" if $bar = 2; EXECUTABLE }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; }; my $re = '^' . quotemeta("Found = in conditional, should be == at bin\/foo line 3. at $file line "); cmp_deeply( \@warnings, [ re(qr/^$re/), ], 'got warnings from compiling an executable using -w, not from the one without it', ) or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/11-shebang-C.t000600 000766 000024 00000003121 13216334661 022146 0ustar00etherstaff000000 000000 use strict; use warnings; use utf8; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; plan skip_all => 'These tests use options that are only legal in perl 5.14.0 and higher' if "$]" < 5.014000; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => <<'EXECUTABLE', #!/usr/bin/perl -CS use utf8; print "ಠ_ಠ.pm\n"; EXECUTABLE }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; }; # -c without -CS gives: Too late for "-CS" option at... is(@warnings, 0, 'no warnings from compiling the executable using -CS') or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/12-shebang-comment.t000600 000766 000024 00000003167 13216334661 023441 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; use Test::Deep; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => <<'EXECUTABLE', #!/usr/bin/perl -w # oh hai my $foo = 1; print "oh noes\n" if $foo = 2; EXECUTABLE }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; }; my $re = '^' . quotemeta("Found = in conditional, should be == at bin\/foo line 3. at $file line "); cmp_deeply( \@warnings, [ re(qr/^$re/), ], 'got warnings from compiling an executable using -w, not from the one without it', ) or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/13-shebang-dashes.t000600 000766 000024 00000003466 13216334661 023251 0ustar00etherstaff000000 000000 use strict; use warnings; use utf8; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; use Test::Deep; plan skip_all => 'These tests use options that are only legal in perl 5.14.0 and higher' if "$]" < 5.014000; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { fail_on_warning => 'none' } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foo)) => <<'EXECUTABLE', #!/usr/bin/perl -CS -w use utf8; print "ಠ_ಠ.pm\n"; my $foo = 1; print "oh noes\n" if $foo = 2; EXECUTABLE }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; }; # -c without -CS gives: Too late for "-CS" option at... my $re = '^' . quotemeta("Found = in conditional, should be == at bin\/foo line 5. at $file line "); cmp_deeply( \@warnings, [ re(qr/^$re/), ], 'got the right warnings, showing we parsed the shebang properly', ) or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/14-extratests.t000600 000766 000024 00000002604 13216334661 022575 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use File::pushd 'pushd'; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ ExtraTests => ], [ 'Test::Compile' => { bail_out_on_fail => 1, xt_mode => 1, } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", path(qw(source bin foobar)) => "#!/usr/bin/perl\nprint \"foo\n\";\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t author-00-compile.t)); ok(-e $file, 'test created under xt/ and moved to t/author- by [ExtraTests]'); my $content = $file->slurp_utf8; unlike($content, qr/[^\S\n]\n/, 'no trailing whitespace in generated test'); subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; local $ENV{AUTHOR_TESTING} = 1; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; }; diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/15-needs-display.t000600 000766 000024 00000004765 13216334661 023143 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use if $ENV{AUTHOR_TESTING}, 'Test::Warnings'; use Test::DZil; use Path::Tiny; use File::pushd 'pushd'; use Test::Deep; foreach my $display (undef, ':0.0') { local $ENV{DISPLAY}; $ENV{DISPLAY} = $display if $display; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ 'Test::Compile' => { needs_display => 1 } ], ), path(qw(source lib Foo.pm)) => "package Foo;\n1;\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok( -e $file, 'test created'); my $error; my $display_str = $display || ''; subtest "run the generated test (\$DISPLAY=$display_str)" => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; # I'm not sure why, but if we just 'do $file', we get the # Test::Builder::Exception object back in $@ that is actually being # used for flow control in Test::Builder::skip_all -- but if we # compile the code first and then run it, TB works properly and the # skip functionality completes my $test = eval 'sub { ' . $file->slurp_utf8 . ' }'; return $error = $@ if $@; $test->(); }; if ($error) { fail('failed to compile test file: ' . $error); } else { my $tb = Test::Builder->new; my $skip = !$ENV{DISPLAY} && $^O ne 'MSWin32'; cmp_deeply( ($tb->details)[$tb->current_test - 1], superhashof({ ok => 1, type => !$skip ? '' : 'skip', reason => !$skip ? '' : 'Needs DISPLAY', name => !$skip ? "run the generated test (\$DISPLAY=$display_str)" : any('', "run the generated test (\$DISPLAY=$display_str)"), # older TB handled this oddly }), !$skip ? 'test file ran successfully' : 'test file skipped because $DISPLAY was not set', ); } diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; } done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/16-filename-fail-on-warning.t000600 000766 000024 00000000535 13216334661 025140 0ustar00etherstaff000000 000000 use strict; use warnings; use Path::Tiny; my $code = path('t', '06-filename.t')->slurp_utf8; $code =~ s/fail_on_warning => 'none'/fail_on_warning => 'author'/; $code =~ s{is\(\$num_tests, 1, 'correct number of files were tested'} {is\(\$num_tests, 2, 'tested one file, and warnings (via being in xt/author)'}; eval $code; die $@ if $@; Dist-Zilla-Plugin-Test-Compile-2.058/t/17-switch.t000600 000766 000024 00000006663 13216334661 021704 0ustar00etherstaff000000 000000 use strict; use warnings; use Test::More 0.96; use Test::Warnings 0.009 ':no_end_test', ':all'; use Test::DZil; use Path::Tiny; use File::pushd 1.004 'pushd'; use Test::Deep; my @tests = ( { test_case => 'warnings enabled -- warning passes through', switches => [ '-w' ], expected_warnings => [ 'boo hoo' ], }, { test_case => 'deprecation warnings disabled', switches => [ '-w', '-M-warnings=deprecated' ], expected_warnings => [], }, ); subtest $_->{test_case} => sub { my $test = $_; my $tzil = Builder->from_config( { dist_root => 'does-not-exist' }, { add_files => { path(qw(source dist.ini)) => simple_ini( [ GatherDir => ], [ MakeMaker => ], [ ExecDir => ], [ MetaConfig => ], [ 'Test::Compile' => { fail_on_warning => 'none', switch => $test->{switches} } ], ), path(qw(source lib Foo.pm)) => "package Foo;\nwarnings::warnif('deprecated','boo hoo');\n1;\n", path(qw(source bin foobar)) => "#!/usr/bin/perl\nwarnings::warnif('deprecated','boo hoo');\nprint \"foo\n\";\n", }, }, ); $tzil->chrome->logger->set_debug(1); $tzil->build; my $build_dir = path($tzil->tempdir)->child('build'); my $file = $build_dir->child(qw(t 00-compile.t)); ok(-e $file, 'test created'); my $content = $file->slurp_utf8; unlike($content, qr/[^\S\n]\n/, 'no trailing whitespace in generated test'); my @files = ( path(qw(Foo.pm)), path(qw(bin foobar)), ); like($content, qr/'\Q$_\E'/m, "test checks $_") foreach @files; cmp_deeply( $tzil->distmeta, superhashof({ x_Dist_Zilla => superhashof({ plugins => supersetof( { class => 'Dist::Zilla::Plugin::Test::Compile', config => { 'Dist::Zilla::Plugin::Test::Compile' => superhashof({ fail_on_warning => 'none', switch => $test->{switches}, }), }, name => 'Test::Compile', version => Dist::Zilla::Plugin::Test::Compile->VERSION, }, ), }), }), 'dumped configs are good', ) or diag 'got distmeta: ', explain $tzil->distmeta; my $num_tests; my @warnings = warnings { subtest 'run the generated test' => sub { my $wd = pushd $build_dir; $tzil->plugin_named('MakeMaker')->build; local $ENV{AUTHOR_TESTING} = 1; do $file; note 'ran tests successfully' if not $@; fail($@) if $@; $num_tests = Test::Builder->new->current_test; }; }; is($num_tests, @files, 'correct number of files were tested'); cmp_deeply( \@warnings, [ map { re(qr/^$_/) } @{ $test->{expected_warnings} } ], 'got expected warnings from compiling a module with a deprecation warning', ) or diag 'got warning(s): ', explain(\@warnings); diag 'got log messages: ', explain $tzil->log_messages if not Test::Builder->new->is_passing; } foreach @tests; had_no_warnings if $ENV{AUTHOR_TESTING}; done_testing; Dist-Zilla-Plugin-Test-Compile-2.058/t/zzz-check-breaks.t000644 000766 000024 00000002374 13216334661 023336 0ustar00etherstaff000000 000000 use strict; use warnings; # this test was generated with Dist::Zilla::Plugin::Test::CheckBreaks 0.019 use Test::More tests => 3; SKIP: { eval { +require Module::Runtime::Conflicts; Module::Runtime::Conflicts->check_conflicts }; skip('no Module::Runtime::Conflicts module found', 1) if not $INC{'Module/Runtime/Conflicts.pm'}; diag $@ if $@; pass 'conflicts checked via Module::Runtime::Conflicts'; } SKIP: { eval { +require Moose::Conflicts; Moose::Conflicts->check_conflicts }; skip('no Moose::Conflicts module found', 1) if not $INC{'Moose/Conflicts.pm'}; diag $@ if $@; pass 'conflicts checked via Moose::Conflicts'; } # this data duplicates x_breaks in META.json my $breaks = { "Test::Kwalitee::Extra" => "<= v0.0.8" }; use CPAN::Meta::Requirements; use CPAN::Meta::Check 0.011; my $reqs = CPAN::Meta::Requirements->new; $reqs->add_string_requirement($_, $breaks->{$_}) foreach keys %$breaks; our $result = CPAN::Meta::Check::check_requirements($reqs, 'conflicts'); if (my @breaks = grep { defined $result->{$_} } keys %$result) { diag 'Breakages found with Dist-Zilla-Plugin-Test-Compile:'; diag "$result->{$_}" for sort @breaks; diag "\n", 'You should now update these modules!'; } pass 'checked x_breaks data'; Dist-Zilla-Plugin-Test-Compile-2.058/lib/Dist/000700 000766 000024 00000000000 13216334661 021162 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/lib/Dist/Zilla/000700 000766 000024 00000000000 13216334661 022235 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/lib/Dist/Zilla/Plugin/000700 000766 000024 00000000000 13216334661 023473 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/lib/Dist/Zilla/Plugin/Test/000700 000766 000024 00000000000 13216334661 024412 5ustar00etherstaff000000 000000 Dist-Zilla-Plugin-Test-Compile-2.058/lib/Dist/Zilla/Plugin/Test/Compile.pm000600 000766 000024 00000053654 13216334661 026357 0ustar00etherstaff000000 000000 # # This file is part of Dist-Zilla-Plugin-Test-Compile # # This software is copyright (c) 2009 by Jérôme Quelin. # # This is free software; you can redistribute it and/or modify it under # the same terms as the Perl 5 programming language system itself. # use strict; use warnings; package Dist::Zilla::Plugin::Test::Compile; # git description: v2.057-4-g2b42df1 # vim: set ts=8 sts=4 sw=4 tw=115 et : # ABSTRACT: Common tests to check syntax of your modules, using only core modules # KEYWORDS: plugin test compile verify validate load modules scripts our $VERSION = '2.058'; use Moose; use Path::Tiny; use Sub::Exporter::ForMethods 'method_installer'; # method_installer returns a sub. use Data::Section 0.004 # fixed header_re { installer => method_installer }, '-setup'; use Dist::Zilla::Dist::Builder (); with ( 'Dist::Zilla::Role::FileGatherer', 'Dist::Zilla::Role::FileMunger', 'Dist::Zilla::Role::TextTemplate', 'Dist::Zilla::Role::FileFinderUser' => { method => 'found_module_files', finder_arg_names => [ 'module_finder' ], default_finders => [ ':InstallModules' ], }, 'Dist::Zilla::Role::FileFinderUser' => { method => 'found_script_files', finder_arg_names => [ 'script_finder' ], default_finders => [ eval { Dist::Zilla::Dist::Builder->VERSION('5.038'); 1 } ? ':PerlExecFiles' : ':ExecFiles' ], }, 'Dist::Zilla::Role::PrereqSource', ); use Moose::Util::TypeConstraints qw(enum role_type); use namespace::autoclean; # -- attributes has fake_home => ( is=>'ro', isa=>'Bool', default=>0 ); has needs_display => ( is=>'ro', isa=>'Bool', default=>0 ); has fail_on_warning => ( is=>'ro', isa=>enum([qw(none author all)]), default=>'author' ); has bail_out_on_fail => ( is=>'ro', isa=>'Bool', default=>0 ); has xt_mode => ( is=>'ro', isa=>'Bool', default=>0 ); has filename => ( is => 'ro', isa => 'Str', lazy => 1, default => sub { return ($_[0]->xt_mode ? 'xt/author' : 't') . '/00-compile.t' }, ); has phase => ( is => 'ro', isa => 'Str', lazy => 1, default => sub { return $_[0]->xt_mode ? 'develop' : 'test' }, ); sub mvp_multivalue_args { qw(skips files switches) } sub mvp_aliases { return { skip => 'skips', file => 'files', switch => 'switches' } } has skips => ( isa => 'ArrayRef[Str]', traits => ['Array'], handles => { skips => 'sort' }, lazy => 1, default => sub { [] }, ); has files => ( isa => 'ArrayRef[Str]', traits => ['Array'], handles => { files => 'sort' }, lazy => 1, default => sub { [] }, ); has switches => ( isa => 'ArrayRef[Str]', traits => ['Array'], handles => { switches => 'elements' }, lazy => 1, default => sub { [] }, ); has _test_more_version => ( is => 'ro', isa => 'Str', init_arg => undef, lazy => 1, default => sub { shift->bail_out_on_fail ? '0.94' : '0' }, ); # note that these two attributes could conceivably be settable via dist.ini, # to avoid us using filefinders at all. has _module_filenames => ( isa => 'ArrayRef[Str]', traits => ['Array'], handles => { _module_filenames => 'sort' }, lazy => 1, default => sub { [ map { $_->name } @{shift->found_module_files} ] }, ); has _script_filenames => ( isa => 'ArrayRef[Str]', traits => ['Array'], handles => { _script_filenames => 'sort' }, lazy => 1, default => sub { [ map { $_->name } @{shift->found_script_files} ] }, ); around dump_config => sub { my ($orig, $self) = @_; my $config = $self->$orig; $config->{+__PACKAGE__} = { module_finder => [ sort @{ $self->module_finder } ], script_finder => [ sort @{ $self->script_finder } ], skips => [ sort $self->skips ], (map { $_ => $self->$_ ? 1 : 0 } qw(fake_home needs_display bail_out_on_fail)), (map { $_ => $self->$_ } qw(filename fail_on_warning bail_out_on_fail phase)), switch => [ $self->switches ], blessed($self) ne __PACKAGE__ ? ( version => $VERSION ) : (), }; return $config; }; sub register_prereqs { my $self = shift; return unless $self->phase; $self->zilla->register_prereqs( { phase => $self->phase, type => 'requires', }, 'Test::More' => $self->_test_more_version, 'File::Spec' => '0', 'IPC::Open3' => 0, 'IO::Handle' => 0, $self->fake_home ? ( 'File::Temp' => '0' ) : (), ); } has _file => ( is => 'rw', isa => role_type('Dist::Zilla::Role::File'), ); sub gather_files { my $self = shift; require Dist::Zilla::File::InMemory; $self->add_file( $self->_file( Dist::Zilla::File::InMemory->new( name => $self->filename, content => ${$self->section_data('test-compile')}, )) ); return; } sub munge_file { my ($self, $file) = @_; return unless $file == $self->_file; my @skips = map {; qr/$_/ } $self->skips; my @more_files = $self->files; # we strip the leading lib/, and convert win32 \ to /, so the %INC entry # is correct - to avoid potentially loading the file again later my @module_filenames = map { path($_)->relative('lib')->stringify } $self->_module_filenames; push @module_filenames, grep { /\.pm/i } @more_files if @more_files; @module_filenames = grep { (my $module = $_) =~ s{[/\\]}{::}g; $module =~ s/\.pm$//; not grep { $module =~ $_ } @skips } @module_filenames if @skips; # pod never returns true when loaded @module_filenames = grep { !/\.pod$/ } @module_filenames; my @script_filenames = $self->_script_filenames; push @script_filenames, grep { !/\.pm/i } @more_files if @more_files; $self->log_debug('adding module ' . $_) foreach @module_filenames; $self->log_debug('adding script ' . $_) foreach @script_filenames; $file->content( $self->fill_in_string( $file->content, { dist => \($self->zilla), plugin => \$self, test_more_version => \($self->_test_more_version), module_filenames => \@module_filenames, script_filenames => \@script_filenames, fake_home => \($self->fake_home), needs_display => \($self->needs_display), bail_out_on_fail => \($self->bail_out_on_fail), fail_on_warning => \( $self->fail_on_warning eq 'author' && $self->filename =~ m{^xt/author/} ? 'all' : $self->fail_on_warning), switches => \[$self->switches], } ) ); return; } __PACKAGE__->meta->make_immutable; #pod =pod #pod #pod =for Pod::Coverage::TrustPod #pod mvp_multivalue_args #pod mvp_aliases #pod register_prereqs #pod gather_files #pod munge_file #pod #pod =head1 SYNOPSIS #pod #pod In your F: #pod #pod [Test::Compile] #pod skip = Test$ #pod fake_home = 1 #pod needs_display = 1 #pod fail_on_warning = author #pod bail_out_on_fail = 1 #pod switch = -M-warnings=numeric ; like "no warnings 'numeric' #pod #pod =head1 DESCRIPTION #pod #pod This is a L plugin that runs at the L stage, #pod providing a test file (configurable, defaulting to F). #pod #pod This test will find all modules and scripts in your distribution, and try to #pod compile them one by one. This means it's a bit slower than loading them #pod all at once, but it will catch more errors. #pod #pod The generated test is guaranteed to only depend on modules that are available #pod in core. Most options only require perl 5.6.2; the C option #pod requires the version of L that shipped with perl 5.12 (but the #pod test still runs on perl 5.6). #pod #pod This plugin accepts the following options: #pod #pod =head1 CONFIGURATION OPTIONS #pod #pod =head2 C #pod #pod The name of the generated file. Defaults to F #pod #pod =head2 C #pod #pod The phase for which to register prerequisites. Defaults #pod to C. Setting this to a false value will disable prerequisite #pod registration. #pod #pod =head2 C #pod #pod A regex to skip compile test for B matching it. The #pod match is done against the module name (C), not the file path #pod (F). This option can be repeated to specify multiple regexes. #pod #pod =head2 C #pod #pod A filename to also test, in addition to any files found #pod earlier. It will be tested as a module if it ends with C<.pm> or C<.PM>, #pod and as a script otherwise. #pod Module filenames should be relative to F; others should be relative to #pod the base of the repository. #pod This option can be repeated to specify multiple additional files. #pod #pod =head2 C #pod #pod =for stopwords cpantesters #pod #pod A boolean to indicate whether to fake C<< $ENV{HOME} >>. #pod This may be needed if your module unilaterally creates stuff in the user's home directory: #pod indeed, some cpantesters will smoke test your distribution with a read-only home #pod directory. Defaults to false. #pod #pod =head2 C #pod #pod A boolean to indicate whether to skip the compile test #pod on non-Win32 systems when C<< $ENV{DISPLAY} >> is not set. Defaults to false. #pod #pod =head2 C #pod #pod A string to indicate when to add a test for #pod warnings during compilation checks. Possible values are: #pod #pod =over 4 #pod #pod =item * C: do not test for warnings #pod #pod =item * C: test for warnings only when AUTHOR_TESTING is set #pod (default, and recommended) #pod #pod =item * C: always test for warnings (not recommended, as this can prevent #pod installation of modules when upstream dependencies exhibit warnings in a new #pod Perl release) #pod #pod =back #pod #pod =head2 C #pod #pod A boolean to indicate whether the test will BAIL_OUT #pod of all subsequent tests when compilation failures are encountered. Defaults to false. #pod #pod =head2 C #pod #pod =for stopwords FileFinder #pod #pod This is the name of a L for finding #pod modules to check. The default value is C<:InstallModules>; this option can be #pod used more than once. F<.pod> files are always skipped. #pod #pod Other predefined finders are listed in #pod L. #pod You can define your own with the #pod L<[FileFinder::ByName]|Dist::Zilla::Plugin::FileFinder::ByName> and #pod L<[FileFinder::Filter]|Dist::Zilla::Plugin::FileFinder::Filter> plugins. #pod #pod =head2 C #pod #pod =for stopwords executables #pod #pod Just like C, but for finding scripts. The default value is #pod C<:PerlExecFiles> (when available; otherwise C<:ExecFiles>) #pod -- see also L, to make sure these #pod files are properly marked as executables for the installer. #pod #pod =head2 C #pod #pod When true, the default C becomes F and the #pod default C phase becomes C. #pod #pod =head2 C #pod #pod Use this option to pass a command-line switch (e.g. C<-d:Confess>, C<-M-warnings=numeric>) to the command that #pod tests the module or script. Can be used more than once. See L for more on constructing these switches. #pod #pod =head1 RUNTIME ENVIRONMENT OPTIONS #pod #pod If the environment variable C<$PERL_COMPILE_TEST_DEBUG> is set to a true option when the test is run, the command #pod to test each file will be printed as a C. #pod #pod =head1 SEE ALSO #pod #pod =for :list #pod * L #pod * L #pod #pod =cut =pod =encoding UTF-8 =head1 NAME Dist::Zilla::Plugin::Test::Compile - Common tests to check syntax of your modules, using only core modules =head1 VERSION version 2.058 =head1 SYNOPSIS In your F: [Test::Compile] skip = Test$ fake_home = 1 needs_display = 1 fail_on_warning = author bail_out_on_fail = 1 switch = -M-warnings=numeric ; like "no warnings 'numeric' =head1 DESCRIPTION This is a L plugin that runs at the L stage, providing a test file (configurable, defaulting to F). This test will find all modules and scripts in your distribution, and try to compile them one by one. This means it's a bit slower than loading them all at once, but it will catch more errors. The generated test is guaranteed to only depend on modules that are available in core. Most options only require perl 5.6.2; the C option requires the version of L that shipped with perl 5.12 (but the test still runs on perl 5.6). This plugin accepts the following options: =for Pod::Coverage::TrustPod mvp_multivalue_args mvp_aliases register_prereqs gather_files munge_file =head1 CONFIGURATION OPTIONS =head2 C The name of the generated file. Defaults to F =head2 C The phase for which to register prerequisites. Defaults to C. Setting this to a false value will disable prerequisite registration. =head2 C A regex to skip compile test for B matching it. The match is done against the module name (C), not the file path (F). This option can be repeated to specify multiple regexes. =head2 C A filename to also test, in addition to any files found earlier. It will be tested as a module if it ends with C<.pm> or C<.PM>, and as a script otherwise. Module filenames should be relative to F; others should be relative to the base of the repository. This option can be repeated to specify multiple additional files. =head2 C =for stopwords cpantesters A boolean to indicate whether to fake C<< $ENV{HOME} >>. This may be needed if your module unilaterally creates stuff in the user's home directory: indeed, some cpantesters will smoke test your distribution with a read-only home directory. Defaults to false. =head2 C A boolean to indicate whether to skip the compile test on non-Win32 systems when C<< $ENV{DISPLAY} >> is not set. Defaults to false. =head2 C A string to indicate when to add a test for warnings during compilation checks. Possible values are: =over 4 =item * C: do not test for warnings =item * C: test for warnings only when AUTHOR_TESTING is set (default, and recommended) =item * C: always test for warnings (not recommended, as this can prevent installation of modules when upstream dependencies exhibit warnings in a new Perl release) =back =head2 C A boolean to indicate whether the test will BAIL_OUT of all subsequent tests when compilation failures are encountered. Defaults to false. =head2 C =for stopwords FileFinder This is the name of a L for finding modules to check. The default value is C<:InstallModules>; this option can be used more than once. F<.pod> files are always skipped. Other predefined finders are listed in L. You can define your own with the L<[FileFinder::ByName]|Dist::Zilla::Plugin::FileFinder::ByName> and L<[FileFinder::Filter]|Dist::Zilla::Plugin::FileFinder::Filter> plugins. =head2 C =for stopwords executables Just like C, but for finding scripts. The default value is C<:PerlExecFiles> (when available; otherwise C<:ExecFiles>) -- see also L, to make sure these files are properly marked as executables for the installer. =head2 C When true, the default C becomes F and the default C phase becomes C. =head2 C Use this option to pass a command-line switch (e.g. C<-d:Confess>, C<-M-warnings=numeric>) to the command that tests the module or script. Can be used more than once. See L for more on constructing these switches. =head1 RUNTIME ENVIRONMENT OPTIONS If the environment variable C<$PERL_COMPILE_TEST_DEBUG> is set to a true option when the test is run, the command to test each file will be printed as a C. =head1 SEE ALSO =over 4 =item * L =item * L =back =head1 SUPPORT Bugs may be submitted through L (or L). There is also a mailing list available for users of this distribution, at L. There is also an irc channel available for users of this distribution, at L on C|irc://irc.perl.org/#distzilla>. =head1 AUTHORS =over 4 =item * Jérôme Quelin =item * Karen Etheridge =back =head1 CONTRIBUTORS =for stopwords Ahmad M. Zawawi Olivier Mengué Kent Fredric Jesse Luehrs David Golden Randy Stauner Harley Pig Graham Knop fayland Peter Shangov Chris Weyl Ricardo SIGNES Marcel Gruenauer =over 4 =item * Ahmad M. Zawawi =item * Olivier Mengué =item * Kent Fredric =item * Jesse Luehrs =item * David Golden =item * Randy Stauner =item * Harley Pig =item * Graham Knop =item * fayland =item * Peter Shangov =item * Chris Weyl =item * Ricardo SIGNES =item * Marcel Gruenauer =back =head1 COPYRIGHT AND LICENCE This software is copyright (c) 2009 by Jérôme Quelin. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut __DATA__ ___[ test-compile ]___ use 5.006; use strict; use warnings; # this test was generated with {{ ref $plugin }} {{ $plugin->VERSION }} use Test::More{{ $test_more_version ? " $test_more_version" : '' }}; {{ $needs_display ? <<'CODE' : '' # Skip all tests if you need a display for this test and $ENV{DISPLAY} is not set if (not $ENV{DISPLAY} and $^O ne 'MSWin32') { plan skip_all => 'Needs DISPLAY'; } CODE }} plan tests => {{ my $count = @module_filenames + @script_filenames; $count += 1 if $fail_on_warning eq 'all'; $count .= ' + ($ENV{AUTHOR_TESTING} ? 1 : 0)' if $fail_on_warning eq 'author'; $count; }}; my @module_files = ( {{ join(",\n", map { " '" . $_ . "'" } map { s/'/\\'/g; $_ } sort @module_filenames) }} ); {{ @script_filenames ? 'my @scripts = (' . "\n" . join(",\n", map { " '" . $_ . "'" } map { s/'/\\'/g; $_ } sort @script_filenames) . "\n" . ');' : '' }} {{ $fake_home ? <<'CODE' : '# no fake home requested'; # fake home for cpan-testers use File::Temp; local $ENV{HOME} = File::Temp::tempdir( CLEANUP => 1 ); CODE }} my @switches = ( -d 'blib' ? '-Mblib' : '-Ilib', {{ @$switches ? ' ' . join(' ', map { q{'} . $_ . q{',} } @$switches) . "\n" : '' }}); use File::Spec; use IPC::Open3; use IO::Handle; open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!"; my @warnings; for my $lib (@module_files) { # see L my $stderr = IO::Handle->new; diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . $str . q{'} } $^X, @switches, '-e', "require q[$lib]")) if $ENV{PERL_COMPILE_TEST_DEBUG}; my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-e', "require q[$lib]"); binmode $stderr, ':crlf' if $^O eq 'MSWin32'; my @_warnings = <$stderr>; waitpid($pid, 0); is($?, 0, "$lib loaded ok"); shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/ and not eval { +require blib; blib->VERSION('1.01') }; if (@_warnings) { warn @_warnings; push @warnings, @_warnings; } } {{ @script_filenames ? <<'CODE' : ''; foreach my $file (@scripts) { SKIP: { open my $fh, '<', $file or warn("Unable to open $file: $!"), next; my $line = <$fh>; close $fh and skip("$file isn't perl", 1) unless $line =~ /^#!\s*(?:\S*perl\S*)((?:\s+-\w*)*)(?:\s*#.*)?$/; @switches = (@switches, split(' ', $1)) if $1; close $fh and skip("$file uses -T; not testable with PERL5LIB", 1) if grep { $_ eq '-T' } @switches and $ENV{PERL5LIB}; my $stderr = IO::Handle->new; diag('Running: ', join(', ', map { my $str = $_; $str =~ s/'/\\'/g; q{'} . $str . q{'} } $^X, @switches, '-c', $file)) if $ENV{PERL_COMPILE_TEST_DEBUG}; my $pid = open3($stdin, '>&STDERR', $stderr, $^X, @switches, '-c', $file); binmode $stderr, ':crlf' if $^O eq 'MSWin32'; my @_warnings = <$stderr>; waitpid($pid, 0); is($?, 0, "$file compiled ok"); shift @_warnings if @_warnings and $_warnings[0] =~ /^Using .*\bblib/ and not eval { +require blib; blib->VERSION('1.01') }; # in older perls, -c output is simply the file portion of the path being tested if (@_warnings = grep { !/\bsyntax OK$/ } grep { chomp; $_ ne (File::Spec->splitpath($file))[2] } @_warnings) { warn @_warnings; push @warnings, @_warnings; } } } CODE }} {{ ($fail_on_warning ne 'none' ? q{is(scalar(@warnings), 0, 'no warnings found')} . "\n" . q{ or diag 'got warnings: ', } . ( $test_more_version > 0.82 ? q{explain(\@warnings)} : q{( Test::More->can('explain') ? Test::More::explain(\@warnings) : join("\n", '', @warnings) )} ) : '# no warning checks') . ($fail_on_warning eq 'author' ? ' if $ENV{AUTHOR_TESTING};' : ';') }} {{ $bail_out_on_fail ? 'BAIL_OUT("Compilation problems") if !Test::More->builder->is_passing;' : ''; }} Dist-Zilla-Plugin-Test-Compile-2.058/examples/dist.ini000600 000766 000024 00000000421 13216334661 022772 0ustar00etherstaff000000 000000 ; standard intro section of your dist.ini name = My-Super-Cool-Dist author = A. U. Thor license = Perl_5 copyright_holder = A. U. Thor copyright_year = 2009 ; use the following to add a new 00-compile.t test [Test::Compile] ; rest of your dist.ini looks the same