git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Sylvain Rabot <sylvain@abstraction.fr>
To: Jakub Narebski <jnareb@gmail.com>
Cc: Sylvain Rabot <sylvain@abstraction.fr>,
	git@vger.kernel.org,
	John 'Warthog9' Hawley <warthog9@eaglescrag.net>,
	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 22:35:35 +0200	[thread overview]
Message-ID: <1314131735.3120.3.camel@kheops> (raw)
In-Reply-To: <1304431450-23901-1-git-send-email-jnareb@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3610 bytes --]

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
> 

-- 
Sylvain Rabot <sylvain@abstraction.fr>

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 490 bytes --]

  parent reply	other threads:[~2011-08-23 20:35 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 ` Sylvain Rabot [this message]
2011-08-23 20:40   ` [PATCHv2 0/2] gitweb: Beginnings of splitting gitweb into modules J.H.
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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=1314131735.3120.3.camel@kheops \
    --to=sylvain@abstraction.fr \
    --cc=asedeno@mit.edu \
    --cc=git@vger.kernel.org \
    --cc=jnareb@gmail.com \
    --cc=pasky@suse.cz \
    --cc=pavan.sss1991@gmail.com \
    --cc=warthog9@eaglescrag.net \
    --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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).