App-TimeTracker

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

      equivalent (Thomas Sibley)
    - only report description if --detail desc is set (Thomas Klausner)
    - --detail now takes args (Thomas Klausner)
    - new option to define what RT status to set on tracker start
      (Thomas Klausner)
    - Small typo fix in bin/tracker (Nelo Onyiah)


2.018   2012-11-29T11:10:34+0100
    - use json decoder object (Thomas Klausner)
    - enable proper posting of correctly decoded utf8 (Thomas Klausner)
    - moved RT ticket name ascii-isation into method (Thomas Klausner)
    - honor config value "parent" in project_tree (Thomas Klausner)
    - dynamic 00-load.t (Thomas Klausner)
    - squash a warning (cpan-rt75266) (Thomas Klausner)
    - fix tag sorting (Jozef Kutej)
    - set tracker script STDOUT to utf8 (Jozef Kutej)
    - add description to the detail report (Jozef Kutej)
    - Switch to Digest::SHA (in core since 5.9.3) to reduce external
      deps (Roland Lammel)

lib/App/TimeTracker/Proto.pm  view on Meta::CPAN

has 'config_file_locations' => (
    is         => 'ro',
    isa        => 'HashRef',
    lazy_build => 1,
);

sub _build_config_file_locations {
    my $self = shift;
    my $file = $self->home->file('projects.json');
    if ( -e $file && -s $file ) {
        my $decoded_json;
        try {
            $decoded_json = decode_json( $file->slurp );
        }
        catch {
            error_message( "Could not json decode '%s'.\nError: '%s'", $file, $_ );
            exit 1;
        };
        return $decoded_json;
    }
    else {
        return {};
    }
}

has 'project' => ( is => 'rw', isa => 'Str', predicate => 'has_project' );

has 'json_decoder' => ( is => 'ro', isa => 'JSON::XS', lazy_build => 1 );



( run in 0.673 second using v1.01-cache-2.11-cpan-26ccb49234f )