[Piuparts-commits] [piuparts] 02/06: lib/db: _compute_package_state(): compute dep_states once
Holger Levsen
holger at moszumanska.debian.org
Tue Jan 21 02:07:50 UTC 2014
This is an automated email from the git hooks/post-receive script.
holger pushed a commit to branch develop
in repository piuparts.
commit ca4cd4eca287818c4c8750471f9fabddae247581
Author: Andreas Beckmann <anbe at debian.org>
Date: Mon Jan 20 11:07:07 2014 +0100
lib/db: _compute_package_state(): compute dep_states once
Signed-off-by: Andreas Beckmann <anbe at debian.org>
---
piupartslib/packagesdb.py | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/piupartslib/packagesdb.py b/piupartslib/packagesdb.py
index 7f38fd8..5455917 100644
--- a/piupartslib/packagesdb.py
+++ b/piupartslib/packagesdb.py
@@ -478,16 +478,15 @@ class PackagesDB:
if prefer_alt_score >= 0:
package.prefer_alt_depends(header, d, prefer_alt)
- deps = package.dependencies()
+ dep_states = [(dep, self.get_package_state(dep))
+ for dep in package.dependencies()]
- for dep in deps:
- dep_state = self.get_package_state(dep)
+ for dep, dep_state in dep_states:
if dep_state in self._propagate_error_state:
return self._propagate_error_state[dep_state]
testable = True
- for dep in deps:
- dep_state = self.get_package_state(dep)
+ for dep, dep_state in dep_states:
if dep_state not in self._good_states:
testable = False
break
@@ -498,8 +497,7 @@ class PackagesDB:
circular_deps = self._get_dependency_cycle(package["Package"])
if package["Package"] in circular_deps:
testable = True
- for dep in deps:
- dep_state = self.get_package_state(dep)
+ for dep, dep_state in dep_states:
if dep in circular_deps:
# allow any non-error dep_state on the cycle for testing
# (error states are handled by the error propagation above)
@@ -511,8 +509,7 @@ class PackagesDB:
if testable:
return "waiting-to-be-tested"
- for dep in deps:
- dep_state = self.get_package_state(dep)
+ for dep, dep_state in dep_states:
if dep_state in self._propagate_waiting_state:
return self._propagate_waiting_state[dep_state]
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/piuparts/piuparts.git
More information about the Piuparts-commits
mailing list