requires 'Catalyst::Plugin::StackTrace';
requires 'Catalyst::Plugin::Static::Simple';
requires 'Catalyst::Plugin::Unicode::Encoding';
+requires 'Catalyst::Plugin::SubRequest' => '0.15';
requires 'Catalyst::Action::RenderView';
requires 'Catalyst::Component::InstancePerContext';
+requires 'Catalyst::Controller::ActionRole';
+requires 'Catalyst::View::Component::SubInclude' => '0.07';
requires 'Catalyst::View::TT';
+requires 'Try::Tiny';
+ requires 'Catalyst::Action::Serialize';
+
requires 'Template';
requires 'Template::Provider::Encoding';
requires 'Template::Plugin::Cycle';
requires 'Moose';
requires 'Moose::Autobox';
+requires 'MooseX::MultiMethods' => '0.10';
requires 'MooseX::Declare' => '0.32';
+ requires 'MooseX::Types::DateTime';
+ requires 'MooseX::Types::ISO8601';
requires 'MooseX::Types::Common';
requires 'MooseX::Types::Path::Class';
requires 'MooseX::Types';
+ requires 'MooseX::Storage';
-<<<<<<< HEAD
+ requires 'JSON::Any';
-=======
+ requires 'JSON::XS';
->>>>>>> origin/json
requires 'namespace::autoclean';
-requires 'Git::PurePerl' => '0.43';
+requires 'Git::PurePerl' => '0.46';
requires 'aliased';
requires 'CGI';
sub base : Chained('/root') PathPart('') CaptureArgs(0) {
my($self, $c) = @_;
- my $repository = $c->req->param('p');
- if (defined $repository) {
- eval {
- $c->stash(Repository => $c->model('GitRepos')->get_repository($repository));
- };
- if ($@) {
- $c->detach('/error_404');
- }
- }
-
- my $a_repository = $c->stash->{Repository} || $c->model()->repositories->[0];
+ my $git_version = `git --version`;
+ chomp($git_version);
$c->stash(
- git_version => $a_repository->run_cmd('--version'),
+ git_version => $git_version,
version => $Gitalist::VERSION,
+ # XXX Move these to a plugin!
time_since => sub {
return 'never' unless $_[0];
return age_string(time - $_[0]->epoch);
class Gitalist::Git::Repository with Gitalist::Git::HasUtils {
# FIXME, use Types::Path::Class and coerce
use MooseX::Types::Common::String qw/NonEmptySimpleStr/;
- use MooseX::Types::Path::Class qw/Dir/;
use MooseX::Types::Moose qw/Str Maybe Bool HashRef ArrayRef/;
- use Gitalist::Git::Types qw/SHA1/;
+ use MooseX::MultiMethods;
+ use Gitalist::Git::Types qw/SHA1 DateTime Dir/;
use Moose::Autobox;
use List::MoreUtils qw/any zip/;
- use DateTime;
+ use aliased 'DateTime' => 'DT';
use Encode qw/decode/;
use I18N::Langinfo qw/langinfo CODESET/;
use Gitalist::Git::Object::Blob;