Recursively scan Perl code for dependencies
This module scans potential modules used by perl programs, and returns a
hash reference; its keys are the module names as appears in '%INC' (e.g.
'Test/More.pm'); the values are hash references with this structure:
{
file => '/usr/local/lib/perl5/5.8.0/Test/More.pm',
key => 'Test/More.pm',
type => 'module', # or 'autoload', 'data', 'shared'
used_by => [ 'Test/Simple.pm', ... ],
uses => [ 'Test/Other.pm', ... ],
}
One function, 'scan_deps', is exported by default. Other functions such as
('scan_line', 'scan_chunk', 'add_deps', 'path_to_inc_name') are exported
upon request.
Users of *App::Packer* may also use this module as the dependency-checking
frontend, by tweaking their _p2e.pl_ like below:
use Module::ScanDeps;
...
my $packer = App::Packer->new( frontend => 'Module::ScanDeps' );
...
Please see the App::Packer::Frontend manpage for detailed explanation on
the structure returned by 'get_files'.
- Developed at devel:languages:perl
- Sources inherited from project openSUSE:Factory
-
2
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Factory:PowerPC/perl-Module-ScanDeps && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
Module-ScanDeps-1.05.tar.gz | 0000058311 56.9 KB | |
perl-Module-ScanDeps.changes | 0000002855 2.79 KB | |
perl-Module-ScanDeps.spec | 0000001880 1.84 KB |
Revision 4 (latest revision is 34)
- update to 1.05: * RT#72082: $FindBin::Bin issue on Moduel::ScanDeps 1.04: make FindBin work (at least with option -c or -x) by spoofing $0 in the temp script generated for M:SD::DataFeed * RT #70134: patch suggestions for Module::ScanDeps 1.04: additional preload rules, used_via_preload attribute; add suggested %Preload rules * add %Preload rules for MozRepl * special case for Package::Stash * special case for Moose - changes from 1.04: * brown paper bag bug: fix option -x (execute) (broken by changes for -c) * honor option -I with -c - changes from 1.03: * RT#69213: ScanDeps incompatible with AnyEvent (Perl 5.14, AnyEvent 5.34, PAR 1.00.2); for option -c (compile) M:SD used to wrap the file in one big sub and appended an END block where it dumps %INC etc; the outer sub causes problems with certain contructs; instead we now use an INIT block prepended to the file * RT #69471: problem with "eval { require SomeModule }" constructions Module::ScanDeps::DataFeed now omits %INC pairs with an undefined value (these may be created by an unsuccessful "require" under certain conditions); also omit CODE refs from @INC * simplify Module::ScanDeps::DataFeed somewhat by localizing %INC around "require Module::ScanDeps::DataFeed" and by using Data::Dumper for the actual dump * don't create the tempfiles for DataFeed in the working directory
Comments 0