2 # vim: ts=4 sw=4 nowrap
4 # Generate a report of the release-critical bugs for packages
12 my $Version = "BugReport 1.4\nCopyright (C) 1998-2002 Wichert Akkerman <wakkerma\@debian.org>\n";
14 my $statusfile = "status";
15 my $commentsfile = "comments";
16 my $NMUfile = "/debian/home/doogie/public_html/incoming/bugs_closed";
17 $NMUfile = "/debian/home/doogie/chgscan/db/bugs_closed"; # Changed as of request by dark -Joey, 99/11/22
18 $NMUfile = "http://auric.debian.org/~doogie/incoming/bugs_closed"; # Changed as of request by dark -Joey, 99/11/22
28 $0 [-V] [-h] [-H] [-l] [-s] [-d distrib] [-S file] [-C file]
31 -h show some (hopefully) helpful information
32 -H produce HTML output
33 -l list all release-critical bugs
34 -s list bug statistics
35 -t show bugs relevant for testing only
36 -d only list these distributions (comma-separated)
37 -S use different statusfile
38 -C use different commentsfile
43 sub PrintPackageHeader() {
44 my $p = shift; # Package to print
45 my ($name, $email); # Name & email of maintainer
48 print "<div class=\"package\"><pre>";
49 print "<a name=\"$p\"><strong>Package:</strong></a> " . scanlib::wwwname($p);
50 print " ($scanlib::section{$p}).\n";
51 print "<strong>Maintainer:</strong> ";
52 if (defined($scanlib::maintainer{$p})) {
53 if ($scanlib::maintainer{$p} =~ /(.*) <([^>]*)>/) {
54 ($name,$email) = ($1,$2);
55 } elsif ($scanlib::maintainer{$p} =~ /<(.*) \((.*)\)>/) {
56 ($name,$email) = ($1,$2);
57 } elsif ($scanlib::maintainer{$p} =~ /<(.*)>/) {
60 print "$name <<a href=\"http://bugs.debian.org/$email\">$email</A>>\n";
65 print "\nPackage: $p ($scanlib::section{$p})\n";
66 print "Maintainer: " . (defined($scanlib::maintainer{$p}) ? $scanlib::maintainer{$p} : "unknown") . "\n";
70 sub PrintPackageFooter() {
71 my $p = shift; # Package to print
74 print "</pre></div>\n";
79 my $p; # Index variable
80 my $nr; # Current bugnumber
81 my $sect; # BTS-subsection for bugnumber
82 my $header; # Flag if packagename has already been printed
83 my $fontset; # Did we change the font?
85 for my $p (sort {$a->[0] <=> $b->[0]} keys %scanlib::packagelist) {
86 next if (defined $bugcfg::exclude{$p});
89 if (defined $scanlib::comments{$p}) {
90 if ($html && defined($scanlib::comments{$p})) {
91 if ($scanlib::comments{$p} =~ m/^\[REMOVE\]/) {
93 print "<span style=\"color: red\">";
97 &PrintPackageHeader($p);
98 print $scanlib::comments{$p};