mirror of
https://git.launchpad.net/~ubuntu-release/britney/+git/britney2-ubuntu
synced 2025-02-13 15:37:02 +00:00
britney: Never strip multi-arch in dependencies
This causes Multi-arch dependencies like "pkg:i386" to show up as unsatisfiable in excuses. Previously, the dependency would be checked on the wrong architecture (if available) and cause the package to become a valid candidate. The package would still be prevent from migrating as the installability checker does not know of the "pkg:i386" package. Signed-off-by: Niels Thykier <niels@thykier.net>
This commit is contained in:
parent
081cd9afdb
commit
5a998ea8a7
@ -580,9 +580,9 @@ class Britney(object):
|
||||
# register the list of the dependencies for the depending packages
|
||||
dependencies = []
|
||||
if packages[pkg][DEPENDS]:
|
||||
dependencies.extend(parse_depends(packages[pkg][DEPENDS]))
|
||||
dependencies.extend(parse_depends(packages[pkg][DEPENDS], False))
|
||||
if packages[pkg][PREDEPENDS]:
|
||||
dependencies.extend(parse_depends(packages[pkg][PREDEPENDS]))
|
||||
dependencies.extend(parse_depends(packages[pkg][PREDEPENDS], False))
|
||||
# go through the list
|
||||
for p in dependencies:
|
||||
for a in p:
|
||||
@ -597,7 +597,7 @@ class Britney(object):
|
||||
packages[i][RDEPENDS].append(pkg)
|
||||
# register the list of the conflicts for the conflicting packages
|
||||
if packages[pkg][CONFLICTS]:
|
||||
for p in parse_depends(packages[pkg][CONFLICTS]):
|
||||
for p in parse_depends(packages[pkg][CONFLICTS], False):
|
||||
for a in p:
|
||||
# register real packages
|
||||
if a[0] in packages and (not check_doubles or pkg not in packages[a[0]][RCONFLICTS]):
|
||||
@ -1047,7 +1047,7 @@ class Britney(object):
|
||||
continue
|
||||
|
||||
# for every block of dependency (which is formed as conjunction of disconjunction)
|
||||
for block, block_txt in zip(parse_depends(binary_u[type_key]), binary_u[type_key].split(',')):
|
||||
for block, block_txt in zip(parse_depends(binary_u[type_key], False), binary_u[type_key].split(',')):
|
||||
# if the block is satisfied in testing, then skip the block
|
||||
solved, packages = get_dependency_solvers(block, arch, 'testing')
|
||||
if solved:
|
||||
|
Loading…
x
Reference in New Issue
Block a user