From: Frank Lichtenheld Date: Sun, 16 Mar 2008 11:41:51 GMT Subject: Re: [PATCH] gitweb: Support caching projects list Message-ID: <20080316114151.GZ10103@mail-vs.djpig.de> In-Reply-To: On Sat, Mar 15, 2008 at 02:44:42PM -0700, Jakub Narebski wrote: > Petr Baudis writes: > This could be much simplified with perl-cache (perl-Cache-Cache). > Unfortunately this is non-standard module, not distributed (yet?) > with Perl. I think somebody who actually needs this can be bothered to install a CPAN perl module. This should probably not enabled by default anyway. > Warning: not tested in gitweb! > > + use Cache::FileCache; > + > + my $cache; > + my $projects; > + > + if ($cache_lifetime) { > + $cache = new Cache::FileCache( > + { namespace => 'gitweb', > + default_expires_in => $cache_lifetime > + }); > + $projects = $cache->get('projects_list'); > + } > + if (!defined $projects) { > + $projects = [ git_get_projects_details($projlist, $check_forks); ]; > + $cache->set('projects_list', $projects) > + if defined $cache; > + } Gruesse, -- Frank Lichtenheld www: http://www.djpig.de/