diff --git a/asu/api.py b/asu/api.py index 83e0f108..401e986c 100644 --- a/asu/api.py +++ b/asu/api.py @@ -109,7 +109,9 @@ def validate_request(req): ) if req.get("packages_versions") and not req.get("packages"): - req["packages"] = req["packages_versions"].keys() + req["packages"] = set(req["packages_versions"].keys()) + else: + req["packages"] = set(req.get("packages", [])) r = get_redis() diff --git a/asu/common.py b/asu/common.py index b3cb4168..f929719f 100644 --- a/asu/common.py +++ b/asu/common.py @@ -197,7 +197,7 @@ def get_container_version_tag(version: str) -> str: return version -def diff_packages(requested_packages: list, default_packages: set): +def diff_packages(requested_packages: set, default_packages: set): """Return a list of packages to install and remove Args: @@ -206,7 +206,6 @@ def diff_packages(requested_packages: list, default_packages: set): Returns: set: Set of packages to install and remove""" - requested_packages = set(requested_packages) remove_packages = default_packages - requested_packages return requested_packages | set( map(lambda p: f"-{p}".replace("--", "-"), remove_packages)