Add upgrade script for dagoma discoeasy

CURA-7517
This commit is contained in:
Jaime van Kessel 2020-06-17 10:46:09 +02:00
parent 8de981f33d
commit daa6b4f28d
No known key found for this signature in database
GPG Key ID: 3710727397403C91

View File

@ -2,10 +2,17 @@
# Cura is released under the terms of the LGPLv3 or higher. # Cura is released under the terms of the LGPLv3 or higher.
import configparser import configparser
from typing import Tuple, List from typing import Tuple, List, Dict
import io import io
from UM.VersionUpgrade import VersionUpgrade from UM.VersionUpgrade import VersionUpgrade
# Renamed definition files
_RENAMED_DEFINITION_DICT = {
"dagoma_discoeasy200": "dagoma_discoeasy200_bicolor",
} # type: Dict[str, str]
class VersionUpgrade462to47(VersionUpgrade): class VersionUpgrade462to47(VersionUpgrade):
def upgradePreferences(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]: def upgradePreferences(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]:
""" """
@ -71,6 +78,10 @@ class VersionUpgrade462to47(VersionUpgrade):
ironing_inset = "=(" + ironing_inset + ")" + correction ironing_inset = "=(" + ironing_inset + ")" + correction
parser["values"]["ironing_inset"] = ironing_inset parser["values"]["ironing_inset"] = ironing_inset
# Check renamed definitions
if "definition" in parser["general"] and parser["general"]["definition"] in _RENAMED_DEFINITION_DICT:
parser["general"]["definition"] = _RENAMED_DEFINITION_DICT[parser["general"]["definition"]]
result = io.StringIO() result = io.StringIO()
parser.write(result) parser.write(result)
return [filename], [result.getvalue()] return [filename], [result.getvalue()]
@ -130,7 +141,9 @@ class VersionUpgrade462to47(VersionUpgrade):
script_str = script_str.replace("\\\\", r"\\\\").replace("\n", r"\\\n") # Escape newlines because configparser sees those as section delimiters. script_str = script_str.replace("\\\\", r"\\\\").replace("\n", r"\\\n") # Escape newlines because configparser sees those as section delimiters.
new_scripts_entries.append(script_str) new_scripts_entries.append(script_str)
parser["metadata"]["post_processing_scripts"] = "\n".join(new_scripts_entries) parser["metadata"]["post_processing_scripts"] = "\n".join(new_scripts_entries)
# check renamed definition
if parser.has_option("containers", "7") and parser["containers"]["7"] in _RENAMED_DEFINITION_DICT:
parser["containers"]["7"] = _RENAMED_DEFINITION_DICT[parser["containers"]["7"]]
result = io.StringIO() result = io.StringIO()
parser.write(result) parser.write(result)
return [filename], [result.getvalue()] return [filename], [result.getvalue()]