SYNOPSIS

 use Module::Depends;
 my $deps = Module::Depends->new->dist_dir( '.' )->find_modules;
 print "Our dependencies:\n", Dump $deps->requires;

DESCRIPTION

Module::Depends extracts module dependencies from an unpacked distribution tree.

Module::Depends only evaluates the \s-1META\s0.yml shipped with a distribution. This won't be effective until all distributions ship \s-1META\s0.yml files, so we suggest you take your life in your hands and look at Module::Depends::Intrusive.

METHODS

new

simple constructor

dist_dir

Path where the distribution has been extracted to.

find_modules

scan the \*(C`dist_dir\*(C' to populate \*(C`libs\*(C', \*(C`requires\*(C', \*(C`configure_requires\*(C', \*(C`test_requires\*(C', and \*(C`build_requires\*(C'

libs

an array reference of lib lines

requires

A reference to a hash enumerating the prerequisite modules for this distribution.

configure_requires

A reference to a hash enumerating the prerequisite modules to configure this distribution.

build_requires

A reference to a hash enumerating the modules needed to build the distribution.

error

A reason, if any, for failing to get dependencies.

AUTHOR

Richard Clamp, based on code extracted from the Fotango build system originally by James Duncan and Arthur Bergman.

COPYRIGHT

Copyright 2010, Richard Clamp. Copyright 2004-2008, Fotango.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

RELATED TO Module::Depends…

Module::Depends::Intrusive