[Piuparts-commits] [SCM] piuparts git repository branch, piatti, updated. 0.44-598-gace668e
Andreas Beckmann
debian at abeckmann.de
Sun May 27 13:47:25 UTC 2012
The following commit has been merged in the piatti branch:
commit 09310ee6174ad263a1147fbeef88a393c783804f
Author: Andreas Beckmann <debian at abeckmann.de>
Date: Sat Mar 10 11:34:28 2012 +0100
remove 'unknown-preferred-alternative' state
Remove 'unknown-preferred-alternative' state as it interferes with
circular dependencies involving alternatives and virtual packages.
Setting 'unknown-preferred-alternative' usually happened on the
full circle and skipped the special handling of known circular
depends, so the package never got a change to be tested.
Now these packages will be just tracked as 'unknown'.
Signed-off-by: Andreas Beckmann <debian at abeckmann.de>
diff --git a/debian/changelog b/debian/changelog
index 9da0e97..e68c6c2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -21,6 +21,8 @@ piuparts (0.45) UNRELEASED; urgency=low
in the package) but propagate it to 'dependency-cannot-be-tested'.
- Remove 'no-dependency-from-alternatives-exists' state and use
'dependency-does-not-exist' instead.
+ - Remove 'unknown-preferred-alternative' state as it interferes with
+ circular dependencies involving alternatives and virtual packages.
[ Leo Iannacone ]
* piuparts.py: add --existing-chroot option, specify a directory as source
diff --git a/piupartslib/packagesdb.py b/piupartslib/packagesdb.py
index f5b048c..b6e5984 100644
--- a/piupartslib/packagesdb.py
+++ b/piupartslib/packagesdb.py
@@ -215,7 +215,7 @@ class PackagesDB:
"dependency-does-not-exist",
"circular-dependency",
"unknown",
- "unknown-preferred-alternative",
+ "unknown-preferred-alternative", # obsolete
"no-dependency-from-alternatives-exists", # obsolete
#"does-not-exist", # can only happen as query result for a dependency
]
@@ -228,7 +228,6 @@ class PackagesDB:
"dependency-failed-testing": "dependency-failed-testing",
"dependency-cannot-be-tested": "dependency-cannot-be-tested",
"dependency-does-not-exist": "dependency-cannot-be-tested",
- "unknown-preferred-alternative": "unknown-preferred-alternative",
"does-not-exist": "dependency-does-not-exist",
}
@@ -372,8 +371,6 @@ class PackagesDB:
else:
if alt_state is not None and alt_unknowns == 0:
state = alt_state
- elif state is None:
- state = "unknown-preferred-alternative"
if state is not None:
return state
@@ -421,7 +418,6 @@ class PackagesDB:
return
todo = []
- unpreferred_alt = []
self._find_all_packages()
package_names = self._packages.keys()
@@ -437,17 +433,13 @@ class PackagesDB:
while package_names:
todo = []
done = []
- unpreferred_alt = []
for package_name in package_names:
package = self._packages[package_name]
- if self._package_state[package_name] in \
- [ "unknown", "unknown-preferred-alternative" ]:
+ if self._package_state[package_name] == "unknown":
state = self._compute_package_state(package)
assert state in self._states
if state == "unknown":
todo.append(package_name)
- elif state == "unknown-preferred-alternative":
- unpreferred_alt.append(package_name)
else:
self._in_state[state].append(package_name)
self._package_state[package_name] = state
@@ -457,12 +449,8 @@ class PackagesDB:
# to do anything the next time either.
break
package_names = todo
- package_names.extend(unpreferred_alt)
self._in_state["unknown"] = todo
- self._in_state["unknown-preferred-alternative"] = unpreferred_alt
- for package_name in unpreferred_alt:
- self._package_state[package_name] = "unknown-preferred-alternative"
for state in self._states:
self._in_state[state].sort()
--
piuparts git repository
More information about the Piuparts-commits
mailing list