r339 - in branches/rewrite: . src

Otavio Salvador partial-mirror-devel@lists.alioth.debian.org
Wed, 17 Nov 2004 09:34:40 -0700


Author: otavio
Date: Wed Nov 17 09:34:38 2004
New Revision: 339

Modified:
   branches/rewrite/   (props changed)
   branches/rewrite/src/PackageList.py
Log:
 r314@nurf:  otavio | 2004-11-17T16:33:31.407743Z
 Check Pre-Depends also.


Modified: branches/rewrite/src/PackageList.py
==============================================================================
--- branches/rewrite/src/PackageList.py	(original)
+++ branches/rewrite/src/PackageList.py	Wed Nov 17 09:34:38 2004
@@ -122,35 +122,36 @@
 
     def resolveDepends(self, pkglist):
         for p in self.values():
-            if p.has_key('Depends'):
-                for dependencies in p['Depends']:
-                    for pkg, ver, oper in dependencies:
-                        # We already have it included
-                        if pkg in self:
-                            break
+            for field in ('Depends', 'Pre-Depends'):
+                if p.has_key(field):
+                    for dependencies in p[field]:
+                        for pkg, ver, oper in dependencies:
+                            # We already have it included
+                            if pkg in self:
+                                break
+
+                            # We have it on full list
+                            # TODO: Add version cheking
+                            if pkg in pkglist:
+                                self.add(pkglist[pkg])
+                                break
 
-                        # We have it on full list
-                        # TODO: Add version cheking
-                        if pkg in pkglist:
-                            self.add(pkglist[pkg])
-                            break
-                            
-                        # When a package is not found, we should look
-                        # if it's not a virtual package
-                        found = False
-                        if pkglist._provides.has_key(pkg):
-                            for vpkg in pkglist._provides[pkg]:
-                                if vpkg['Package'] in self:
+                            # When a package is not found, we should look
+                            # if it's not a virtual package
+                            found = False
+                            if pkglist._provides.has_key(pkg):
+                                for vpkg in pkglist._provides[pkg]:
+                                    if vpkg['Package'] in self:
+                                        found = True
+                                        break
+                                else:
+                                    self.add(pkglist._provides[pkg][0])
                                     found = True
                                     break
-                            else:
-                                self.add(pkglist._provides[pkg][0])
-                                found = True
-                                break
-                            if found:
-                                break
-                    else:
-                        print pkg, "unavailable. Your mirror could be broken seriously."
+                                if found:
+                                    break
+                        else:
+                            print pkg, "unavailable. Your mirror could be broken seriously."
                         
     def filter(self, condition):
         packages = PackageList()