Hopefully this will fix bug #350488.
unsat_use_in_graph = []
unsat_use_installed = []
unsat_use_non_installed = []
+ other_installed = []
other = []
# unsat_use_* must come after preferred_non_installed
unsat_use_in_graph,
unsat_use_installed,
unsat_use_non_installed,
+ other_installed,
other,
)
else:
unsat_use_non_installed.append(this_choice)
else:
- other.append(this_choice)
+ all_installed = True
+ for atom in atoms:
+ if not atom.blocker and not vardb.match(atom):
+ all_installed = False
+ break
+ if all_installed:
+ other_installed.append(this_choice)
+ else:
+ other.append(this_choice)
# Prefer choices which contain upgrades to higher slots. This helps
# for deps such as || ( foo:1 foo:2 ), where we want to prefer the