Re: [PATCHv2 0/2] gitweb: Beginnings of splitting gitweb into modules
- From
Pavan Kumar Sunkara <pavan.sss1991@gmail.com>
- Date
- Aug 24, 2011, 02:17 UTC
- Message-ID
- <CAK9CXBUsEN=avE1c=RvLVf5ws9B6rZ4tP=gyaWpOPQa=y0qZAw@mail.gmail.com>
- In-Reply-To
- <4E54102D.8060900@eaglescrag.net>
I can try to restart it. I had a lot of health issues last year, But I am free now to finish this series.
On Wed, Aug 24, 2011 at 2:10 AM, J.H. <warthog9@eaglescrag.net> wrote:
Show 100 quoted lines
> 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
>>>
>>
>
>-- - Pavan Kumar Sunkara