Web site designer wanted for SVN::Web

Nik Clayton nik at ngo.org.uk
Fri Jun 30 11:09:23 BST 2006

Paul Johnson wrote:
> On Thu, Jun 29, 2006 at 07:52:31AM +0100, Nik Clayton wrote:
>> I'd like SVN::Web[1] to have a new default look and feel.  The current 
>> one[2] is heavily borrowed from trac[3], and while it does the job, it'd be 
>> nice if it had something that was its own.
> May I be extremely lazy and not a little bit cheeky, since I did some
> work on getting SVN::Web to work woth mod_perl2 and never got around to
> forwarding them on to you?

Yes.  As a quid pro quo I may want to take a look conf/httpd.tt in the 
SVN::Web 0.48 distribution and design me one that's going to work with 

> I was just working with SVN::Web today and wanted a couple of things.
> First, I wanted to get the diffs against something other than the
> previous version.

You can do that for individual files.  View the file's revision log, and 
there are checkboxes down the left hand side.  Check the two revisions 
you want to compare and hit the "Compare" button.

> (I actually wanted to do this recursively in a subdirectory.)

My stumbling block for this feature is trying to work out how it would 
work in the UI.

I can see how it might work for directories that are siblings.  For 
example, you're in a tags/ directory, and you want to see the diffs 
between two child directories (e.g., tags/RELEASE_0_47 and 

I'm not sure how it work work elsewhere (e.g., wanting to compare /trunk 
against an arbitrary directory in /branches.

The closest I've got to an approach at the moment (no code, just an 
idea) is to allow the user to 'bookmark' a single directory (stored in a 
cookie), and have a "Compare the current directory to the bookmarked 
directory" button.

If you don't like the sound of that (can't blame you, I'm not overly 
happy with it myself) are there any other Web GUIs that have the feature 
that I can steal^Wlearn from?

> And secondly I wanted to see all the log messages, but
> requesting >= the number of checkins resulted in an empty page.

That's a bug.  As a quick fix, add this to SVN/Web/Log.pm:

   sub _limit {
       my $self = shift;
       my $l    = shift;

       return defined $l ? $l : 20;

Then find all the places in Log.pm where $limit is assigned to (run() 
and cache_key()) and replace the assignments with:

   my $limit = $self->_limit($self->{cgi}->param('limit'));

That should let you specify a limit of '0' to get all the logs.

I'll have this (or something like it) in 0.49.

Longer term I plan to make the log results 'pageable' (like Google 
search results).

> Oh, and it seems that Number::Format (IIRC) is a required dependency,
> but not specified.  Or at least CPAN.pm doesn't automatically install
> it.  I seem to recall looking into this briefly and concluding it was
> not your problem, but you might want to solve it anyway.

Sounds like a dependency problem WRT Template::Plugin::Number::Format. 
I'll add the explicit dependency.

> I realise this is the wrong forum and that the report is rubbish and so
> on, but maybe it gives you something vaguely useful I wouldn't otherwise
> have got around to sending.  Isn't open source wonderful?

It is indeed.

FWIW there's an SVN::Web mailing list now (v. quiet, as I've just 
started it).  http://jc.ngo.org.uk/mailman/listinfo/svnweb for details.


More information about the london.pm mailing list