mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-12 11:59:02 +08:00
Merge pull request #9991 from Ultimaker/CURA-8313
Re-enable backing up of plugins
This commit is contained in:
commit
1bd6b3f091
@ -7,7 +7,7 @@ import re
|
|||||||
import shutil
|
import shutil
|
||||||
from copy import deepcopy
|
from copy import deepcopy
|
||||||
from zipfile import ZipFile, ZIP_DEFLATED, BadZipfile
|
from zipfile import ZipFile, ZIP_DEFLATED, BadZipfile
|
||||||
from typing import Dict, Optional, TYPE_CHECKING
|
from typing import Dict, Optional, TYPE_CHECKING, List
|
||||||
|
|
||||||
from UM import i18nCatalog
|
from UM import i18nCatalog
|
||||||
from UM.Logger import Logger
|
from UM.Logger import Logger
|
||||||
@ -29,7 +29,7 @@ class Backup:
|
|||||||
IGNORED_FILES = [r"cura\.log", r"plugins\.json", r"cache", r"__pycache__", r"\.qmlc", r"\.pyc"]
|
IGNORED_FILES = [r"cura\.log", r"plugins\.json", r"cache", r"__pycache__", r"\.qmlc", r"\.pyc"]
|
||||||
"""These files should be ignored when making a backup."""
|
"""These files should be ignored when making a backup."""
|
||||||
|
|
||||||
IGNORED_FOLDERS = [r"plugins"]
|
IGNORED_FOLDERS = [] # type: List[str]
|
||||||
|
|
||||||
SECRETS_SETTINGS = ["general/ultimaker_auth_data"]
|
SECRETS_SETTINGS = ["general/ultimaker_auth_data"]
|
||||||
"""Secret preferences that need to obfuscated when making a backup of Cura"""
|
"""Secret preferences that need to obfuscated when making a backup of Cura"""
|
||||||
|
@ -54,17 +54,6 @@ class BackupsManager:
|
|||||||
backup = Backup(self._application, zip_file = zip_file, meta_data = meta_data)
|
backup = Backup(self._application, zip_file = zip_file, meta_data = meta_data)
|
||||||
restored = backup.restore()
|
restored = backup.restore()
|
||||||
|
|
||||||
package_manager = self._application.getPackageManager()
|
|
||||||
|
|
||||||
# If the backup was made with Cura 4.10 (or higher), we no longer store plugins.
|
|
||||||
# Since the restored backup doesn't have those plugins anymore, we should remove it from the list
|
|
||||||
# of installed plugins.
|
|
||||||
if Version(meta_data.get("cura_release")) >= Version("4.10.0"):
|
|
||||||
for package_id in package_manager.getAllInstalledPackageIDs():
|
|
||||||
package_data = package_manager.getInstalledPackageInfo(package_id)
|
|
||||||
if package_data.get("package_type") == "plugin" and not package_data.get("is_bundled"):
|
|
||||||
package_manager.removePackage(package_id)
|
|
||||||
|
|
||||||
if restored:
|
if restored:
|
||||||
# At this point, Cura will need to restart for the changes to take effect.
|
# At this point, Cura will need to restart for the changes to take effect.
|
||||||
# We don't want to store the data at this point as that would override the just-restored backup.
|
# We don't want to store the data at this point as that would override the just-restored backup.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user