From 18ebdfafb7be2db3f3143a01c005a8ed0f6516e1 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Thu, 9 Apr 2020 01:23:11 +0200 Subject: [PATCH] Upgrade other per-extruder instance containers too Global instance containers will also go through this function but won't get picked out by the if statement here. --- .../VersionUpgrade46to47/VersionUpgrade46to47.py | 14 ++++++++------ .../VersionUpgrade46to47/__init__.py | 8 ++++---- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/plugins/VersionUpgrade/VersionUpgrade46to47/VersionUpgrade46to47.py b/plugins/VersionUpgrade/VersionUpgrade46to47/VersionUpgrade46to47.py index ba3bd0ed85..b5eee0c9ce 100644 --- a/plugins/VersionUpgrade/VersionUpgrade46to47/VersionUpgrade46to47.py +++ b/plugins/VersionUpgrade/VersionUpgrade46to47/VersionUpgrade46to47.py @@ -55,15 +55,15 @@ class VersionUpgrade46to47(VersionUpgrade): parser.write(result) return [filename], [result.getvalue()] - def upgradeDefinitionChanges(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]: + def upgradeExtruderInstanceContainer(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]: """ - Upgrades definition changes files to the new version number. + Upgrades per-extruder instance containers to the new version number. This applies all of the changes that are applied in other instance containers as well. - In the case of Deltacomb printers, it splits the 2 extruder definition - changes into 4. + In the case of Deltacomb printers, it splits the 2 extruders into 4 and + changes the definition. :param serialized: The original contents of the instance container. :param filename: The original file name of the instance container. :return: A list of new file names, and a list of the new contents for @@ -170,14 +170,16 @@ class VersionUpgrade46to47(VersionUpgrade): extruder3 = copy.copy(parser) extruder3["metadata"]["position"] = "2" extruder3["containers"]["0"] += "_e2_upgrade" + extruder3["containers"]["1"] += "_e2_upgrade" extruder3["containers"]["6"] += "_e2_upgrade" extruder3["containers"]["7"] = "deltacomb_base_extuder_2" result_parsers.append(extruder3) result_filenames.append(filename[:-len(".extruder.cfg")] + "_e2_upgrade.extruder.cfg") extruder4 = copy.copy(parser) extruder4["metadata"]["position"] = "3" - extruder4["containers"]["0"] += ".inst.cfg_e3_upgrade" - extruder4["containers"]["6"] += ".inst.cfg_e3_upgrade" + extruder4["containers"]["0"] += "_e3_upgrade" + extruder4["containers"]["1"] += "_e3_upgrade" + extruder4["containers"]["6"] += "_e3_upgrade" extruder4["containers"]["7"] = "deltacomb_base_extruder_3" result_parsers.append(extruder4) result_filenames.append(filename[:-len(".extruder.cfg")] + "_e3_upgrade.extruder.cfg") diff --git a/plugins/VersionUpgrade/VersionUpgrade46to47/__init__.py b/plugins/VersionUpgrade/VersionUpgrade46to47/__init__.py index 288fe8c164..fc253989fa 100644 --- a/plugins/VersionUpgrade/VersionUpgrade46to47/__init__.py +++ b/plugins/VersionUpgrade/VersionUpgrade46to47/__init__.py @@ -17,10 +17,10 @@ def getMetaData() -> Dict[str, Any]: ("preferences", 6000012): ("preferences", 6000013, upgrade.upgradePreferences), ("machine_stack", 4000012): ("machine_stack", 4000013, upgrade.upgradeStack), ("extruder_train", 4000012): ("extruder_train", 4000013, upgrade.upgradeStack), - ("definition_changes", 4000012): ("definition_changes", 4000013, upgrade.upgradeDefinitionChanges), - ("quality_changes", 4000012): ("quality_changes", 4000013, upgrade.upgradeInstanceContainer), - ("quality", 4000012): ("quality", 4000013, upgrade.upgradeInstanceContainer), - ("user", 4000012): ("user", 4000013, upgrade.upgradeInstanceContainer), + ("definition_changes", 4000012): ("definition_changes", 4000013, upgrade.upgradeExtruderInstanceContainer), + ("quality_changes", 4000012): ("quality_changes", 4000013, upgrade.upgradeExtruderInstanceContainer), + ("quality", 4000012): ("quality", 4000013, upgrade.upgradeExtruderInstanceContainer), + ("user", 4000012): ("user", 4000013, upgrade.upgradeExtruderInstanceContainer), }, "sources": { "preferences": {