CPANDEPS(1)

NAME
cpandeps - show a module on the CPAN's dependency tree.

DESCRIPTION
This program is a simple wrapper around CPAN::FindDependencies.

SYNOPSIS
    cpandeps CPAN::FindDependencies

    cpandeps CPAN::FindDependencies perl 5.8.8 cachedir ../foo/bar

    cpandeps --showmoduleversions CPAN::FindDependencies

Given a module name, this program will show you the module's dependency tree. It takes exactly the same arguments as the "finddeps" function of CPAN::FindDependencies, with the exception that "nowarnings" is turned *on* by default.

nowarnings
    Warnings about modules where we can't find their META.yml or Makefile.PL, and so can't divine their pre-requisites, will be suppressed;

fatalerrors
    Failure to get a module's dependencies will be a fatal error instead of merely emitting a warning;

perl
    Use this version of perl to figure out what's in core. If not specified, it defaults to 5.005. Three part version numbers (eg 5.8.8) are supported but discouraged.

02packages
    The location of CPAN.pm's "02packages.details.txt.gz" file as a local filename, with either a relative or an absolute path. If not specified, it is fetched from a CPAN mirror instead. The file is fetched just once.

cachedir
    A directory to use for caching. It defaults to no caching. Even if caching is turned on, this is only for META.yml or Makefile.PL files. 02packages is not cached - if you want to read that from a local disk, see the "02packages" option.

maxdepth
    Cuts off the dependency tree at the specified depth. Your specified module is at depth 0, your dependencies at depth 1, their dependencies at depth 2, and so on.

usemakefilepl
    If set to true, then for any module that doesn't have a META.yml, try to use its Makefile.PL as well. Note that this involves downloading code from the Internet and running it. This obviously opens you up to all kinds of bad juju, hence why it is disabled by default.

recommended
    Adds recommended modules to the list of dependencies, if set to a true value.

configreqs
     Adds modules required for configuration (the 'configure_requires' list in yaml) to the list of dependencies, if set to a true value.

It also takes the following extra parameter, which must be the first one:

--showmoduleversions
    If present, the required version of each module is also shown

It shows the module name, its distribution, and if any warnings were raised (such as if a module's dependencies couldn't be fetched) this is indicated with an asterisk before the module's name.

WARNINGS, BUGS and FEEDBACK
This script has not been thoroughly tested.

I welcome feedback about my code, including constructive criticism. Bug reports should be made on Github or by email.

SEE ALSO
CPAN::FindDependencies

<http://deps.cpantesters.org/>

AUTHOR, LICENCE and COPYRIGHT
Copyright 2007 - 2009 David Cantrell <david@cantrell.org.uk>

This software is free-as-in-speech software, and may be used, distributed, and modified under the terms of either the GNU General Public Licence version 2 or the Artistic Licence. It's up to you which one you use. The full text of the licences can be found in the files GPL2.txt and ARTISTIC.txt, respectively.

CONSPIRACY
This software is also free-as-in-mason.