Remove spaghetti settings from 462 visible_settings when upgrading

Part of CURA-7199
This commit is contained in:
jelle Spijker 2020-06-29 16:07:34 +02:00 committed by Jelle Spijker
parent 7d0a05176f
commit 8af4e0d05a
No known key found for this signature in database
GPG key ID: 6662DC033BE6B99A
2 changed files with 18 additions and 2 deletions

2
.gitignore vendored
View file

@ -78,3 +78,5 @@ CuraEngine
#Prevents import failures when plugin running tests
plugins/__init__.py
/venv

View file

@ -2,7 +2,7 @@
# Cura is released under the terms of the LGPLv3 or higher.
import configparser
from typing import Tuple, List, Dict
from typing import Tuple, List, Dict, Set
import io
from UM.VersionUpgrade import VersionUpgrade
@ -10,8 +10,17 @@ from UM.VersionUpgrade import VersionUpgrade
# Renamed definition files
_RENAMED_DEFINITION_DICT = {
"dagoma_discoeasy200": "dagoma_discoeasy200_bicolor",
} # type: Dict[str, str]
} # type: Dict[str, str]
_removed_settings = {
"spaghetti_infill_enabled",
"spaghetti_infill_stepped",
"spaghetti_max_infill_angle",
"spaghetti_max_height",
"spaghetti_inset",
"spaghetti_flow",
"spaghetti_infill_extra_volume"
} # type: Set[str]
class VersionUpgrade462to47(VersionUpgrade):
def upgradePreferences(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]:
@ -28,6 +37,11 @@ class VersionUpgrade462to47(VersionUpgrade):
# Update version number.
parser["metadata"]["setting_version"] = "15"
# Remove deleted settings from the visible settings list.
if "general" in parser and "visible_settings" in parser["general"]:
parser["general"]["visible_settings"] = ";".join(
set(parser["general"]["visible_settings"].split(";")).difference(_removed_settings))
result = io.StringIO()
parser.write(result)
return [filename], [result.getvalue()]