All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J.H." <warthog9@eaglescrag.net>
To: Sylvain Rabot <sylvain@abstraction.fr>
Cc: Jakub Narebski <jnareb@gmail.com>,
	git@vger.kernel.org,
	"John 'Warthog9' Hawley" <warthog9@kernel.org>,
	Petr Baudis <pasky@suse.cz>,
	Pavan Kumar Sunkara <pavan.sss1991@gmail.com>,
	"Alejandro R. Sedeno" <asedeno@mit.edu>
Subject: Re: [PATCHv2 0/2] gitweb: Beginnings of splitting gitweb into modules
Date: Tue, 23 Aug 2011 13:40:13 -0700	[thread overview]
Message-ID: <4E54102D.8060900@eaglescrag.net> (raw)
In-Reply-To: <1314131735.3120.3.camel@kheops>

Pretty much stalled like most things on gitweb.  I've been knee deep in
a lot of GSoC stuff, conferences and dealing with kernel bugs and Jakub
has been busy on other things so we haven't had a solid head bashing
session to get this all worked out yet.

Maybe while I'm over in Prague / Europe for KS & Linuxcon we can hash
things out.

- John 'Warthog9' Hawley

On 08/23/2011 01:35 PM, Sylvain Rabot wrote:
> Hi,
> 
> Just wanted to know what is the current status of splitting gitweb
> sources into modules.
> 
> Regards.
> 
> On Tue, 2011-05-03 at 16:04 +0200, Jakub Narebski wrote:
>> Gitweb is currently next to largest file (after gitk) in git sources,
>> more than 225KB with more than 7,000 lines.  Therefore adding any
>> large feature that would require large amount of code added, like
>> gitweb caching by J.H. and my rewrite of it, or "gitweb admin/write"
>> [failed] GSoC 2010 project by Pavan Kumar Sunkara, would require for
>> new code to be added as a separate module.  Otherwise gitweb would
>> fast become unmaintainable.
>>
>> Note that there is already patch series sent which as one of side
>> effects splits the JavaScript side of gitweb into many smaller
>> self-contained files:
>>
>>   [PATCH 03/13] gitweb: Split JavaScript for maintability, combining on build
>>   http://thread.gmane.org/gmane.comp.version-control.git/172384/focus=172385
>>
>> Not in all cases splitting gitweb upfront would be required.  At least
>> in the case of gitweb caching it doesn't.  What must be done however
>> is preparing the infrastructure for modular gitweb sources; to
>> properly test such infrastructure we need at least one split gitweb
>> module.  With patch series preparing for splitting or true splitting of
>> gitweb sent upfront the future patch series that implements
>> code-extensive feature (like e.g. output caching) would be smaller and
>> easier to review.
>>
>>
>> This series is intended to bring such infrastructure to gitweb, to
>> prepare way for adding output caching to gitweb. Alternatively it can
>> be thought as beginning of splitting gitweb into smaller submodules,
>> for better maintainability.
>>
>> This patch series was sent to git mailing list as
>>
>>   [PATCH 0/2] gitweb: Begin splitting gitweb
>>   http://thread.gmane.org/gmane.comp.version-control.git/165824
>>
>> In the above mentioned first version of this series, the first patch
>> that prepared the way for splitting gitweb was in three versions: A, B
>> and C.  In this second version of this series the first patch in
>> series most closely resembles version C in v1 series.
>>
>> In this version gitweb uses _both_ 'use lib __DIR__."/lib";' and
>> 'use lib "++GITWEBLIBDIR++";', in correct order (as compared to
>> version C of v1 series), so that __DIR__."/lib" is checked first,
>> i.e. modules installed alongside gitweb.cgi win.
>>
>> Pull request:
>> ~~~~~~~~~~~~~
>> This series is available in the git repository at:
>>   git://repo.or.cz/git/jnareb-git.git gitweb/split
>>   git://github.com/jnareb/git.git gitweb/split
>>
>> Well, those patches has a few minor cosmetic fixups...
>>
>> Table of contents:
>> ~~~~~~~~~~~~~~~~~~
>> * [PATCHv2 1/2] gitweb: Prepare for splitting gitweb
>>   [PATCHv2 2/2] gitweb: Create Gitweb::Util module
>>
>>   First patch implements infrastructure, second proof of concept patch uses
>>   this infrastructure, testing it ("make -C gitweb test-installed").
>>
>> Shortlog:
>> ~~~~~~~~~
>> Jakub Narebski (1):
>>   gitweb: Prepare for splitting gitweb
>>
>> Pavan Kumar Sunkara (1):
>>   gitweb: Create Gitweb::Util module
>>
>> Diffstat:
>> ~~~~~~~~~
>>  gitweb/INSTALL            |    7 ++
>>  gitweb/Makefile           |   23 ++++++-
>>  gitweb/gitweb.perl        |  151 ++++-----------------------------------
>>  gitweb/lib/Gitweb/Util.pm |  177 +++++++++++++++++++++++++++++++++++++++++++++
>>  4 files changed, 219 insertions(+), 139 deletions(-)
>>  create mode 100755 gitweb/lib/Gitweb/Util.pm
>>
> 

  reply	other threads:[~2011-08-23 20:42 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-03 14:04 [PATCHv2 0/2] gitweb: Beginnings of splitting gitweb into modules Jakub Narebski
2011-05-03 14:04 ` [PATCHv2 1/2 (RFC?)] gitweb: Prepare for splitting gitweb Jakub Narebski
2011-05-03 14:04 ` [PATCHv2 2/2 (PoC)] gitweb: Create Gitweb::Util module Jakub Narebski
2011-08-23 20:35 ` [PATCHv2 0/2] gitweb: Beginnings of splitting gitweb into modules Sylvain Rabot
2011-08-23 20:40   ` J.H. [this message]
2011-08-24  2:17     ` Pavan Kumar Sunkara

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4E54102D.8060900@eaglescrag.net \
    --to=warthog9@eaglescrag.net \
    --cc=asedeno@mit.edu \
    --cc=git@vger.kernel.org \
    --cc=jnareb@gmail.com \
    --cc=pasky@suse.cz \
    --cc=pavan.sss1991@gmail.com \
    --cc=sylvain@abstraction.fr \
    --cc=warthog9@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.