NAME
Dist::Zilla::PluginBundle::Author::ETHER - A plugin bundle for distributions built by ETHER
VERSION
version 0.086
SYNOPSIS
In your dist.ini:
[@Author::ETHER]
DESCRIPTION
This is a Dist::Zilla plugin bundle. It is approximately equivalent to the following dist.ini (following the preamble):
;;; VersionProvider
[RewriteVersion::Transitional]
:version = 0.004
fallback_version_provider = Git::NextVersion
version_regexp = ^v([\d._]+)(-TRIAL)?$
;;; BeforeBuild
[PromptIfStale / stale modules, build]
phase = build
module = Dist::Zilla::Plugin::Author::ETHER
[PromptIfStale / stale modules, release]
phase = release
check_all_plugins = 1
check_all_prereqs = 1
;;; ExecFiles, ShareDir
[ExecDir]
dir = script
[ShareDir]
;;; Finders
[FileFinder::ByName / Examples]
dir = examples
[FileFinder::ByName / ExtraTestFiles]
dir = xt
;;; Gather Files
[Git::GatherDir]
:version = 2.016
exclude_filename = README.md
exclude_filename = README.pod
exclude_filename = LICENSE
exclude_filename = CONTRIBUTING
[MetaYAML]
[MetaJSON]
[License]
[Readme]
[Manifest]
[GenerateFile::ShareDir / generate CONTRIBUTING]
-dist = Dist-Zilla-PluginBundle-Author-ETHER
-filename = CONTRIBUTING
has_xs = <dynamically-determined flag>
[InstallGuide]
[Test::Compile]
:version = 2.039
bail_out_on_fail = 1
xt_mode = 1
script_finder = :ExecFiles
script_finder = Examples
[Test::NoTabs]
:version = 0.08
finder = :InstallModules
finder = :ExecFiles
finder = Examples
finder = :TestFiles
finder = ExtraTestFiles
[Test::EOL]
:version = 0.14
[MetaTests]
[Test::CPAN::Changes]
:version = 0.008
[Test::ChangesHasContent]
[Test::MinimumVersion]
:version = 2.000003
max_target_perl = 5.008001
[PodSyntaxTests]
[PodCoverageTests]
[Test::PodSpelling]
;[Test::Pod::LinkCheck] many outstanding bugs
[Test::Pod::No404s]
[Test::Kwalitee]
[MojibakeTests]
[Test::ReportPrereqs]
:version = 0.019
verify_prereqs = 1
[Test::Portability]
;;; Munge Files
[Git::Describe]
:version = 0.004
on_package_line = 1
[PodWeaver] (or [SurgicalPodWeaver])
:version = 4.005
replacer = replace_with_comment
post_code_replacer = replace_with_nothing
[NextRelease]
:version = 4.300018
time_zone = UTC
format = %-8v %{uyyy-MM-dd HH:mm:ss'Z'}d%{ (TRIAL RELEASE)}T
[ReadmeAnyFromPod]
:version = 0.142180
type = pod
location = root
phase = release
;;; MetaData
[GithubMeta] ; (if server = 'github' or omitted)
homepage = 0
issues = 0
[AutoMetaResources]
bugtracker.rt = 1
; (plus repository.* = 1 if server = 'gitmo' or 'p5sagit')
[AuthorityFromModule]
:version = 0.002
[Authority]
authority = cpan:ETHER
do_munging = 0
[MetaNoIndex]
directory = t
directory = xt
directory = inc
directory = local
directory = perl5
directory = fatlib
directory = examples
directory = share
directory = corpus
directory = demo
[MetaProvides::Package]
meta_noindex = 1
:version = 1.15000002
finder = :InstallModules
[MetaConfig]
[Keywords]
:version = 0.004
[Git::Contributors]
:version = 0.004
order_by = commits
;;; Register Prereqs
[AutoPrereqs]
[Prereqs::AuthorDeps]
[MinimumPerl]
:version = 1.006
configure_finder = :NoFiles
[Prereqs / installer_requirements]
-phase = develop
-relationship = requires
Dist::Zilla::PluginBundle::Author::ETHER = <version specified in dist.ini>
[Prereqs / pluginbundle_version]
-phase = develop
-relationship = recommends
Dist::Zilla::PluginBundle::Author::ETHER = <current installed version>
;;; Install Tool
<specified installer(s)>
;;; Test Runner
# <specified installer(s)>
[RunExtraTests]
:version = 0.024
default_jobs = 9
;;; After Build
[CheckSelfDependency]
[Run::AfterBuild / .ackrc]
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; if [[ %d =~ ^%n-[.[:xdigit:]]+$ ]]; then rm -f .latest; ln -s %d .latest; fi"
[Run::AfterBuild / .latest]
:version = 0.028
eval = if ('%d' =~ /^%n-[.[:xdigit:]]+$/) { unlink '.latest'; symlink '%d', '.latest'; }
;;; Before Release
[CheckStrictVersion]
decimal_only = 1
[Git::Check / initial check]
:version = 2.025
build_warnings = 1
allow_dirty =
[Git::CheckFor::MergeConflicts]
[Git::CheckFor::CorrectBranch]
:version = 0.004
release_branch = master
[Git::Remote::Check]
branch = master
remote_branch = master
[CheckPrereqsIndexed]
[TestRelease]
[Git::Check / after tests]
allow_dirty =
[CheckIssues]
;(ConfirmRelease)
;;; Releaser
[UploadToCPAN]
;;; AfterRelease
[CopyFilesFromRelease]
filename = LICENSE
filename = CONTRIBUTING
[Run::AfterRelease / remove old READMEs]
:version = 0.024
eval = unlink 'README.md'
[Git::Commit / release snapshot]
:version = 2.020
add_files_in = .
allow_dirty = Changes
allow_dirty = README.md
allow_dirty = README.pod
allow_dirty = LICENSE
allow_dirty = CONTRIBUTING
commit_msg = %N-%v%t%n%n%c
[Git::Tag]
tag_format = v%v%t
tag_message = v%v%t
[GitHub::Update] ; (if server = 'github' or omitted)
:version = 0.40
metacpan = 1
[BumpVersionAfterRelease::Transitional]
:version = 0.004
[Git::Commit / post-release commit]
:version = 2.020
allow_dirty_match = ^lib
commit_msg = increment $VERSION after release
[Git::Push]
[Run::AfterRelease / install release]
:version = 0.031
fatal_errors = 0
run = cpanm http://URMOM:mysekritpassword@pause.perl.org/pub/PAUSE/authors/id/U/UR/URMOM/%a
[Run::AfterRelease / release complete]
:version = 0.024
eval = print "release complete!\\xa"
; listed late, to allow all other plugins which do BeforeRelease checks to run first.
[ConfirmRelease]
; listed last, to be sure we run at the very end of each phase
; only performed if $ENV{USER} eq 'ether'
[VerifyPhases / PHASE VERIFICATION]
The distribution's code is assumed to be hosted at github; RT is used as the issue tracker. The home page in the metadata points to github, while the home page on github is updated on release to point to metacpan. The version and other metadata is derived directly from the local git repository.
OPTIONS / OVERRIDES
version
Use V=<version>
in the shell to override the version of the distribution being built; otherwise the version is incremented after each release, in the *.pm files.
pod coverage
Subs can be considered "covered" for pod coverage tests by adding a directive to pod, as described in Pod::Coverage::TrustPod:
=for Pod::Coverage foo bar baz
spelling stopwords
Stopwords for spelling tests can be added by adding a directive to pod (as many as you'd like), as described in "ADDING STOPWORDS" in Pod::Spell:
=for stopwords foo bar baz
installer
Available since 0.007.
The installer back-end(s) to use (can be specified more than once); defaults to ModuleBuildTiny
and MakeMaker::Fallback
(which generates a Build.PL for normal use with no-configure-requires protection, and Makefile.PL as a fallback, containing an upgrade warning).
You can select other backends (by plugin name, without the []
), with the installer
option, or 'none' if you are supplying your own, as a separate plugin.
Encouraged choices are:
installer = ModuleBuildTiny
installer = MakeMaker
installer = =inc::Foo (if no configs are needed for this plugin)
installer = none (if you are including your own later on, with configs)
server
Available since 0.019.
If provided, must be one of:
github
(default) metadata and release plugins are tailored to github.
gitmo
metadata and release plugins are tailored to gitmo@git.moose.perl.org.
p5sagit
metadata and release plugins are tailored to p5sagit@git.shadowcat.co.uk.
catagits
metadata and release plugins are tailored to catagits@git.shadowcat.co.uk.
none
no special configuration of metadata (relating to repositories etc) is done -- you'll need to provide this yourself.
airplane
Available since 0.053.
A boolean option, that when set, removes the use of all plugins that use the network (generally for comparing metadata against PAUSE, and querying the remote git server), as well as blocking the use of the release
command. Defaults to false; can also be set with the environment variable DZIL_AIRPLANE
.
copy_file_from_release
Available in this form since 0.076.
A file, to be present in the build, which is copied back to the source repository at release time and committed to git. Can be repeated more than once. Defaults to: LICENSE, CONTRIBUTING; defaults are appended to, rather than overwritten.
surgical_podweaver
Available since 0.051.
A boolean option, that when set, uses [SurgicalPodWeaver] instead of [PodWeaver], but with all the same options. Defaults to false.
changes_version_columns
Available since 0.076.
An integer that specifies how many columns (right-padded with whitespace) are allocated in Changes entries to the version string. Defaults to 10.
other customizations
This bundle makes use of Dist::Zilla::Role::PluginBundle::PluginRemover and Dist::Zilla::Role::PluginBundle::Config::Slicer to allow further customization. Plugins are not loaded until they are actually needed, so it is possible to --force
-install this plugin bundle and -remove
some plugins that do not install or are otherwise problematic.
NAMING SCHEME
This distribution follows best practices for author-oriented plugin bundles; for more information, see KENTNL's distribution.
SUPPORT
Bugs may be submitted through the RT bug tracker (or bug-Dist-Zilla-PluginBundle-Author-ETHER@rt.cpan.org). I am also usually active on irc, as 'ether' at irc.perl.org
.
AUTHOR
Karen Etheridge <ether@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Karen Etheridge.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
CONTRIBUTORS
Randy Stauner <rwstauner@cpan.org>
Сергей Романов <sromanov@cpan.org>