my @choices = ( $self->section_choices, $self->action_choices );
$self->_iterate_commits(
sub {
- my $log = shift;
- say "";
+ my ($log, $i, $count) = @_;
+ say "\n### Commit @{[$i+1]} of $count ###";
say "-" x 75;
$self->show_header($log);
$self->show_body($log, 1);
my @choices = ( $self->review_choices, $self->action_choices );
$self->_iterate_commits(
sub {
- my $log = shift;
- say "";
+ my ($log, $i, $count) = @_;
+ say "\n### Commit @{[$i+1]} of $count ###";
say "-" x 75;
$self->show_header($log);
$self->show_notes($log, 1);
my ($self, $fcn) = @_;
my $type = $self->opt('type');
say STDERR "Scanning for $type commits since " . $self->last_tag . "...";
- for my $log ( $self->find_commits($type) ) {
- redo unless $fcn->($log);
+ my $list = [ $self->find_commits($type) ];
+ my $count = @$list;
+ while ( my ($i,$log) = each @$list ) {
+ redo unless $fcn->($log, $i, $count);
}
return 1;
}
my ($self, $log) = @_;
my $header = $log->short_id;
$header .= " " . $log->subject if length $log->subject;
+ $header .= sprintf(' (%s)', $log->author) if $log->author;
say colored( $header, "yellow");
return;
}
sub subject { shift->attr->{subject} }
sub body { shift->attr->{body} }
sub short_id { shift->attr->{short_id} }
+sub author { shift->attr->{author} }
sub from_log {
my ($class, $log) = @_;