X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Futils.py;h=efae7756527161b35cd377670fa6d4c3a4c8461f;hb=4403a512a0ee03cac1f1fd0c2ce6c0f4ff161533;hp=56513e6131fd5e38a715cdcbce788f4937b3c8b0;hpb=c32db0812c76e00b2f16704ba943af3efd7341e4;p=dak.git diff --git a/daklib/utils.py b/daklib/utils.py index 56513e61..efae7756 100644 --- a/daklib/utils.py +++ b/daklib/utils.py @@ -49,7 +49,7 @@ import daklib.config as config import daklib.daksubprocess from dbconn import DBConn, get_architecture, get_component, get_suite, \ get_override_type, Keyring, session_wrapper, \ - get_active_keyring_paths, get_primary_keyring_path, \ + get_active_keyring_paths, \ get_suite_architectures, get_or_set_metadatakey, DBSource, \ Component, Override, OverrideType from sqlalchemy import desc @@ -1136,6 +1136,7 @@ def check_reverse_depends(removals, suite, arches=None, session=None, cruft=Fals else: all_arches = set(x.arch_string for x in get_suite_architectures(suite)) all_arches -= set(["source", "all"]) + removal_set = set(removals) metakey_d = get_or_set_metadatakey("Depends", session) metakey_p = get_or_set_metadatakey("Provides", session) params = { @@ -1183,9 +1184,7 @@ def check_reverse_depends(removals, suite, arches=None, session=None, cruft=Fals # If a virtual package is only provided by the to-be-removed # packages, treat the virtual package as to-be-removed too. - for virtual_pkg in virtual_packages: - if virtual_packages[virtual_pkg] == 0: - removals.append(virtual_pkg) + removal_set.update(virtual_pkg for virtual_pkg in virtual_packages if not virtual_packages[virtual_pkg]) # Check binary dependencies (Depends) for package in deps: