mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-19 04:37:51 -06:00
Passed the sdk_version to the reevalute() function
CURA-7090
This commit is contained in:
parent
365c30fadb
commit
8abaa60052
2 changed files with 6 additions and 4 deletions
|
@ -8,11 +8,12 @@ from UM import i18nCatalog
|
||||||
from UM.Logger import Logger
|
from UM.Logger import Logger
|
||||||
from UM.Message import Message
|
from UM.Message import Message
|
||||||
from UM.Signal import Signal
|
from UM.Signal import Signal
|
||||||
from cura.CuraApplication import CuraApplication
|
from cura.CuraApplication import CuraApplication, ApplicationMetadata
|
||||||
from ..CloudApiModel import CloudApiModel
|
from ..CloudApiModel import CloudApiModel
|
||||||
from .SubscribedPackagesModel import SubscribedPackagesModel
|
from .SubscribedPackagesModel import SubscribedPackagesModel
|
||||||
from ..UltimakerCloudScope import UltimakerCloudScope
|
from ..UltimakerCloudScope import UltimakerCloudScope
|
||||||
|
|
||||||
|
from typing import List, Dict, Any
|
||||||
|
|
||||||
class CloudPackageChecker(QObject):
|
class CloudPackageChecker(QObject):
|
||||||
def __init__(self, application: CuraApplication) -> None:
|
def __init__(self, application: CuraApplication) -> None:
|
||||||
|
@ -25,6 +26,7 @@ class CloudPackageChecker(QObject):
|
||||||
|
|
||||||
self._application.initializationFinished.connect(self._onAppInitialized)
|
self._application.initializationFinished.connect(self._onAppInitialized)
|
||||||
self._i18n_catalog = i18nCatalog("cura")
|
self._i18n_catalog = i18nCatalog("cura")
|
||||||
|
self._sdk_version = ApplicationMetadata.CuraSDKVersion
|
||||||
|
|
||||||
# This is a plugin, so most of the components required are not ready when
|
# This is a plugin, so most of the components required are not ready when
|
||||||
# this is initialized. Therefore, we wait until the application is ready.
|
# this is initialized. Therefore, we wait until the application is ready.
|
||||||
|
@ -40,14 +42,14 @@ class CloudPackageChecker(QObject):
|
||||||
if self._application.getCuraAPI().account.isLoggedIn:
|
if self._application.getCuraAPI().account.isLoggedIn:
|
||||||
self._getUserPackages()
|
self._getUserPackages()
|
||||||
|
|
||||||
def _handleCompatibilityData(self, json_data) -> None:
|
def _handleCompatibilityData(self, json_data: List[Dict[str, List[Any]]]) -> None:
|
||||||
user_subscribed_packages = [plugin["package_id"] for plugin in json_data]
|
user_subscribed_packages = [plugin["package_id"] for plugin in json_data]
|
||||||
user_installed_packages = self._package_manager.getUserInstalledPackages()
|
user_installed_packages = self._package_manager.getUserInstalledPackages()
|
||||||
|
|
||||||
# We need to re-evaluate the dismissed packages
|
# We need to re-evaluate the dismissed packages
|
||||||
# (i.e. some package might got updated to the correct SDK version in the meantime,
|
# (i.e. some package might got updated to the correct SDK version in the meantime,
|
||||||
# hence remove them from the Dismissed Incompatible list)
|
# hence remove them from the Dismissed Incompatible list)
|
||||||
self._package_manager.reEvaluateDismissedPackages(json_data)
|
self._package_manager.reEvaluateDismissedPackages(json_data, self._sdk_version)
|
||||||
user_dismissed_packages = self._package_manager.getDismissedPackages()
|
user_dismissed_packages = self._package_manager.getDismissedPackages()
|
||||||
if user_dismissed_packages:
|
if user_dismissed_packages:
|
||||||
user_installed_packages += user_dismissed_packages
|
user_installed_packages += user_dismissed_packages
|
||||||
|
|
|
@ -47,7 +47,7 @@ class SubscribedPackagesModel(ListModel):
|
||||||
def addDiscrepancies(self, discrepancy: List[str]) -> None:
|
def addDiscrepancies(self, discrepancy: List[str]) -> None:
|
||||||
self._discrepancies = discrepancy
|
self._discrepancies = discrepancy
|
||||||
|
|
||||||
def getCompatiblePackages(self):
|
def getCompatiblePackages(self) -> List[str]:
|
||||||
return [package for package in self._items if package["is_compatible"]]
|
return [package for package in self._items if package["is_compatible"]]
|
||||||
|
|
||||||
def initialize(self, json_data: List[Dict[str, List[Any]]]) -> None:
|
def initialize(self, json_data: List[Dict[str, List[Any]]]) -> None:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue