X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=bugreport;h=b68a6c65bbba7e644beb68512d177e74b0a9fba9;hb=da9bc4d89556c3c089f33525461c746403532627;hp=ff1b0c77c0cfc40ca966b43dc589b9b9e166f6fb;hpb=5b1d396f8f09c314859583a8f8b96876e043f2cd;p=bugscan.git
diff --git a/bugreport b/bugreport
index ff1b0c7..b68a6c6 100755
--- a/bugreport
+++ b/bugreport
@@ -4,8 +4,10 @@
# Generate a report of the release-critical bugs for packages
use Getopt::Std;
-require scanlib;
-require bugcfg;
+use File::Basename;
+use lib dirname(__FILE__);
+use bugcfg;
+use scanlib;
use strict;
use warnings;
@@ -127,13 +129,14 @@ sub MakeBuglist() {
}
-sub MakeStatistics() {
+sub MakeStatistics {
my $bugcount=0; # Total number of bugs so far
my $patchtotal=0; # Total number of bugs marked patch
my $pendingtotal=0; # Total number of bugs marked pending
my $ignoretotal=0; # Total number of bugs marked ignore
my $worrytotal=0; # Total number of bugs we're actually worried about
my $stabletotal=0; # Total number of bugs affecting stable
+ my $oldstabletotal=0; # Total number of bugs affecting oldstable
my %list; # List of bugnumber associated with package
my %seen_bugs; # bugs which have already been counted
@@ -149,6 +152,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++;
@@ -156,12 +160,13 @@ sub MakeStatistics() {
}
if ($html) {
- print "Total number of release-critical bugs: $bugcount
\n";
+ print "Total number of release-critical bugs: $bugcount
\n";
printf("Number that have a patch: %d
\n", $patchtotal);
printf("Number that have a fix prepared and waiting to upload: %d
\n", $pendingtotal);
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 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); @@ -169,6 +174,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); } } @@ -195,10 +201,16 @@ sub FilterBugsStable() { 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); @@ -209,8 +221,9 @@ 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); +MakeStatistics() if ($opt_s); if ($opt_l) { MakeBuglist(); }