name                = Finance-Bank-Bankwest
version             = 1.2.1
author              = Alex Peters <lxp@cpan.org>
license             = Perl_5
copyright_holder    = Alex Peters

; Without a GatherDir plugin, Dist::Zilla sees no files.
[GatherDir]

; ...but we don't want to include old builds within new ones.
[PruneCruft]

;; FILE TRANSFORMATION ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Write a $VERSION declaration into each module.
[PkgVersion]

; Rewrite POD into complete documents.  Uses weaver.ini.
[PodWeaver]
; authordep Pod::Elemental::Transformer::List
; authordep Pod::Weaver::Plugin::StopWords
; authordep Pod::Weaver::Section::SeeAlso
; authordep Pod::Weaver::Section::Support

; On build, update the version number in the built Changes file.
; After release, create a new section in the source Changes file.
; Conform to the date/time format specified by CPAN::Changes::Spec.
[NextRelease]
format      = %-7v %{yyyy-MM-dd}d
time_zone   = UTC

;; ADDITIONAL FILES ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Add a README file to the build, generated from the finalised POD for
; the main module.
[ReadmeAnyFromPod]

; Also generate a README POD file for the repository root.  (This does
; not form part of the final build.)
[ReadmeAnyFromPod / PodRoot]

; Add a LICENSE file to the build.  The generated POD for each module
; also references this file.
[License]

; Distributions released to the CPAN include a META.json/META.yml file.
; Emit both of these.
[MetaJSON]
[MetaYAML]

; Emit a Makefile.PL file in the build.  This permits testing via
; "dzil test".
[MakeMaker]

; Emit an INSTALL file with installation instructions.
; Must be defined after [MakeMaker].
[InstallGuide]

; Add a MANIFEST file.
[Manifest]

;; PREREQUISITES ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Programmatically determine the distribution's dependencies.  This
; information is needed for the META.* and Makefile.PL files.  DateTime
; is optional though, so don't include that.
[AutoPrereqs]
skip = ^DateTime$

; MooseX::Declare "extends" options are not scanned by the AutoPrereqs
; plugin (RT #84891), so list any such dependencies manually until
; that's fixed.
[Prereqs]
Throwable::Error = 0.101110

; Determine the minimum Perl version required for the distribution.
[MinimumPerl]

; Don't explicitly declare dependencies that are part of Perl itself.
[PrereqsClean]

;; DISTRIBUTION METADATA ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Define where the source code repository and bug tracker can be found
; for the distribution.
[MetaResources]
homepage            = https://metacpan.org/release/Finance-Bank-Bankwest
repository.type     = git
repository.web      = https://github.com/lx/perl5-Finance-Bank-Bankwest
repository.url      = git://github.com/lx/perl5-Finance-Bank-Bankwest
bugtracker.web      = http://rt.cpan.org/Public/Dist/Display.html?Name=Finance-Bank-Bankwest
bugtracker.mailto   = bug-finance-bank-bankwest@rt.cpan.org

; Don't allow PAUSE/CPAN to index test libraries.  Not sure whether
; this is strictly needed, but better safe than sorry...
[MetaNoIndex]
directory = t

; More of the same thing.  Must appear after [MetaNoIndex].
[MetaProvides::Package]
meta_noindex = 1

;; ADDITIONAL TESTS ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Add a test to ensure that all of the source code actually compiles.
[Test::Compile]

; Test that everything has a $VERSION defined.
[Test::Version]

; Add a test to run Perl::Critic on the source code.  Uses
; perlcritic.rc.
[Test::Perl::Critic]

; Ensure that everything is appropriately documented.
[PodCoverageTests]

; ...properly.
[PodSyntaxTests]

; ...and without typos.  "semver" is added to each file by a plugin
; defined in weaver.ini, so explicitly whitelist that "word" here.
[Test::PodSpelling]
stopwords = semver

; Test correctness of the META.yml file.
[MetaTests]

; Add some tests for source code formatting.
[Test::EOL]
[NoTabsTests]

; Assess the distribution's readiness for CPAN.
[KwaliteeTests]

; These extra tests need to be moved into the main test directory of
; the build to run.
[ExtraTests]

;; RELEASE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Ensure that the Changes file documents something for the release.
[CheckChangesHasContent]

; Don't allow a release to occur while there are dirty files (other
; than those that may have new version information written as part of
; the build process).
[Git::Check]
allow_dirty = Changes
allow_dirty = dist.ini
allow_dirty = README.pod

; Ensure all tests pass.
[TestRelease]

; If all is well, publish the distribution.
[ConfirmRelease]
[UploadToCPAN]

; Commit changes to the files modified after a release.
; (Must be defined after [NextRelease].)
[Git::Commit]
allow_dirty = Changes
allow_dirty = dist.ini
allow_dirty = README.pod
time_zone = UTC

; Save (only) release builds to the repository.
[Git::CommitBuild]
branch =
release_branch = releases
release_message = build results of %h (on %b)

; Push changes to the remote repository when a release is made.
[Git::Push]

; Tag releases.  Don't create an annotated tag since another commit
; occurs at release time anyway.
[Git::Tag]
tag_message =
