name    = HTML-FormFu
author  = Carl Franks <cpan@fireartist.com>
license = Perl_5
copyright_holder = Carl Franks
copyright_year   = 2018
main_module = lib/HTML/FormFu.pm

[Prereqs]
;;; Although we believe this will work on perl 5.8 versions, other dependancies
;;; such as Number::Format have been forcing a minimum version of 5.10 since
;;; 2011.  Testing new versions against 5.8.x is getting impractical
;;perl = 5.008001
perl = 5.010

 ; this is the lowest version of Exporter I can identify that exports import()
 ; it's bundled with perl 5.83
 ; version 5.567 that ships with perl 5.82 is no good
Exporter = 5.57

Carp = 0
Class::MOP::Method = 0
Clone = 0.31
Config::Any = 0.18 ; 0.10 - supports multi-doc config files
                   ; 0.18 - prefers YAML::XS for YAML
Cwd = 0
Data::Visitor = 0.26 ; when it dumped Any::Moose for Moose
Data::Visitor::Callback = 0
DateTime = 0.54 ; required for string overloading
DateTime::Format::Strptime = 1.2000
DateTime::Format::Builder = 0.7901 ; fixes memory leaks
DateTime::Format::Natural = 0
DateTime::Locale = 0.45
Email::Valid = 0
Encode = 0
Fatal = 0
File::Copy = 0
File::Find = 0
File::ShareDir = 0
File::Spec = 0
File::Temp = 0
Hash::Flatten = 0
HTML::Scrubber = 0
HTML::TokeParser::Simple = 3.14
HTTP::Headers = 1.64
IO::File = 0
JSON::MaybeXS = 0
List::MoreUtils = 0
List::Util = 1.45
Locale::Maketext = 0
Module::Pluggable = 0
Moose = 1.00 ; Reasonable default until we get test results
Moose::Role = 0
Moose::Util = 0
MooseX::Aliases = 0
MooseX::Attribute::Chained = 1.0.2
Number::Format = 0
Readonly = 0
Regexp::Common = 0
Path::Class::File = 0
Scalar::Util = 0
Storable = 0
Task::Weaken = 0 ; to ensure Scalar::Util was built with weaken()
YAML::XS = 0.32

[Prereqs / TestRequires]

CGI = 3.37 ; for file POST tests
POSIX = 0
Regexp::Assemble = 0
Test::More = 0.92
Test::Exception = 0
Test::Memory::Cycle = 0         ; for the xt/circular_reference.t
Test::RequiresInternet = 0

;; --
;; -- Sets of additional tests we want to do as part of release
[Test::Perl::Critic]
[MetaTests]
;; [PodCoverageTests]           ; Currently we comprehensively fail these
[PkgVersion]
; [PodVersion] ; PodWeaver does this and more
[PodWeaver]
[Test::Kwalitee]
[Test::EOL]
finder = :InstallModules        ; prevents test inputs being flagged
[Test::PAUSE::Permissions]      ; if doing a release make sure we have PAUSE perms

;; -- Additional information
[GithubMeta]                    ; Grab the repo metadata
[NextRelease]                   ; Mark up the next release in changes

;; -- Additional git
[Git::GatherDir]
[Git::NextVersion]              ; Get the next version tag from git
[Git::CheckFor::CorrectBranch]  ; ensure on master branch for release
[Git::Remote::Check]            ; ensure our branch is ahead of remote

;; -- We base the release stuff on the starter module, and tweak a bit
[@Starter]
-remove = GatherDir             ; this is replaced by [Git::GatherDir]
ReadmeAnyFromPod.source_filename = lib/HTML/FormFu.pm

[ReadmeAnyFromPod / Pod_Readme]
type = pod
location = root ; do not include pod readmes in the build!

[@Git]
changelog = Changes
allow_dirty = dist.ini
allow_dirty = README.pod
allow_dirty = Changes
commit_msg  = v%v%t - %d%n%n%c
tag_format  = v%v%t               ; see Git::Tag
tag_message = v%v%t - %d          ; see Git::Tag