[Piuparts-commits] [SCM] piuparts git repository branch, develop, updated. 0.49-135-g41bea98
Andreas Beckmann
anbe at debian.org
Sun Mar 3 17:22:21 UTC 2013
The following commit has been merged in the develop branch:
commit 41bea98875791c50c52e2566479d8f80ee64d755
Author: Andreas Beckmann <debian at abeckmann.de>
Date: Sun Mar 3 18:05:13 2013 +0100
lib/db: lookup package dependencies recursively
Signed-off-by: Andreas Beckmann <debian at abeckmann.de>
diff --git a/piupartslib/packagesdb.py b/piupartslib/packagesdb.py
index 43de6e8..874b8de 100644
--- a/piupartslib/packagesdb.py
+++ b/piupartslib/packagesdb.py
@@ -393,10 +393,13 @@ class PackagesDB:
more = more[1:]
if dep not in deps:
deps.append(dep)
- if dep in self._packages:
- more += self._packages[dep].dependencies()
- elif dep in self._virtual_packages:
- more += self._packages[self._virtual_packages[dep][0]].dependencies()
+ dep_pkg = self.get_package(dep, recurse=True)
+ if dep_pkg is None:
+ providers = self.get_providers(dep)
+ if providers:
+ dep_pkg = self.get_package(providers[0], recurse=True)
+ if dep_pkg is not None:
+ more += dep_pkg.dependencies()
return deps
def _get_dependency_cycle(self, package_name):
@@ -408,12 +411,11 @@ class PackagesDB:
more = more[1:]
if dep not in deps:
deps.append(dep)
- if dep in self._packages:
- dep_pkg = self._packages[dep]
- elif dep in self._virtual_packages:
- dep_pkg = self._packages[self._virtual_packages[dep][0]]
- else:
- dep_pkg = None
+ dep_pkg = self.get_package(dep, recurse=True)
+ if dep_pkg is None:
+ providers = self.get_providers(dep)
+ if providers:
+ dep_pkg = self.get_package(providers[0], recurse=True)
if dep_pkg is not None and package_name in self._get_recursive_dependencies(dep_pkg):
circular.append(dep)
more += dep_pkg.dependencies()
--
piuparts git repository
More information about the Piuparts-commits
mailing list