Bump version for first real release.
[catagits/Gitalist.git] / lib / Gitalist.pm
1 package Gitalist;
2 use Moose;
3 BEGIN { require 5.008006; }
4 use Catalyst::Runtime 5.80;
5 use namespace::autoclean;
6
7 extends 'Catalyst';
8
9 use Catalyst qw/
10                 ConfigLoader
11                 Unicode::Encoding
12                 Static::Simple
13                 StackTrace
14 /;
15
16 our $VERSION = '0.000001';
17 $VERSION = eval $VERSION;
18
19 __PACKAGE__->config(
20     name => 'Gitalist',
21     default_view => 'Default',
22     default_model => 'GitRepos',
23 );
24
25 __PACKAGE__->setup();
26
27 around uri_for => sub {
28   my ($orig, $c) = (shift, shift);
29   my $project_name = $c->stash->{'Project'} && $c->stash->{'Project'}->name;
30   my $hash = ref($_[-1]) eq 'HASH' ? pop @_ : {};
31   my $params = Catalyst::Utils::merge_hashes(
32     { p => $hash->{p} || $project_name },
33     $hash,
34   );
35   delete $params->{p} unless defined $params->{p} && length $params->{p};
36   (my $uri = $c->$orig(@_, $params))
37     =~ tr[&][;];
38   return $uri;
39 };
40
41 1;
42
43 __END__
44
45 =head1 NAME
46
47 Gitalist - A modern git web viewer
48
49 =head1 SYNOPSIS
50
51     script/gitalist_server.pl
52
53 =head1 INSTALL
54
55 As Gitalist follows the usual Perl module format the usual approach
56 for installation should work e.g
57
58   perl Makefile.PL
59   make
60   make test
61   make install
62
63 If you're running a git checkout of Gitalist then you'll additionally
64 need the author modules.
65
66 =head1 DESCRIPTION
67
68 Gitalist is a web frontend for git repositories based on gitweb.cgi
69 and backed by Catalyst.
70
71 =head2 History
72
73 This project started off as an attempt to port gitweb.cgi to a
74 Catalyst app in a piecemeal fashion. As it turns out, thanks largely
75 to Florian Ragwitz's earlier effort, it was easier to use gitweb.cgi
76 as a template for building a new Catalyst application.
77
78 =head1 SEE ALSO
79
80 L<Gitalist::Controller::Root>
81
82 L<Gitalist::Git::Project>
83
84 L<Catalyst>
85
86 =head1 AUTHORS AND COPYRIGHT
87
88   Catalyst application:
89     (C) 2009 Venda Ltd and Dan Brook <broq@cpan.org>
90     (C) 2009, Tom Doran <bobtfish@bobtfish.net>
91     (C) 2009, Zac Stevens <zts@cryptocracy.com>
92
93   Original gitweb.cgi from which this was derived:
94     (C) 2005-2006, Kay Sievers <kay.sievers@vrfy.org>
95     (C) 2005, Christian Gierke
96
97   Model based on http://github.com/rafl/gitweb
98     (C) 2008, Florian Ragwitz
99
100 =head1 LICENSE
101
102 Licensed under GNU GPL v2
103
104 =cut