Improve the checks for affected packages during a sourceful update

When marking the reverse dependencies of each binary package as affected
by a sourceful update to testing, the reverse dependencies of those
packages are also affected, and so on.

This helps to avoid situations where the installability of immediate
reverse dependencies is unchanged, but that of other packages in the
dependency chain is altered, for example where alternative dependencies
are used.

See Debian bug #614249 for further details.
This commit is contained in:
Adam D. Barratt 2011-03-01 23:35:12 +00:00
parent cb050dcfdb
commit cfe3f37bb5

View File

@ -2037,6 +2037,9 @@ class Britney:
for j in binaries[parch][0][binary][RDEPENDS]:
key = (j, parch)
if key not in affected: affected.append(key)
for p in self.get_full_tree(j, parch, 'testing'):
key = (p, parch)
if key not in affected: affected.append(key)
# remove the provided virtual packages
for j in binaries[parch][0][binary][PROVIDES]:
key = j + "/" + parch