6 use inc::Module::Install 0.91;
7 if ($ENV{GITALIST_RELEASE_TESTING}) {
8 require Module::Install::AuthorRequires;
9 require Module::Install::AuthorTests;
10 require Module::Install::ReadmeFromPod;
14 all_from 'lib/Gitalist.pm';
15 readme_from 'lib/Gitalist.pm';
17 author 'Dan Brook <broq@cpan.org>';
21 requires 'Catalyst::Runtime' => '5.8001402';
22 requires 'Catalyst::Plugin::ConfigLoader';
23 requires 'Catalyst::Plugin::StackTrace';
24 requires 'Catalyst::Plugin::Static::Simple';
25 requires 'Catalyst::Plugin::Unicode::Encoding';
26 requires 'Catalyst::Action::RenderView';
27 requires 'Catalyst::Component::InstancePerContext';
28 requires 'Catalyst::View::TT';
31 requires 'Template::Provider::Encoding';
32 requires 'Template::Plugin::Cycle';
34 requires 'Config::General';
37 requires 'Moose::Autobox';
38 requires 'MooseX::Declare' => '0.32';
39 requires 'MooseX::Types::Common';
40 requires 'MooseX::Types::Path::Class';
41 requires 'MooseX::Types';
42 requires 'namespace::autoclean';
44 requires 'Git::PurePerl' => '0.43';
49 requires 'DateTime::Format::Mail';
50 requires 'File::Copy::Recursive';
51 requires 'File::Which';
52 requires 'HTML::Entities';
54 requires 'List::MoreUtils';
55 requires 'Path::Class' => '0.17';
56 requires 'Sub::Exporter';
57 requires 'Syntax::Highlight::Engine::Kate';
58 requires 'Sys::Hostname';
61 requires 'XML::OPML::SimpleGen';
63 test_requires 'Test::More' => '0.88';
64 test_requires 'Test::utf8' => '0.02';
66 resources bugtracker => 'http://rt.cpan.org/Public/Dist/Display.html?Name=Gitalist';
67 resources repository => 'git://git.shadowcat.co.uk/catagits/Gitalist.git';
71 if ($ENV{GITALIST_RELEASE_TESTING}) {
72 author_tests 't/author';
73 author_requires 'Test::NoTabs';
74 author_requires 'Test::Pod' => '1.14';
75 author_requires 'Test::Pod::Coverage' => '1.04';
78 install_script glob('script/*.pl');
81 if ($Module::Install::AUTHOR && $ENV{GITALIST_RELEASE_TESTING}) {
82 # This is totally gross :)
83 # However, it is also much more effective than Module::Install::ProvidesClass
84 # which a) just does not work very well for us, b) totally won't install from
86 author_requires 'Module::Find';
87 author_requires 'B::Hooks::OP::Check::StashChange';
88 author_requires 'B::Compiling';
90 require B::Hooks::OP::Check::StashChange;
95 my $libdir = "$FindBin::Bin/lib";
100 our $id = B::Hooks::OP::Check::StashChange::register(sub {
101 my ($new, $old) = @_;
102 my $file = B::Compiling::PL_compiling()->file;
103 return unless $file =~ s/^$libdir/lib/;
104 $packages{$new} ||= $file
105 if $new =~ /^Gitalist/;
109 Module::Find::useall(qw/Gitalist/);
114 file => $packages{$_},
115 ${$_.'::VERSION'} ? ( version => $_->VERSION() ) : ()
116 }) for keys %packages;