NAME
Dist::Zilla::PluginBundle::BAREFOOT - Dist::Zilla configuration the way BAREFOOT does it
VERSION
This document describes version 0.06 of Dist::Zilla::PluginBundle::BAREFOOT.
SYNOPSIS
# in dist.ini
[@BAREFOOT]
DESCRIPTION
This is a Dist::Zilla PluginBundle. It is roughly equivalent to the following dist.ini:
; version provider
; hopefully soemething here soon
; choose files to include
[GatherDir] ; everything under top dir
exclude_filename = README.pod ; skip this generated file
exclude_filename = META.json ; skip this generated file
;[PruneCruft] ; default stuff to skip
;[ManifestSkip] ; if -f MANIFEST.SKIP, skip those, too
; this should probably be moved to metadata section
[AutoPrereqs] ; find prereqs from code
skip = ^t::lib
; file modifications
[OurPkgVersion] ; add $VERSION = ... to all files
;[InsertCopyright ; add copyright at "# COPYRIGHT"
[PodWeaver] ; generate Pod
config_plugin = @BAREFOOT ; allows Pod::WikiDoc and a few other bits and bobs
; generated files
[License] ; boilerplate license
[ReadmeAnyFromPod] ; create README.pod in repo directory
type = pod
filename = README.pod
location = root
; should this be in metadata section?
[Bugtracker]
web = http://github.com/barefootcoder/%l/issues
; xt tests
;[Test::PodSpelling] ; xt/author/pod-spell.t
;[MetaTests] ; xt/release/meta-yaml.t
;[PodSyntaxTests] ; xt/release/pod-syntax.t
;[PodCoverageTests] ; xt/release/pod-coverage.t
;[Test::Version] ; xt/release/test-version.t
; metadata
;[MinimumPerl] ; determine minimum perl version
[GithubMeta]
remote = origin
;[MetaYAML] ; generate META.yml (v1.4)
[MetaJSON] ; generate META.json (v2)
;[MetaNoIndex] ; sets 'no_index' in META
;directory = t
;directory = xt
;directory = examples
;directory = corpus
;package = DB ; just in case
; can't get this one to work right ATM
; [MetaProvides::Package] ; add 'provides' to META files
; meta_noindex = 1 ; respect prior no_index directives
[MetaProvides::Class] ; add 'provides' to META files for classes
inherit_version = 1 ; use version from dist.ini
; build system
[ExecDir] ; include 'bin/*' as executables
[ShareDir] ; include 'share/' for File::ShareDir
[MakeMaker] ; create Makefile.PL
; manifest (after all generated files)
[Manifest] ; create MANIFEST
; before release
[Git::Check] ; ensure all files checked in
allow_dirty = dist.ini
allow_dirty = Changes
allow_dirty = README.pod ; ignore this generated file
allow_dirty = META.json ; ignore this generated file
;[CheckPrereqsIndexed] ; ensure prereqs are on CPAN
[CheckVersionIncrement] ; ensure version has been bumped
[CheckChangesHasContent] ; ensure Changes has been updated
;[CheckExtraTests] ; ensure xt/ tests pass
[TestRelease] ; ensure t/ tests pass
[ConfirmRelease] ; prompt before uploading
; releaser
[UploadToCPAN] ; uploads to CPAN
; after release
[Git::Tag] ; tag repo with custom tag
tag_format = v%v ; this one is overridable
tag_message = version %v for CPAN ; this one isn't
; NextRelease acts *during* pre-release to write $VERSION and
; timestamp to Changes and *after* release to add a new {{$NEXT}}
; section, so to act at the right time after release, it must come
; after UploadToCPAN but before Git::Commit in the dist.ini. It
; will still act during pre-release as usual.
[NextRelease]
[Git::Commit] ; commit Changes (for new dev)
[Git::Push] ; push repo to remote
push_to = origin
USAGE
To use this PluginBundle, just add it to your dist.ini. You can provide the following options:
auto_prereq
-- This indicates whether AutoPrereq should be used or not. Default is 1.tag_format
-- Given toGit::Tag
. Default is 'v%v'.version_regexp
-- Given toGit::NextVersion
. Default is '^v(.+)$'.git_remote
-- Given toGit::Push
_in addition to_ origin; given to GithubMeta _instead of_ origin.fake_release
-- Swaps FakeRelease for UploadToCPAN. Mostly useful for testing a dist.ini without risking a real release.stopwords
-- Add stopword for Test::PodSpelling (can be repeated).no_spellcheck
-- Omit Test::PodSpelling tests.repository_link
-- Override the Pod::Weaver Support section default (which is "both").
INSTALLATION
If you want to make sure you have all the necessary prereqs, try this (from the dir you checked out the distro into):
perl -lne 'print $1 if /Dependencies/../VERSION/ and /use\s+(\S+)/' lib/*/*/PluginBundle/BAREFOOT.pm | cpanm -n
SEE ALSO
SUPPORT
Perldoc
You can find documentation for this module with the perldoc command.
perldoc Dist::Zilla::PluginBundle::BAREFOOT
Bugs / Feature Requests
This module is on GitHub. Feel free to fork and submit patches. Please note that I develop
via TDD (Test-Driven Development), so a patch that includes a failing test is much more
likely to get accepted (or least likely to get accepted more quickly).
If you just want to report a problem or suggest a feature, that's okay too. You can create
an issue on GitHub here: L<http://github.com/barefootcoder/dist-zilla-pluginbundle-barefoot/issues>.
Source Code
none https://github.com/barefootcoder/dist-zilla-pluginbundle-barefoot
git clone https://github.com/barefootcoder/dist-zilla-pluginbundle-barefoot.git
AUTHOR
Buddy Burden <barefoot@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2016 by Buddy Burden.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)