]> git.donarmstrong.com Git - bugscan.git/blobdiff - scanlib.pm
Check that a package is really present in a distribution before putting
[bugscan.git] / scanlib.pm
index d8d04671369170e199864544ebb1dd4b634521a4..65adb6312e18fff97c260f87f311071e49436452 100644 (file)
@@ -11,7 +11,6 @@
 #   %maintainer     - map from packagename to maintainer
 #   %section        - map from packagename to section in the FTP-site
 #   %packagelist    - map from packagename to bugreports
 #   %maintainer     - map from packagename to maintainer
 #   %section        - map from packagename to section in the FTP-site
 #   %packagelist    - map from packagename to bugreports
-#   %NMU            - map with NMU information
 
 use lib qw(/org/bugs.debian.org/perl);
 use LWP::UserAgent;
 
 use lib qw(/org/bugs.debian.org/perl);
 use LWP::UserAgent;
@@ -25,7 +24,7 @@ use warnings;
 require bugcfg;
 package scanlib;
 
 require bugcfg;
 package scanlib;
 
-our (%premature,%exclude,%maintainer,%section,%packagelist,%NMU,%debbugssection,%bugs);
+our (%premature,%exclude,%maintainer,%section,%packagelist,%debbugssection,%bugs);
 
 
 # Read the list of maintainer 
 
 
 # Read the list of maintainer 
@@ -201,6 +200,18 @@ sub scanspooldir() {
 
                                next if (!$disttags{$dist});
 
 
                                next if (!$disttags{$dist});
 
+                               # This is needed for now
+                               my $exists = 0;
+                               for my $arch (@bugcfg::architectures) {
+                                       for my $pkg (split /[,\s]+/, $bug->{'package'}) {
+                                               my @versions = Debbugs::Packages::getversions($pkg, $dist, $arch);
+                                               $exists = 1 if (scalar @versions > 0);
+                                       }
+                                       last if $exists;
+                               }
+
+                               next if !$exists;
+
                                my $presence = Debbugs::Status::bug_presence(
                                        bug => $f, 
                                        status => $bug, 
                                my $presence = Debbugs::Status::bug_presence(
                                        bug => $f, 
                                        status => $bug, 
@@ -288,37 +299,6 @@ sub readstatus() {
 }
 
 
 }
 
 
-sub readNMUstatus() {
-       my $bug;       # Number of current bug
-       my $source;    # Source upload which closes this bug.
-       my $version;   # Version where this bug was closed.
-       my $flag;      # Whether this paragraph has been processed.
-       my ($field, $value);
-
-       for (split /\n/, LWP::UserAgent->new->request(HTTP::Request->new(GET => shift))->content) {
-               chomp;
-               if (m/^$/) {
-                       $NMU{$bug} = 1;
-                       $NMU{$bug, "source"} = $source;
-                       $NMU{$bug, "version"} = $version;
-                       $flag = 0;
-               } else {
-                       ($field, $value) = split(/: /, $_, 2);
-                       $bug = $value if($field =~ /bug/i);
-                       $source = $value if($field =~ /source/i);
-                       $version = $value if($field =~ /version/i);
-                       $flag = 1;
-               }
-       }
-       if ($flag) {
-               $NMU{$bug} = 1;
-               $NMU{$bug, "source"} = $source;
-               $NMU{$bug, "version"} = $version;
-       }
-       close P;
-}
-
-
 sub urlsanit {
        my $url = shift;
        $url =~ s/%/%25/g;
 sub urlsanit {
        my $url = shift;
        $url =~ s/%/%25/g;