Merge remote-tracking branch 'origin/CURA-8587_disable_update_install_and_uninstall' into CURA-8587_disable_update_install_and_uninstall

This commit is contained in:
Jelle Spijker 2021-12-03 17:20:23 +01:00
commit 6f99313ca5
No known key found for this signature in database
GPG key ID: 6662DC033BE6B99A

View file

@ -68,16 +68,24 @@ class CuraPackageManager(PackageManager):
def iterateAllLocalPackages(self) -> Generator[Dict[str, Any], None, None]:
""" A generator which returns an unordered list of all the PackageModels"""
handled_packages = set()
for packages in self.getAllInstalledPackagesInfo().values():
for package_info in packages:
yield package_info
if not handled_packages.__contains__(package_info["package_id"]):
handled_packages.add(package_info["package_id"])
yield package_info
# Get all to be removed package_info's. These packages are still used in the current session so the user might
# still want to interact with these.
for package_data in self.getPackagesToRemove().values():
yield package_data["package_info"]
for package_data in self.getPackagesToRemove().values():
if not handled_packages.__contains__(package_data["package_info"]["package_id"]):
handled_packages.add(package_data["package_info"]["package_id"])
yield package_data["package_info"]
# Get all to be installed package_info's. Since the user might want to interact with these
for package_data in self.getPackagesToInstall().values():
yield package_data["package_info"]
if not handled_packages.__contains__(package_data["package_info"]["package_id"]):
handled_packages.add(package_data["package_info"]["package_id"])
yield package_data["package_info"]