Subject: Re: [PATCH 0/2] gitweb: Add support for running gitweb as FastCGI script

From: Jakub Narebski <[email-masked]>
Date: Tue, 18 May 2010 03:06:25 +0200

On Sun, 16 May 2010, Peter Vereshagin wrote:
> 2010/05/15 15:58:11 +0200 Jakub Narebski <[email-masked]> => To Peter Vereshagin :

> ===
> > >       eval "use Image::Magick;";
> > >       if ($@){
> > > ===
> > > 
> > > are those lemmings wrong?
> > 
> > No they are not.
> 
> so that code is just right, and this:
> ===
> eval( 'use Module;' ); die $@ if $@;
> ===
> 
> is 'Wrong!'. And what is the difference?

Why use

  eval('use Module;'); die $@ if $@;

instead of simply

  use Module;

or, if it is inside conditional,

  require Module; import Module;

or perhaps

  use if ($enable_module) Module;

if you 'die', like default, anyway?
 
> > I don't know if it would be complete replacement for FCGI::Spawn, but from
> > your description of it, using Plack::App::CGIBin middleware (+ plackup +
> > Plack::Handler::FCGI wrapper) could be a valid alternative to it..
> 
> There are some more features those are on by default in FCGI::Spawn if they are
> to be replaced, not sure if I will find them inside that framework.

Note that with Plack::Middleware::Static you can serve static files, like
stylesheets and images, too.

See Plack::Handler::FCGI manpage for details on how to configure FastCGI
backend for a PSGI application.

> > P.S. About Girocco: instead of writing it as set of separate CGI scripts, it
> > could have been instead written as single app, loading its modules ('use
> > lib' would help).
> 
> ... and sharing them with gitweb, right. ;-)

Well, no.  I'd rather the Gitweb::Admin / Girocco to remain
separate... perhaps with gitweb / git as submodule.

-- 
Jakub Narebski
Poland