From 1d97221130ca457ad6aeccd8b7e381860a8db706 Mon Sep 17 00:00:00 2001 From: Don Armstrong Date: Sun, 3 Dec 2017 17:25:22 -0800 Subject: [PATCH] check oldstable bug totals --- bugreport | 14 ++++++++++++-- scanlib.pm | 15 ++++++++++----- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/bugreport b/bugreport index 34ddb6e..1fe0ffa 100755 --- a/bugreport +++ b/bugreport @@ -151,6 +151,7 @@ sub MakeStatistics { $ignoretotal++ if ($scanlib::bugs{$nr}->{$bugcfg::debian_releases->{stable}.'-ignore'} || $scanlib::bugs{$nr}->{$bugcfg::debian_releases->{testing}.'-ignore'}); $worrytotal++ if (scanlib::check_worry($scanlib::bugs{$nr})); $stabletotal++ if (scanlib::check_worry_stable($scanlib::bugs{$nr})); + $oldstabletotal++ if (scanlib::check_worry_oldstable($scanlib::bugs{$nr})); $bugcount++; $count++; @@ -164,6 +165,7 @@ sub MakeStatistics { printf("Number that are being ignored: %d
\n", $ignoretotal); printf("Number concerning the current stable release: %d
\n", $stabletotal); printf("Number concerning the next release: %d

\n", $worrytotal); + printf("Number concerning the previous stable release: %d

\n", $oldstabletotal); } else { print "Total number of release-critical bugs: $bugcount\n"; printf("Number that have a patch: %d\n", $patchtotal); @@ -171,6 +173,7 @@ sub MakeStatistics { printf("Number that are being ignored: %d\n", $ignoretotal); printf("Number concerning the current stable release: %d\n", $stabletotal); printf("Number concerning the next release: %d\n", $worrytotal); + printf("Number concerning the previous stable release: %d\n", $oldstabletotal); } } @@ -196,11 +199,17 @@ sub FilterBugsStable() { $scanlib::packagelist{$p} = [ grep { scanlib::check_worry_stable($scanlib::bugs{$_}) } @{$scanlib::packagelist{$p}} ]; delete $scanlib::packagelist{$p} if (scalar @{$scanlib::packagelist{$p}} == 0); } + +sub FilterBugsOldStable() { + for my $p (sort keys %scanlib::packagelist) { + $scanlib::packagelist{$p} = [ grep { scanlib::check_worry_oldstable($scanlib::bugs{$_}) } @{$scanlib::packagelist{$p}} ]; + delete $scanlib::packagelist{$p} if (scalar @{$scanlib::packagelist{$p}} == 0); + } } -our ($opt_h,$opt_V,$opt_S,$opt_H,$opt_d,$opt_b,$opt_t,$opt_s,$opt_l); +our ($opt_h,$opt_V,$opt_S,$opt_H,$opt_d,$opt_b,$opt_t,$opt_s,$opt_l,$opt_o); -getopts('VhHlsbtd:S:'); +getopts('VhHlsbtod:S:'); ShowUsage if ($opt_h); ShowVersion if ($opt_V); $statusfile=$opt_S if ($opt_S); @@ -211,6 +220,7 @@ scanlib::readstatus($statusfile); FilterPackages($opt_d) if ($opt_d); FilterBugsStable() if ($opt_b); FilterBugs() if ($opt_t); +FilterBugsOldStable() if ($opt_o); MakeStatistics() if ($opt_s); if ($opt_l) { diff --git a/scanlib.pm b/scanlib.pm index 19fda96..4b828a3 100644 --- a/scanlib.pm +++ b/scanlib.pm @@ -327,15 +327,20 @@ sub wwwname { } sub check_worry { - my ($bi) = @_; + my ($bi,$dist) = @_; + $dist = 'testing' if not defined $dist; - return ($bi->{'testing'} && !$bi->{$bugcfg::debian_releases->{testing}.'-ignore'}); + return ($bi->{$dist} && !$bi->{$bugcfg::debian_releases->{$dist}.'-ignore'}); } +sub check_worry_testing { + return check_worry($_[0],'testing'); +} sub check_worry_stable { - my ($bi) = @_; - - return ($bi->{'stable'} && !$bi->{$bugcfg::debian_releases->{stable}.'-ignore'}); + return check_worry($_[0],'stable'); +} +sub check_worry_oldstable { + return check_worry($_[0],'oldstable'); } sub check_worry_unstable { -- 2.39.2