UNIVERSAL methods are now part of the MOP
[gitmo/Moose.git] / inc / RequireAuthorDeps.pm
CommitLineData
b7838518 1package inc::RequireAuthorDeps;
2
b5ae7c00 3use Class::Load qw(load_class);
b7838518 4use Moose;
5
6use Try::Tiny;
7
8with 'Dist::Zilla::Role::BeforeRelease';
9
10sub before_release {
11 my $self = shift;
12
13 $self->log("Ensuring all author dependencies are installed");
14 my $req = Version::Requirements->new;
15 my $prereqs = $self->zilla->prereqs;
16
17 for my $phase (qw(build test configure runtime develop)) {
18 $req->add_requirements($prereqs->requirements_for($phase, 'requires'));
19 }
20
21 for my $mod (grep { $_ ne 'perl' } $req->required_modules) {
b5ae7c00 22 load_class($mod);
b7838518 23 }
24}
25
261;