[ Mini Kiebo ]
Server: Windows NT DESKTOP-5B8S0D4 6.2 build 9200 (Windows 8 Professional Edition) i586
Path:
D:
/
0xampp
/
perl
/
bin
/
[
Home
]
File: scan-perl-prereqs-nqlite
#!perl BEGIN { pop @INC if $INC[-1] eq '.' } use strict; use warnings; use lib (); use Perl::PrereqScanner::NotQuiteLite::App; use Getopt::Long; use Pod::Usage; GetOptions(\my %opts, qw/ inc|lib|I=s@ libs|scan_also|scan-also|also=s@ parsers|parser=s@ version help json cpanfile save_cpanfile|save-cpanfile exclude_core|exclude-core perl_version|perl-version=s allow_test_pms|allow-test-pms features|feature=s@ base_dir|base-dir=s ignore_re|ignore-re=s ignore=s@ private_re|private-re=s private=s@ recommends suggests develop blib use_index|use-index=s perl_minimum_version verbose /); if ($opts{version}) { print "scan-perl-prereqs-nqlite v" . (Perl::PrereqScanner::NotQuiteLite->VERSION || 'DEV') . "\n"; exit; } if ($opts{help}) { pod2usage(-verbose => 1); exit; } lib->import(@{$opts{inc}}) if $opts{inc}; for my $key (keys %opts) { next unless $key =~ /\-/; (my $replaced_key = $key) =~ s/\-/_/g; $opts{$replaced_key} = $opts{$key}; } $opts{print} = 1; Perl::PrereqScanner::NotQuiteLite::App->new(%opts)->run(@ARGV); __END__ =encoding utf-8 =head1 NAME scan-perl-prereqs-nqlite =head1 SYNOPSIS scan-perl-prereqs-nqlite [DIRS|FILES] =head1 DESCRIPTION C<scan-perl-prereqs-nqlite> traverses several files and subdirectories in the current directory with L<File::Find> to collect all C<.pl>, C<.PL>, C<.pm>, C<.t>, C<.psgi> files (as well as all the files in C<scripts?> and C<bin> directories), and prints a single combined list of prerequisites, which should be suitable for piping to C<cpanm> or similar tools. You can also pass files and/or directories to limit files to scan. In this case, however, C<scan-perl-prereqs-nqlite> may fail to exclude modules that should belong to the same distribution. =head1 OPTIONS =over 4 =item version Show the version. =item help Show this help. =item json Print prerequisites as a JSON if L<JSON::PP> is installed. =item cpanfile, save_cpanfile Print prerequisites as C<cpanfile> if L<Module::CPANfile> is installed. If C<safe-cpanfile> is set, create or update C<cpanfile>. =item suggests Print suggestions (C<use>d modules in C<eval>) as well. =item develop Print requirements/suggestions for developers (C<use>d modules in C<xt> and C<author> directories) as well. =item perl_minimum_version May modify required perl version if new language features are used without declaring the required perl version explicitly. =item exclude_core Ignore prerequisites that are bundled with Perl (of 5.008001 by default). This requires L<Module::CoreList> version 2.99 or above. =item perl_version Ignore prerequisites that are bundled with Perl of a specific version. This implies C<exclude-core> as well. =item allow_test_pms Print requirements/suggestions in .pm files that are placed under t/ directory but are not directly used from .t files, too. If Test::Class family is used under t/, this option is implicitly set. =item base_dir Set the base directory from where C<scan-perl-prereqs-nqlite> starts traversing files and directories. =item ignore Set a list of paths C<scan-perl-prereqs-nqlite> should ignore. This is useful when your distribution has a set of OS-specific modules, for example. =item ignore_re You can also specify a regexp instead of a list of paths. If this is set, C<ignore> options are ignored. =item private Set a list of modules C<scan-perl-prereqs-nqlite> should consider private, that is, that are not uploaded to the CPAN. Contrary to the C<ignore> option, which makes the scanner skip scanning the file, this option lets the scanner scan files, and excludes matched prerequisites afterwards. =item private_re You can also specify a regexp instead of a list of modules. If this is set, C<private> options are ignored. =item scan_also Set a list of extra paths C<scan-perl-prereqs-nqlite> should also scan. This is useful when your application/distribution uses an untraditional file layout. =item feature scan-perl-prereqs-nqlite \ --feature name:description:lib/My/Plugin/For/SpecificOS \ --feature name:description:web/lib,web/bin Specify a feature name, a description, and matching paths. =item use_index You can specify an index name of CPAN::Common::Index module (such as "Mirror" or "MetaDB") not to list all the modules of a required distribution. =item blib If this is set, C<scan-perl-prereqs-nqlite> will traverse subdirectories under C<blib> to collect runtime requirements. It may return better results if some of the files are located in some uncommon places and/or some of them are listed in C<no_index>. However, files in C<blib> may be older than the ones under C<lib> etc, and you need to update them by running a make or a C<Build> script before you run C<scan-perl-prereqs-nqlite>. =item parser Set a list of parsers (or parser tags) C<scan-perl-prereqs-nqlite> uses. If this option is not set, the scanner uses C<:installed> parsers by default. =item inc Add a list of additional @INC path C<scan-perl-prereqs-nqlite> looks for private parsers. =item verbose Print verbose messages. =back =head1 AUTHOR Kenichi Ishigaki, E<lt>ishigaki@cpan.orgE<gt> =head1 COPYRIGHT AND LICENSE This software is copyright (c) 2015 by Kenichi Ishigaki. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. =cut