# %packagelist - map from packagename to bugreports
# %NMU - map with NMU information
+use lib qw(/org/bugs.debian.org/perl/);
use LWP::UserAgent;
+use Debbugs::MIME qw(decode_rfc1522 encode_rfc1522);
+use Debbugs::Packages;
+use Debbugs::Versions;
+use Debbugs::Status;
+use Fcntl qw(O_RDONLY);
require bugcfg;
sub readcomments() {
for $f (@list) {
next if $exclude{$f}; # Check the list of bugs to skip
- my $bug = readbug("$f.summary");
+ my $bug = Debbugs::Status::read_bug(summary => "$f.summary");
next if (!defined($bug));
$skip=1;
}
# only bother to check the versioning status for the distributions indicated by the tags
- $status_oldstable = getbugstatus($bug, undef, 'oldstable') if ($oldstable_tag);
- $status_stable = getbugstatus($bug, undef, 'stable') if ($stable_tag);
- $status_testing = getbugstatus($bug, undef, 'testing') if ($testing_tag);
- $status_unstable = getbugstatus($bug, undef, 'unstable') if ($unstable_tag);
- $status_experimental = getbugstatus($bug, undef, 'experimental') if ($experimental_tag);
+ $status_oldstable = get_status($f, $bug, 'oldstable') if ($oldstable_tag);
+ $status_stable = get_status($f, $bug, 'stable') if ($stable_tag);
+ $status_testing = get_status($f, $bug, 'testing') if ($testing_tag);
+ $status_unstable = get_status($f, $bug, 'unstable') if ($unstable_tag);
+ $status_experimental = get_status($f, $bug, 'experimental') if ($experimental_tag);
$relinfo = "";
$relinfo .= (($oldstable_tag && $status_oldstable->{'pending'} eq 'pending') ? "O" : "");
# "<A HREF=\"${btsURL}/db/pa/l$name.html\">$name</A>";
}
-1;
+my $_version_cache = {};
+sub get_status() {
+ my ($bugnr, $bug, $dist) = @_;
+ my @versions = Debbugs::Status::getversions($bug->{'package'}, $dist, undef);
+ my @sourceversions = Debbugs::Status::makesourceversions($bug->{'package'}, $dist, @versions);
+
+ return Debbugs::Status::max_buggy(bug => $bugnr,
+ sourceversions => \@sourceversions,
+ found => $bug->{'found_versions'},
+ fixed => $bug->{'fixed_versions'},
+ version_cache => $_version_cache,
+ package => $bug->{'package'});
+}
+
+sub check_worry {
+ my ($status) = @_;
+
+ if ($status =~ m/^\[[^]]*I/ or
+ $status =~ m/ \[[^]]*X/ or
+ ($status =~ m/ \[[^]]*[OSUE]/ and $status !~ m/ \[[^]]*T/)) {
+ return 0;
+ }
+ return 1;
+}