http://qs321.pair.com?node_id=203163


in reply to robustly list any Perl code's module dependencies

This is a nice trick, but it won't work if the script or or any modules that are loaded do a use lib or unshift @INC

Something like this should work, as long as require is not overriden elsewhere:

package ShowDependencies; use strict; *CORE::GLOBAL::require = \&show_require; sub show_require (;$) { my $module = shift; print STDERR $module, $/; my $retval = eval "CORE::require( $module )"; die $@ if $@; return $retval; } 1;

There is also a module (Module::Dependency) on the CPAN that builds a list of dependencies.

update: added use strict

-- simonflk