diff options
-rwxr-xr-x | tools/cvslog2changelog.pl | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/tools/cvslog2changelog.pl b/tools/cvslog2changelog.pl index 9bb3b22e4..0da8faa50 100755 --- a/tools/cvslog2changelog.pl +++ b/tools/cvslog2changelog.pl @@ -1,7 +1,11 @@ #!/usr/bin/perl +my %l; +{ +my ($date, $user, $file); +local $_; while (<>) { - if ($e = /^description:/ .. /^={77}/) { + if (my $e = /^description:/ .. /^={77}/) { next if $e == 1 || $e =~ /E0/; if (/^-{28}/ .. /^date: /) { if (/^date: (\S+)\s.*author: (\S+);/) { @@ -14,22 +18,25 @@ while (<>) { $file = $1; } } +} + -foreach $date (reverse sort keys %l) { - foreach $user (sort keys %{$l{$date}}) { +my %users; +foreach my $date (reverse sort keys %l) { + foreach my $user (sort keys %{$l{$date}}) { next if $ENV{AUTHOR} && $ENV{AUTHOR} ne $user; - $fuser = $users{$user} || $user; + my $fuser = $users{$user} || $user; print "$date $fuser\n\n"; my %inv; - while (($file, $log) = each %{$l{$date}{$user}}) { + while (my ($file, $log) = each %{$l{$date}{$user}}) { $log =~ s/^\s+( \*)?//ms; $log =~ s/\s+$//ms; $log = "\n$log" if $log =~ /^-/; push @{$inv{$log}}, $file; } - foreach $log (keys %inv) { - $line = join(', ', @{$inv{$log}}) . ($log !~ /^\(/ && ':') . " $log"; + foreach my $log (keys %inv) { + my $line = join(', ', @{$inv{$log}}) . ($log !~ /^\(/ && ':') . " $log"; print "\t* ", join("\n\t", auto_fill($line, 72)), "\n\n"; } } @@ -65,9 +72,9 @@ BEGIN { 'install' => 'DrakX <install at mandrakesoft.com>', 'prigaux' => 'Pixel <pixel at mandrakesoft.com>', 'flepied' => 'Frederic Lepied <flepied at mandrakesoft.com>', - 'tvignaud' =>'Thierry Vignaud <tvignaud at mandrakesoft.com>', - 'sbenedict'=>'Stew Benedict <sbenedict at mandrakesoft.com>', - 'tkamppeter'=>'Till Kamppeter <till at mandrakesoft.com>', + 'tvignaud' => 'Thierry Vignaud <tvignaud at mandrakesoft.com>', + 'sbenedict' => 'Stew Benedict <sbenedict at mandrakesoft.com>', + 'tkamppeter' => 'Till Kamppeter <till at mandrakesoft.com>', 'daouda' => 'Daouda Lo <daouda at mandrakesoft.com>', 'dchaumette' => 'Damien Chaumette <dchaumette at mandrakesoft.com>', 'warly' => 'Warly <warly at mandrakesoft.com>', |