import p5-SVN-Web-0.30pre0.40.
SVN::Web is a repository browser for Subversion, similar to cvsweb and ViewCVS. This is a snapshot from the SVN::Web Subversion repository; it is *NOT* a stable release.
This commit is contained in:
parent
936f0a36ca
commit
cb5169903b
12 changed files with 223 additions and 0 deletions
5
www/p5-SVN-Web/DESCR
Normal file
5
www/p5-SVN-Web/DESCR
Normal file
|
@ -0,0 +1,5 @@
|
|||
SVN::Web is a repository browser for Subversion, similar to cvsweb
|
||||
and ViewCVS.
|
||||
|
||||
This is a snapshot from the SVN::Web Subversion repository; it is
|
||||
*NOT* a stable release.
|
21
www/p5-SVN-Web/Makefile
Normal file
21
www/p5-SVN-Web/Makefile
Normal file
|
@ -0,0 +1,21 @@
|
|||
# $NetBSD: Makefile,v 1.1.1.1 2003/12/03 16:13:28 epg Exp $
|
||||
|
||||
DISTNAME= SVN-Web-0.30
|
||||
PKGNAME= p5-${DISTNAME}pre0.40
|
||||
CATEGORIES= perl5 www
|
||||
MASTER_SITES= ${MASTER_SITE_PERL_CPAN:=OurNet/CLKAO/}
|
||||
|
||||
MAINTAINER= epg@NetBSD.org
|
||||
COMMENT= Unstable snapshot of Subversion repository browser
|
||||
|
||||
DEPENDS+= p5-subversion>=0.32.1:../../devel/p5-subversion
|
||||
DEPENDS+= p5-Template-Toolkit-2.10:../../www/p5-Template-Toolkit
|
||||
DEPENDS+= p5-Text-Diff-0.35:../../textproc/p5-Text-Diff
|
||||
DEPENDS+= p5-XML-RSS-0.97:../../textproc/p5-XML-RSS
|
||||
DEPENDS+= p5-YAML-0.35:../../textproc/p5-YAML
|
||||
|
||||
USE_BUILDLINK2= YES
|
||||
PERL5_PACKLIST= ${PERL5_SITEARCH}/auto/SVN/Web/.packlist
|
||||
|
||||
.include "../../lang/perl5/module.mk"
|
||||
.include "../../mk/bsd.pkg.mk"
|
1
www/p5-SVN-Web/PLIST
Normal file
1
www/p5-SVN-Web/PLIST
Normal file
|
@ -0,0 +1 @@
|
|||
@comment $NetBSD: PLIST,v 1.1.1.1 2003/12/03 16:13:28 epg Exp $
|
12
www/p5-SVN-Web/distinfo
Normal file
12
www/p5-SVN-Web/distinfo
Normal file
|
@ -0,0 +1,12 @@
|
|||
$NetBSD: distinfo,v 1.1.1.1 2003/12/03 16:13:28 epg Exp $
|
||||
|
||||
SHA1 (SVN-Web-0.30.tar.gz) = cc75b148e1fa85e376196c5473902ecda763ffab
|
||||
Size (SVN-Web-0.30.tar.gz) = 7618 bytes
|
||||
SHA1 (patch-aa) = 77e92b20bed275b1dca8e2b633b444fb3ed863af
|
||||
SHA1 (patch-ab) = 8c46db661e3f35afd8315f2935a477d25e9fe1be
|
||||
SHA1 (patch-ac) = 4284f1ce3b51633f9515e496bba589bacdc24b45
|
||||
SHA1 (patch-ad) = 4a13e80551392246e6959fa7bd4168f2dacf6e47
|
||||
SHA1 (patch-ae) = 95343451488441b216d984dec317ee1f4a6ce977
|
||||
SHA1 (patch-af) = 7c826222781ac137cad7a10df8cff47bb52f0223
|
||||
SHA1 (patch-ag) = df794f7576c3c0c16a369f6163be6c22b49e31e1
|
||||
SHA1 (patch-ah) = 7ffa3d538e33d44d166c37fb334d6b1210932058
|
13
www/p5-SVN-Web/patches/patch-aa
Normal file
13
www/p5-SVN-Web/patches/patch-aa
Normal file
|
@ -0,0 +1,13 @@
|
|||
$NetBSD: patch-aa,v 1.1.1.1 2003/12/03 16:13:28 epg Exp $
|
||||
|
||||
--- lib/SVN/Web.pm.orig Wed Aug 27 01:54:11 2003
|
||||
+++ lib/SVN/Web.pm
|
||||
@@ -170,7 +170,7 @@ sub handler {
|
||||
$repos =~ s/^$base// or die "path $repos not inside base $base";
|
||||
return &Apache::FORBIDDEN unless $repos;
|
||||
|
||||
- my $script = $1 if $r->uri =~ m|^((?:/\w+)+)/$repos| or die "can't find script";
|
||||
+ $script = $1 if $r->uri =~ m|^((?:/\w+)+)/$repos| or die "can't find script";
|
||||
chdir ($base);
|
||||
$pool ||= SVN::Pool->new_default;
|
||||
$config ||= load_config ('config.yaml');
|
22
www/p5-SVN-Web/patches/patch-ab
Normal file
22
www/p5-SVN-Web/patches/patch-ab
Normal file
|
@ -0,0 +1,22 @@
|
|||
$NetBSD: patch-ab,v 1.1.1.1 2003/12/03 16:13:28 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/Branch.pm.orig Tue Aug 26 05:26:55 2003
|
||||
+++ lib/SVN/Web/Branch.pm
|
||||
@@ -44,7 +44,7 @@ sub new {
|
||||
|
||||
sub branchto {
|
||||
my ($self, $path, $rev) = @_;
|
||||
- my @branches = grep { $path =~ m|^$_/?| }
|
||||
+ my @branches = grep { "$_/" eq substr ($path, 0, length($_)+1) }
|
||||
keys %{$self->{BRANCHINFO}{src}};
|
||||
|
||||
my $ret;
|
||||
@@ -69,7 +69,7 @@ sub branchto {
|
||||
|
||||
sub branchfrom {
|
||||
my ($self, $path, $rev) = @_;
|
||||
- my @branches = grep { $path =~ m|^$_/?| }
|
||||
+ my @branches = grep { "$_/" eq substr ($path, 0, length($_)+1) }
|
||||
keys %{$self->{BRANCHINFO}{dst}};
|
||||
|
||||
my $ret;
|
39
www/p5-SVN-Web/patches/patch-ac
Normal file
39
www/p5-SVN-Web/patches/patch-ac
Normal file
|
@ -0,0 +1,39 @@
|
|||
$NetBSD: patch-ac,v 1.1.1.1 2003/12/03 16:13:29 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/Browse.pm.orig Tue Aug 26 10:33:17 2003
|
||||
+++ lib/SVN/Web/Browse.pm
|
||||
@@ -19,24 +19,24 @@ sub run {
|
||||
my $rev = $self->{cgi}->param('rev') || $fs->youngest_rev;
|
||||
my $root = $fs->revision_root ($rev);
|
||||
|
||||
- my $kind = SVN::Fs::check_path ($root, $self->{path});
|
||||
+ my $kind = $root->check_path ($self->{path});
|
||||
|
||||
- die "path does not exist" if $kind == $SVN::Core::node_none;
|
||||
+ die "path does not exist" if $kind == $SVN::Node::none;
|
||||
|
||||
- die "not a directory in browse" unless $kind == $SVN::Core::node_dir;
|
||||
+ die "not a directory in browse" unless $kind == $SVN::Node::dir;
|
||||
|
||||
my $entries = [ map {{ name => $_->name,
|
||||
kind => $_->kind,
|
||||
- isdir => ($_->kind == $SVN::Core::node_dir),
|
||||
- }} values %{SVN::Fs::dir_entries ($root, $self->{path})}];
|
||||
+ isdir => ($_->kind == $SVN::Node::dir),
|
||||
+ }} values %{$root->dir_entries ($self->{path})}];
|
||||
|
||||
for (@$entries) {
|
||||
- $_->{rev} = SVN::Repos::revisions_changed
|
||||
- ($fs, $self->{path}.'/'.$_->{name}, 0, $rev, 0)->[0];
|
||||
+ $_->{rev} = ($fs->revision_root ($rev)->node_history
|
||||
+ ($self->{path}.'/'.$_->{name})->prev(0)->location)[1];
|
||||
$_->{size} = $_->{isdir} ? '' :
|
||||
- SVN::Fs::file_length ($root, $self->{path}.'/'.$_->{name});
|
||||
- $_->{type} = SVN::Fs::node_prop ($root, $self->{path}.$_->{name},
|
||||
- 'svn:mime-type') unless $_->{isdir};
|
||||
+ $root->file_length ($self->{path}.'/'.$_->{name});
|
||||
+ $_->{type} = $root->node_prop ($self->{path}.$_->{name},
|
||||
+ 'svn:mime-type') unless $_->{isdir};
|
||||
$_->{type} =~ s|/\w+|| if $_->{type};
|
||||
|
||||
}
|
22
www/p5-SVN-Web/patches/patch-ad
Normal file
22
www/p5-SVN-Web/patches/patch-ad
Normal file
|
@ -0,0 +1,22 @@
|
|||
$NetBSD: patch-ad,v 1.1.1.1 2003/12/03 16:13:29 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/Checkout.pm.orig Tue Aug 26 02:26:30 2003
|
||||
+++ lib/SVN/Web/Checkout.pm
|
||||
@@ -19,13 +19,12 @@ sub run {
|
||||
my $rev = $self->{cgi}->param('rev') || $fs->youngest_rev;
|
||||
my $root = $fs->revision_root ($rev);
|
||||
|
||||
- die "not a file" unless SVN::Fs::check_path ($root, $self->{path})
|
||||
- == $SVN::Core::node_file;
|
||||
+ die "not a file" unless $root->is_file ($self->{path});
|
||||
|
||||
- my $file = SVN::Fs::file_contents ($root, $self->{path});
|
||||
+ my $file = $root->file_contents ($self->{path});
|
||||
local $/;
|
||||
- return {mimetype => SVN::Fs::node_prop ($root, $self->{path},
|
||||
- 'svn:mime-type') ||'text/plain',
|
||||
+ return {mimetype => $root->node_prop ($self->{path},
|
||||
+ 'svn:mime-type') ||'text/plain',
|
||||
body => <$file>};
|
||||
}
|
||||
1;
|
29
www/p5-SVN-Web/patches/patch-ae
Normal file
29
www/p5-SVN-Web/patches/patch-ae
Normal file
|
@ -0,0 +1,29 @@
|
|||
$NetBSD: patch-ae,v 1.1.1.1 2003/12/03 16:13:29 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/Diff.pm.orig Tue Aug 26 07:15:37 2003
|
||||
+++ lib/SVN/Web/Diff.pm
|
||||
@@ -21,19 +21,19 @@ sub run {
|
||||
my $rev2 = $self->{cgi}->param('rev2');
|
||||
|
||||
my $root1 = $fs->revision_root ($rev1);
|
||||
- my $kind = SVN::Fs::check_path ($root1, $self->{path});
|
||||
+ my $kind = $root1->check_path ($self->{path});
|
||||
|
||||
- die "path does not exist" if $kind == $SVN::Core::node_none;
|
||||
+ die "path does not exist" if $kind == $SVN::Node::none;
|
||||
# TODO: a diff editor using SVN::Editor::Simple
|
||||
- die "directory diff not implemented yet" if $kind == $SVN::Core::node_dir;
|
||||
+ die "directory diff not implemented yet" if $kind == $SVN::Node::dir;
|
||||
|
||||
my $root2 = $fs->revision_root ($rev2);
|
||||
|
||||
# TODO: different type of presentation, download, etc
|
||||
return { mimetype => 'text/plain',
|
||||
body => Text::Diff::diff
|
||||
- (SVN::Fs::file_contents($root1, $self->{path}),
|
||||
- SVN::Fs::file_contents($root2, $self->{path}),
|
||||
+ ($root1->file_contents ($self->{path}),
|
||||
+ $root2->file_contents ($self->{path}),
|
||||
{ STYLE => "Unified" })
|
||||
};
|
||||
}
|
16
www/p5-SVN-Web/patches/patch-af
Normal file
16
www/p5-SVN-Web/patches/patch-af
Normal file
|
@ -0,0 +1,16 @@
|
|||
$NetBSD: patch-af,v 1.1.1.1 2003/12/03 16:13:29 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/Log.pm.orig Tue Aug 26 10:17:16 2003
|
||||
+++ lib/SVN/Web/Log.pm
|
||||
@@ -27,9 +27,8 @@ sub run {
|
||||
$self->{repos}->get_logs ([$self->{path}], $fs->youngest_rev, 0, 0, 0,
|
||||
sub { $self->_log(@_)});
|
||||
return {template => 'log',
|
||||
- data => { isdir => (SVN::Fs::check_path
|
||||
- ($fs->revision_root ($fs->youngest_rev),
|
||||
- $self->{path}) == $SVN::Core::node_dir),
|
||||
+ data => { isdir => ($fs->revision_root ($fs->youngest_rev)->
|
||||
+ is_dir($self->{path})),
|
||||
revs => $self->{REVS},
|
||||
branchpoints => $self->{branch}->branchpoints ($self->{path}),
|
||||
}};
|
13
www/p5-SVN-Web/patches/patch-ag
Normal file
13
www/p5-SVN-Web/patches/patch-ag
Normal file
|
@ -0,0 +1,13 @@
|
|||
$NetBSD: patch-ag,v 1.1.1.1 2003/12/03 16:13:29 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/RSS.pm.orig Tue Aug 26 10:53:02 2003
|
||||
+++ lib/SVN/Web/RSS.pm
|
||||
@@ -9,7 +9,7 @@ sub run {
|
||||
my $data = $self->SUPER::run(@_)->{data};
|
||||
|
||||
my $rss = new XML::RSS (version => '1.0');
|
||||
- my $url = "http://$ENV{HTTP_HOST}$ENV{SCRIPT_NAME}/$self->{reposname}";
|
||||
+ my $url = "http://$ENV{HTTP_HOST}$self->{script}/$self->{reposname}";
|
||||
|
||||
$rss->channel(title => "subversion revisions of $self->{path}",
|
||||
link => "$url/log$self->{path}",
|
30
www/p5-SVN-Web/patches/patch-ah
Normal file
30
www/p5-SVN-Web/patches/patch-ah
Normal file
|
@ -0,0 +1,30 @@
|
|||
$NetBSD: patch-ah,v 1.1.1.1 2003/12/03 16:13:29 epg Exp $
|
||||
|
||||
--- lib/SVN/Web/Revision.pm.orig Tue Aug 26 13:31:16 2003
|
||||
+++ lib/SVN/Web/Revision.pm
|
||||
@@ -16,7 +16,6 @@ sub _log {
|
||||
my ($self, $paths, $rev, $author, $date, $msg, $pool) = @_;
|
||||
my $data = {rev => $rev, author => $author,
|
||||
date => $date, msg => $msg};
|
||||
-
|
||||
$data->{paths} = {map { $_ => {action => $paths->{$_}->action,
|
||||
copyfrom => $paths->{$_}->copyfrom_path,
|
||||
copyfromrev => $paths->{$_}->copyfrom_rev,
|
||||
@@ -24,7 +23,7 @@ sub _log {
|
||||
my $root = $self->{repos}->fs->revision_root ($rev, $pool);
|
||||
for (keys %{$data->{paths}}) {
|
||||
$data->{paths}{$_}{isdir} = 1
|
||||
- if SVN::Fs::check_path ($root, $_) == $SVN::Core::node_dir;
|
||||
+ if $data->{paths}{$_}{action} eq 'D' || $root->is_dir ($_);
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
@@ -55,7 +54,7 @@ revision [% rev %] - [% author || '(no a
|
||||
[% FOREACH path = paths %]
|
||||
[% path.value.action %] -
|
||||
[% IF path.value.isdir %]
|
||||
-<a href="[% script %]/[% repos %]/browse[% path.key %]?rev=[% rev %]">[% path.key %]</a>
|
||||
+<a href="[% script %]/[% repos %]/browse[% path.key %]/?rev=[% rev %]">[% path.key %]</a>
|
||||
[% IF path.value.copyfrom %]
|
||||
(from
|
||||
<a href="[% script %]/[% repos %]/browse[% path.value.copyfrom %]/?rev=[% path.value.copyfromrev %]">[% path.value.copyfrom %]:[% path.value.copyfromrev %]</a>
|
Loading…
Reference in a new issue