name    = Moose
author  = Stevan Little <stevan@cpan.org>
author  = Dave Rolsky <autarch@urth.org>
author  = Jesse Luehrs <doy@cpan.org>
author  = Shawn M Moore <sartak@cpan.org>
author  = יובל קוג'מן (Yuval Kogman) <nothingmuch@woobling.org>
author  = Karen Etheridge <ether@cpan.org>
author  = Florian Ragwitz <rafl@debian.org>
author  = Hans Dieter Pearcey <hdp@cpan.org>
author  = Chris Prather <chris@prather.org>
author  = Matt S Trout <mstrout@cpan.org>
license = Perl_5
copyright_holder = Infinity Interactive, Inc.
copyright_year = 2006

; $VERSION will be extracted from lib/Moose.pm,
; or override it with $ENV{V}

; authordep Config::MVP = 2.200011

[EnsurePrereqsInstalled]
:version = 0.003
build_phase = release ; be nice to travis
type = requires
type = recommends

[Git::GatherDir]
exclude_match = ^t/recipes/(?!basics_genome_overloadingsubtypesandcoercion)
exclude_filename = Makefile.PL
exclude_filename = LICENSE
exclude_filename = CONTRIBUTING.pod
exclude_filename = ppport.h

; authordep Devel::PPPort = 3.68
[PPPort]
version = 3.68

[MetaYAML]
[MetaJSON]
[License]
[ExecDir]   ; bin/moose-outdated

;[lib]
;lib = inc

; authordep Dist::Zilla::Plugin::MakeMaker::Awesome
[=inc::MakeMaker]
default_jobs = 9

; authordep ExtUtils::HasCompiler = 0.022
[ModuleIncluder]
:version = 0.007
module = ExtUtils::HasCompiler
background_perl = 5.008003

[Manifest]

[MetaConfig]

[=inc::SimpleAuthority]

[MetaResources]
bugtracker.web    = https://rt.cpan.org/Dist/Display.html?Name=Moose
bugtracker.mailto = bug-Moose@rt.cpan.org
homepage          = http://moose.perl.org/
repository.url    = git://github.com/moose/Moose.git
repository.web    = https://github.com/moose/Moose
repository.type   = git
x_IRC = irc://irc.perl.org/#moose
x_MailingList = http://lists.perl.org/list/moose.html

[UseUnsafeInc]
dot_in_INC = 0

[=inc::Documentation]
module = Moose::Manual
module = Moose::Manual::Attributes
module = Moose::Manual::BestPractices
module = Moose::Manual::Classes
module = Moose::Manual::Concepts
module = Moose::Manual::Construction
module = Moose::Manual::Contributing
module = Moose::Manual::Delegation
module = Moose::Manual::Delta
module = Moose::Manual::Exceptions
module = Moose::Manual::FAQ
module = Moose::Manual::MOP
module = Moose::Manual::MethodModifiers
module = Moose::Manual::MooseX
module = Moose::Manual::Resources
module = Moose::Manual::Roles
module = Moose::Manual::Support
module = Moose::Manual::Types
module = Moose::Manual::Unsweetened
module = Moose::Cookbook
module = Moose::Cookbook::Basics::BankAccount_MethodModifiersAndSubclassing
module = Moose::Cookbook::Basics::BinaryTree_AttributeFeatures
module = Moose::Cookbook::Basics::BinaryTree_BuilderAndLazyBuild
module = Moose::Cookbook::Basics::Company_Subtypes
module = Moose::Cookbook::Basics::DateTime_ExtendingNonMooseParent
module = Moose::Cookbook::Basics::Document_AugmentAndInner
module = Moose::Cookbook::Basics::Genome_OverloadingSubtypesAndCoercion
module = Moose::Cookbook::Basics::HTTP_SubtypesAndCoercion
module = Moose::Cookbook::Basics::Immutable
module = Moose::Cookbook::Basics::Person_BUILDARGSAndBUILD
module = Moose::Cookbook::Basics::Point_AttributesAndSubclassing
module = Moose::Cookbook::Extending::Debugging_BaseClassRole
module = Moose::Cookbook::Extending::ExtensionOverview
module = Moose::Cookbook::Extending::Mooseish_MooseSugar
module = Moose::Cookbook::Legacy::Debugging_BaseClassReplacement
module = Moose::Cookbook::Legacy::Labeled_AttributeMetaclass
module = Moose::Cookbook::Legacy::Table_ClassMetaclass
module = Moose::Cookbook::Meta::GlobRef_InstanceMetaclass
module = Moose::Cookbook::Meta::Labeled_AttributeTrait
module = Moose::Cookbook::Meta::PrivateOrPublic_MethodMetaclass
module = Moose::Cookbook::Meta::Table_MetaclassTrait
module = Moose::Cookbook::Meta::WhyMeta
module = Moose::Cookbook::Roles::ApplicationToInstance
module = Moose::Cookbook::Roles::Comparable_CodeReuse
module = Moose::Cookbook::Roles::Restartable_AdvancedComposition
module = Moose::Cookbook::Snack::Keywords
module = Moose::Cookbook::Snack::Types
module = Moose::Cookbook::Style

[FileFinder::ByName / PodModules]
dir = lib
file = *.pod

[FileFinder::Filter / ModulesSansPod]
finder = :InstallModules
skip = \.pod$

[FileFinder::Filter / VersionedModules]
finder = :InstallModules
skip = \.pod$
skip = ^lib/Moose/Conflicts.pm$

[=inc::SimpleProvides]
finder = PodModules

[MetaProvides::Package]
meta_noindex = 1
:version = 1.15000002
finder = ModulesSansPod ; to avoid "No namespaces detected in file..." spewage

[MetaNoIndex]
directory = author
directory = benchmarks
directory = doc
directory = inc

[Git::Contributors]
:version = 0.019
order_by = commits

; authordep Pod::Weaver::Section::AllowOverride
[SurgicalPodWeaver]
:version = 0.0023
replacer = replace_with_comment
post_code_replacer = replace_with_nothing

[RewriteVersion]
finder = VersionedModules

[Git::Describe]
:version = 0.004
on_package_line = 1

; authordep Test::Inline
; authordep File::Find::Rule
; authordep Test::Inline::Extract
[=inc::ExtractInlineTests]

[PromptIfStale]
phase = release
check_all_prereqs = 1
check_all_plugins = 1

[Test::EOL]
:version = 0.14
[PodSyntaxTests]
[Test::NoTabs]
[MetaTests]
[Test::Kwalitee]
skiptest = use_strict ; temporary, until RT#94468 is fixed

[MojibakeTests]
[RunExtraTests]
default_jobs = 9

[Test::ReportPrereqs]
:version = 0.022
version_extractor = Module::Metadata
verify_prereqs = 1
include = Algorithm::C3
include = DBM::Deep
include = DateTime
include = DateTime::Calendar::Mayan
include = DateTime::Format::MySQL
include = Declare::Constraints::Simple
include = Dist::CheckConflicts
include = DynaLoader
include = HTTP::Headers
include = IO::File
include = Locale::US
include = Module::Refresh
include = MooseX::NonMoose
include = Params::Coerce
include = Regexp::Common
include = SUPER
include = Test::Deep
include = Test::DependentModules
include = Test::LeakTrace
include = Test::Output
include = URI
include = YAML
include = autodie

[Test::CPAN::Changes]

[Test::Compile]
:version = 2.037
phase = develop
filename = xt/release/00-compile.t
bail_out_on_fail = 1
; this serves as a TODO list for getting all modules to load independently --
; see RT#89536
skip = ^Class::MOP::Attribute$
skip = ^Class::MOP::Class$
skip = ^Class::MOP::Method::Accessor$
skip = ^Class::MOP::Method::Constructor$
skip = ^Class::MOP::Method::Inlined$
skip = ^Class::MOP::Method::Wrapped$
skip = ^Class::MOP::Mixin::HasAttributes$
skip = ^Class::MOP::Module$
skip = ^Class::MOP::Package$
skip = ^Moose::Meta::Attribute$
skip = ^Moose::Meta::Attribute::Native$
skip = ^Moose::Meta::Mixin::AttributeCore$
skip = ^Moose::Meta::Role::Attribute$
skip = ^Moose::Meta::TypeConstraint::Class$
skip = ^Moose::Meta::TypeConstraint::DuckType$
skip = ^Moose::Meta::TypeConstraint::Enum$
skip = ^Moose::Meta::TypeConstraint::Parameterizable$
skip = ^Moose::Meta::TypeConstraint::Parameterized$
skip = ^Moose::Meta::TypeConstraint::Role$
skip = ^Moose::Meta::TypeConstraint::Union$

[=inc::CheckReleaseType]
[CheckVersionIncrement]

; we would like to have this, but currently there are false negatives:
; https://rt.cpan.org/Ticket/Display.html?id=87883
; https://rt.cpan.org/Ticket/Display.html?id=87884
;[Test::MinimumVersion]
;:version = 2.000003
;max_target_perl = 5.008003

[Test::ChangesHasContent]
[Substitute]
file = xt/release/changes_has_content.t
code = s{^(note 'Checking Changes')}{if \(\(\$ENV\{TRAVIS_PULL_REQUEST\} \|\| '') eq 'false'\) \{\n  chomp\(my \$branch_name = \(\$ENV\{TRAVIS_BRANCH\} || \`git rev-parse --abbrev-ref HEAD\`\)\);\n  \$TODO = 'Changes need not have content for this release yet if this is only the master branch'\n    if \(\$branch_name \|\| ''\) eq 'master';\n\}\n\n$1}

;[CheckPrereqsIndexed]

; all runtime deps must be author deps
[Prereqs]
           Carp                        = 1.22
;authordep Carp                        = 1.22
           Class::Load                 = 0.09
;authordep Class::Load                 = 0.09
           Class::Load::XS             = 0.01
;authordep Class::Load::XS             = 0.01
           Data::OptList               = 0.107
;authordep Data::OptList               = 0.107
           Devel::GlobalDestruction    = 0
;authordep Devel::GlobalDestruction    = 0
           Devel::OverloadInfo         = 0.005
;authordep Devel::OverloadInfo         = 0.005
           Devel::StackTrace           = 2.03
;authordep Devel::StackTrace           = 2.03
           Eval::Closure               = 0.04
;authordep Eval::Closure               = 0.04
           List::Util                  = 1.56
;authordep List::Util                  = 1.56
           MRO::Compat                 = 0.05
;authordep MRO::Compat                 = 0.05
           Module::Runtime             = 0.014
;authordep Module::Runtime             = 0.014
           Module::Runtime::Conflicts  = 0.002
;authordep Module::Runtime::Conflicts  = 0.002
           Package::DeprecationManager = 0.11
;authordep Package::DeprecationManager = 0.11
           Package::Stash              = 0.32
;authordep Package::Stash              = 0.32
           Package::Stash::XS          = 0.24
;authordep Package::Stash::XS          = 0.24
           Params::Util                = 1.00
;authordep Params::Util                = 1.00
           Scalar::Util                = 1.19
;authordep Scalar::Util                = 1.19
           Sub::Exporter               = 0.980
;authordep Sub::Exporter               = 0.980
           Sub::Util                   = 1.40
;authordep Sub::Util                   = 1.40
           Try::Tiny                   = 0.17
;authordep Try::Tiny                   = 0.17
           parent                      = 0.223
;authordep parent                      = 0.223
           perl                        = 5.008003
;authordep perl                        = 5.008003
           strict                      = 1.03
;authordep strict                      = 1.03
           warnings                    = 1.03
;authordep warnings                    = 1.03

[Prereqs / TestRequires]
Test::Fatal           = 0.001
Test::More            = 0.96
Test::Needs           = 0.002010

; all configure deps must be author deps
[Prereqs / ConfigureRequires]
           perl = 5.008003
;Config = 0     ; not actually in 02packages.details.txt!!!

[Prereqs::AuthorDeps]
relation = suggests
exclude = CheckAuthorDeps
exclude = CheckDelta
exclude = CheckReleaseType
exclude = Clean
exclude = Documentation
exclude = ExtractInlineTests
exclude = GenerateDocs
exclude = GitUpToDate
exclude = MMHelper
exclude = MakeMaker
exclude = MyInline
exclude = SimpleAuthority
exclude = SimpleProvides
exclude = TestRelease

; mostly, these are things needed by xt tests
[Prereqs / DevelopRequires]
Algorithm::C3                = 0
Class::Load                  = 0.07
DBM::Deep                    = 1.003
Data::Visitor                = 0.26
DateTime                     = 0
DateTime::Calendar::Mayan    = 0
DateTime::Format::MySQL      = 0
Declare::Constraints::Simple = 0
ExtUtils::MakeMaker::Dist::Zilla::Develop = 0
File::Find::Rule             = 0
HTTP::Headers                = 0
IO::File                     = 0
Locale::US                   = 0
Module::CPANTS::Analyse      = 0.92
Module::Refresh              = 0
Moo                          = 0
MooseX::MarkAsMethods        = 0
MooseX::NonMoose             = 0
PadWalker                    = 0
Params::Coerce               = 0
Regexp::Common               = 0
SUPER                        = 1.10
Specio                       = 0.10
Test::Deep                   = 0
;Test::DependentModules       = 0.13    ; bad dep chain, used by a disabled test.
Test::Inline                 = 0
Test::Kwalitee               = 1.15
Test::LeakTrace              = 0
Test::Memory::Cycle          = 0
Test::Output                 = 0
Test::Pod::Coverage          = 1.04
Test::Spelling               = 0
Test::Warnings               = 0.016
Types::Standard              = 0
URI                          = 0
blib                         = 0

[Prereqs / RuntimeRecommends]
Data::OptList = 0.110    ; faster https://github.com/rjbs/Data-OptList/pull/1

[Prereqs / RuntimeSuggests]
; this needs to be installed *after*, since it deps on Moose
; remove this if this is an issue
Devel::PartialDump = 0.14

[Conflicts]
:version = 0.19
-script = bin/moose-outdated
Catalyst                       = 5.90049999
Config::MVP                    = 2.200004
Devel::REPL                    = 1.003020
Dist::Zilla                    = 5.043
Dist::Zilla::Plugin::Git       = 2.016
Fey                            = 0.36
Fey::ORM                       = 0.42
File::ChangeNotify             = 0.15
HTTP::Throwable                = 0.017
KiokuDB                        = 0.51
Markdent                       = 0.16
Mason                          = 2.18
Moose::Autobox                 = 0.15
MooseX::ABC                    = 0.05
MooseX::Aliases                = 0.08
MooseX::AlwaysCoerce           = 0.13
MooseX::App                    = 1.22
MooseX::Attribute::Deflator    = 2.1.7
MooseX::Attribute::Dependent   = 1.1.3
MooseX::Attribute::Prototype   = 0.10
MooseX::AttributeHelpers       = 0.22
MooseX::AttributeIndexes       = 1.0.0
MooseX::AttributeInflate       = 0.02
MooseX::CascadeClearing        = 0.03
MooseX::ClassAttribute         = 0.26
MooseX::Constructor::AllErrors = 0.021
MooseX::Declare                = 0.35
MooseX::FollowPBP              = 0.02
MooseX::Getopt                 = 0.56
MooseX::InstanceTracking       = 0.04
MooseX::LazyRequire            = 0.06
MooseX::Meta::Attribute::Index = 0.04
MooseX::Meta::Attribute::Lvalue = 0.05
MooseX::Method::Signatures     = 0.44
MooseX::MethodAttributes       = 0.22
MooseX::NonMoose               = 0.24
MooseX::Object::Pluggable      = 0.0011
MooseX::POE                    = 0.214
; MooseX::Params = 0.010   waiting for https://github.com/pshangov/moosex-params/pull/2
MooseX::Params::Validate       = 0.05
MooseX::PrivateSetters         = 0.03
MooseX::Role::Cmd              = 0.06
MooseX::Role::Parameterized    = 1.00
MooseX::Role::WithOverloading  = 0.14
MooseX::Runnable               = 0.03
MooseX::Scaffold               = 0.05
MooseX::SemiAffordanceAccessor = 0.05
MooseX::SetOnce                = 0.100473
MooseX::Singleton              = 0.25
MooseX::SlurpyConstructor      = 1.1
MooseX::Storage                = 0.42
MooseX::StrictConstructor      = 0.12
MooseX::Traits                 = 0.11
MooseX::Types                  = 0.19
MooseX::Types::Parameterizable = 0.05
MooseX::Types::Set::Object     = 0.03
MooseX::Types::Signal          = 1.101930
MooseX::UndefTolerant          = 0.11
Net::Twitter                   = 4.01041
PRANG                          = 0.14
Pod::Elemental                 = 0.093280
Pod::Weaver                    = 3.101638
Reaction                       = 0.002003
Test::Able                     = 0.10
Test::CleanNamespaces          = 0.03
Test::Moose::More              = 0.022
Test::TempDir                  = 0.05
Throwable                      = 0.102080
namespace::autoclean           = 0.08

[Test::CheckBreaks]
:version = 0.017
conflicts_module = Moose::Conflicts
conflicts_module = Module::Runtime::Conflicts

; authordep Dist::Zilla::Util::AuthorDeps = 5.021
; authordep CPAN::Meta::Requirements
; authordep Test::Deep
[=inc::CheckAuthorDeps]

[=inc::CheckDelta]
[=inc::GitUpToDate]

[Git::Remote::Check]
branch = stable/2.22
remote_branch = stable/2.22

[Git::CheckFor::CorrectBranch]
release_branch = stable/2.22

[Git::Check]
allow_dirty =

[Run::AfterBuild / .ackrc]
:version = 0.038
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"

[TestRelease]
[UploadToCPAN]

[CopyFilesFromRelease / CopyChanges]
filename = Changes

[CopyFilesFromRelease]
filename = LICENSE
filename = ppport.h

[Regenerate::AfterReleasers]
plugin = CopyFilesFromRelease

[ReadmeAnyFromPod]
:version = 0.142180
phase = release
type = pod
location = root
source_filename = lib/Moose/Manual/Contributing.pod
filename = CONTRIBUTING.pod

[Git::Commit / release snapshot]
allow_dirty = Changes
allow_dirty = LICENSE
allow_dirty = CONTRIBUTING.pod
allow_dirty = ppport.h
commit_msg = %N-%v%t%n%n%c

[Git::Tag]
tag_format = %v
tag_message = %v%t

[BumpVersionAfterRelease]
finder = VersionedModules

[NextRelease]
:version = 5.033
time_zone = UTC
format = %-7v  %{yyyy-MM-dd}d%{ (TRIAL RELEASE)}T

[Git::Commit / increment version]
allow_dirty = Changes
allow_dirty_match = ^lib/.*\.pm$
commit_msg = increment $VERSION after %v release

[Git::Push]

; note: this is going to die if releasing from an older release branch (the
; merge won't go in cleanly)
[Run::AfterRelease]
:version = 0.030
fatal_errors = 0
run = git checkout master
run = git merge --ff-only --quiet stable/2.22
run = git push

; authordep IPC::System::Simple
; authordep File::pushd
; authordep Path::Tiny
; authordep autodie
; authordep Module::Runtime
[=inc::GenerateDocs]

[=inc::Clean]

; last, so all before-release checks can occur first before prompting
[ConfirmRelease]
