X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Makefile.PL;h=682dade029dcafcf03a28a1bc9c1b443fc419b3c;hb=40cb86f736f193bb4cbaa81ea3f10048a0af4572;hp=11fa16335e53e38ef15ba9255b3d843d2b284076;hpb=6c01c1489d870bc381115fe94c041ce23b881e4d;p=gitmo%2FMoose.git diff --git a/Makefile.PL b/Makefile.PL index 11fa163..682dade 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -1,47 +1,73 @@ use strict; use warnings; -use inc::Module::Install; -use 5.008001; +use inc::Module::Install 0.98; +use Module::Install::AuthorRequires; +use 5.008003; +check_broken_extratests(); check_conflicts(); name 'Moose'; -perl_version '5.008001'; +perl_version '5.008003'; all_from 'lib/Moose.pm'; license 'perl'; requires 'Carp'; -requires 'Class::MOP' => '0.92_01'; -requires 'Data::OptList' => '0'; -requires 'List::MoreUtils' => '0.12'; -requires 'Scalar::Util' => '1.19'; -requires 'Sub::Exporter' => '0.980'; -requires 'Sub::Name' => '0'; -requires 'Task::Weaken' => '0'; -requires 'Try::Tiny' => '0.02'; - -test_requires 'Test::More' => '0.77'; +requires 'Class::MOP' => '1.02'; +requires 'Data::OptList' => '0'; +requires 'List::MoreUtils' => '0.12'; +requires 'Package::DeprecationManager' => '0.03'; +requires 'Scalar::Util' => '1.19'; +requires 'Sub::Exporter' => '0.980'; +requires 'Sub::Name' => '0'; +requires 'Task::Weaken' => '0'; +requires 'Try::Tiny' => '0.02'; + +test_requires 'Test::More' => '0.88'; test_requires 'Test::Exception' => '0.27'; -if ( -d '.svn' || -d '.git' || $ENV{IS_MAINTAINER} ) { +author_requires 'Test::Inline'; +author_requires 'File::Find::Rule'; +author_requires 'Module::Info'; +author_requires 'Test::Spelling'; +author_requires 'Test::Pod::Coverage'; +author_requires 'Test::NoTabs'; + +if ( is_maintainer() ) { system( $^X, 'author/extract-inline-tests' ); } -extra_tests(); tests_recursive(); +repository 'git://git.moose.perl.org/Moose.git'; +add_metadata(x_authority => 'cpan:STEVAN'); + WriteAll(); -# Use the cpan-smolder-stable script in the Moose svn root to figure +# Use the xt/author/test-my-dependents.t test to figure # out what on CPAN will break with the latest Moose, then update this # before a release. sub check_conflicts { my %conflicts = ( - 'MooseX::ClassAttribute' => '0.09', - 'MooseX::Singleton' => '0.19', - 'MooseX::StrictConstructor' => '0.07', - 'MooseX::Params::Validate' => '0.05', - 'Fey::ORM' => '0.23', + 'Catalyst' => '5.80017', + 'Devel::REPL' => '1.003008', + 'Fey::ORM' => '0.23', + 'File::ChangeNotify' => '0.15', + 'KiokuDB' => '0.41', + 'MooseX::Aliases' => '0.07', + 'MooseX::AttributeHelpers' => '0.22', + 'MooseX::Attribute::Prototype' => '0.10', + 'MooseX::ClassAttribute' => '0.09', + 'MooseX::MethodAttributes' => '0.18', + 'MooseX::NonMoose' => '0.07', + 'MooseX::Params::Validate' => '0.05', + 'MooseX::Role::Cmd' => '0.06', + 'MooseX::Role::WithOverloading' => '0.04', + 'MooseX::Singleton' => '0.19', + 'MooseX::StrictConstructor' => '0.07', + 'MooseX::Types' => '0.19', + 'namespace::autoclean' => '0.08', + 'Pod::Elemental' => '0.093280', ); my $found = 0; @@ -76,3 +102,19 @@ EOF sleep 4; } + +sub is_maintainer { + return $Module::Install::AUTHOR || $ENV{IS_MAINTAINER}; +} + +sub check_broken_extratests { + return unless is_maintainer(); + + if ( exists $Module::Install::ExtraTests::{VERSION} && Module::Install::ExtraTests->VERSION < 0.007 ) { + print STDERR <<'EOR'; +You have a broken version of Module::Install::ExtraTests installed. +Please upgrade to version 0.007 or newer and re-run Makefile.PL +EOR + exit 0; + } +}