From: Sebastian Riedel Date: Thu, 17 Nov 2005 02:39:24 +0000 (+0000) Subject: Updated par helper X-Git-Tag: 5.7099_04~902 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=commitdiff_plain;h=94a6e0e40e4507a79c747bd41cbf9bfecdd58914 Updated par helper --- diff --git a/lib/Catalyst.pm b/lib/Catalyst.pm index 3de67b5..d2235de 100644 --- a/lib/Catalyst.pm +++ b/lib/Catalyst.pm @@ -43,7 +43,7 @@ our $DETACH = "catalyst_detach\n"; require Module::Pluggable::Fast; # Helper script generation -our $CATALYST_SCRIPT_GEN = 13; +our $CATALYST_SCRIPT_GEN = 14; __PACKAGE__->mk_classdata($_) for qw/components arguments dispatcher engine log dispatcher_class diff --git a/lib/Catalyst/Helper.pm b/lib/Catalyst/Helper.pm index f99887b..51039ca 100644 --- a/lib/Catalyst/Helper.pm +++ b/lib/Catalyst/Helper.pm @@ -989,15 +989,21 @@ use Getopt::Long; use Pod::Usage; use Catalyst::PAR; +my $engine = 'CGI'; my $help = 0; +my $par = '[% appprefix %].par'; -GetOptions( 'help|?' => \$help ); +GetOptions( + 'engine=s' => \$engine, + 'help|?' => \$help, + 'par=s' => \$par +); pod2usage(1) if $help; -my $par = Catalyst::PAR->new->package( { - par => $ARGV[0] || '[% appprefix %].par', - engine => $ARGV[1], +Catalyst::PAR->new->package( { + engine => $engine, + par => $par, class => '[% name %]' } ); @@ -1009,10 +1015,12 @@ my $par = Catalyst::PAR->new->package( { =head1 SYNOPSIS -[% appprefix %]_package.pl [par] [engine] +[% appprefix %]_package.pl Options: + -engine engine to use for dependency detection -help display this help and exits + -par name for the par archive Examples: [% appprefix %]_package.pl [% appprefix %].par FastCGI diff --git a/lib/Catalyst/PAR.pm b/lib/Catalyst/PAR.pm index d6ea202..7c4584f 100644 --- a/lib/Catalyst/PAR.pm +++ b/lib/Catalyst/PAR.pm @@ -6,7 +6,6 @@ use FindBin; use IO::File; use File::Spec; use File::Find; -require Catalyst; =head1 NAME @@ -73,6 +72,9 @@ EOF $tmp_file->close; # Create package + local $SIG{__WARN__} = sub { }; + open my $olderr, '>&STDERR'; + open STDERR, '>', File::Spec->devnull; my %opt = ( 'x' => 1, 'n' => 0, 'o' => $par, 'a' => [@files] ); App::Packer::PAR->new( frontend => 'Module::ScanDeps', @@ -81,6 +83,7 @@ EOF backopts => \%opt, args => ['par_test.pl'], )->go; + open STDERR, '>&', $olderr; unlink $par_test; }