Просмотр исходного кода

Merge pull request #10358 from Ultimaker/CURA-8521_Add_missing_preference_vesion_upgrade

Add the missing preference upgrade for 4.9 to 4.10
Konstantinos Karmas 3 лет назад
Родитель
Сommit
9504ee60d4

+ 19 - 0
plugins/VersionUpgrade/VersionUpgrade49to410/VersionUpgrade49to410.py

@@ -104,6 +104,25 @@ class VersionUpgrade49to410(VersionUpgrade):
         "g" : "D060"
     }
 
+    def upgradePreferences(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]:
+        """
+        Upgrades preferences to have the new version number.
+        :param serialized: The original contents of the preferences file.
+        :param filename: The file name of the preferences file.
+        :return: A list of new file names, and a list of the new contents for
+        those files.
+        """
+        parser = configparser.ConfigParser(interpolation = None)
+        parser.read_string(serialized)
+
+        # Update version number.
+        parser["metadata"]["setting_version"] = "17"
+
+        result = io.StringIO()
+        parser.write(result)
+        return [filename], [result.getvalue()]
+
+
     def upgradeInstanceContainer(self, serialized: str, filename: str) -> Tuple[List[str], List[str]]:
         """Upgrades instance containers to have the new version number.
 

+ 1 - 0
plugins/VersionUpgrade/VersionUpgrade49to410/__init__.py

@@ -21,6 +21,7 @@ def getMetaData() -> Dict[str, Any]:
             ("quality_changes",    4000016):  ("quality_changes",    4000017,   upgrade.upgradeInstanceContainer),
             ("quality",            4000016):  ("quality",            4000017,   upgrade.upgradeInstanceContainer),
             ("user",               4000016):  ("user",               4000017,   upgrade.upgradeInstanceContainer),
+            ("preferences",        7000016):  ("preferences",        7000017,   upgrade.upgradePreferences),
         },
         "sources": {
             "machine_stack": {