[Piuparts-commits] [SCM] piuparts git repository branch, develop, updated. 0.44-583-ge144d01

Andreas Beckmann debian at abeckmann.de
Fri May 25 12:41:03 UTC 2012


The following commit has been merged in the develop branch:
commit ea8e262fd1d21c926591fe874f171adac72e4e4b
Author: Andreas Beckmann <debian at abeckmann.de>
Date:   Sat Mar 10 12:30:30 2012 +0100

    compute and automatically break dependency cycles
    
    stop relying on known_circular_depends which require regular manual updates
    
    Signed-off-by: Andreas Beckmann <debian at abeckmann.de>

diff --git a/debian/changelog b/debian/changelog
index 2eb63d2..5068e2b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -26,6 +26,9 @@ piuparts (0.45) UNRELEASED; urgency=low
     - Fix state resolution of package dependencies containing alternatives,
       virtual packages and circular dependencies.
     - Remove 'circular-dependency' state.
+    - Stop using static known_circular_depends.
+    - Compute dependency cycles and test packages on such cycles if all
+      non-circular dependencies are satisfied.
 
   [ Leo Iannacone ]
   * piuparts.py: add --existing-chroot option, specify a directory as source
diff --git a/piupartslib/packagesdb.py b/piupartslib/packagesdb.py
index 0933948..e7e28d5 100644
--- a/piupartslib/packagesdb.py
+++ b/piupartslib/packagesdb.py
@@ -404,11 +404,12 @@ class PackagesDB:
             return "waiting-to-be-tested"
 
         # treat circular-dependencies as testable (for the part of the circle)
-        if package["Package"] in self._known_circular_depends:
+        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)
-                if dep in self._known_circular_depends:
+                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)
                     pass

-- 
piuparts git repository



More information about the Piuparts-commits mailing list