Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLipu Fei <lipu.fei815@gmail.com>2017-05-16 15:37:12 +0300
committerLipu Fei <lipu.fei815@gmail.com>2017-05-16 15:38:27 +0300
commit40d70b5f39373df41fd0fd49bc4d0fb6a4e7e52d (patch)
treeb73c9ecd44212c25323ff6ee673fb2e1dd1900dd /plugins/VersionUpgrade/VersionUpgrade25to26
parent1b4564bdb1c085d0aaff42178af44c7d6ec3991e (diff)
Fix version upgrade for project loading
CURA-3756
Diffstat (limited to 'plugins/VersionUpgrade/VersionUpgrade25to26')
-rw-r--r--plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py15
-rw-r--r--plugins/VersionUpgrade/VersionUpgrade25to26/__init__.py16
2 files changed, 20 insertions, 11 deletions
diff --git a/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py b/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py
index c61962d276..85f54dd654 100644
--- a/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py
+++ b/plugins/VersionUpgrade/VersionUpgrade25to26/VersionUpgrade25to26.py
@@ -5,6 +5,7 @@ import configparser #To parse the files we need to upgrade and write the new fil
import io #To serialise configparser output to a string.
from UM.VersionUpgrade import VersionUpgrade
+from cura.CuraApplication import CuraApplication
_removed_settings = { #Settings that were removed in 2.5.
"start_layers_at_same_position",
@@ -86,11 +87,17 @@ class VersionUpgrade25to26(VersionUpgrade):
parser["values"][replacement] = parser["values"][replaced_setting] #Copy to replacement before removing the original!
del replaced_setting
- #Change the version number in the file.
- if parser.has_section("general"):
- parser["general"]["setting_version"] = "1"
+ for each_section in ("general", "metadata"):
+ if not parser.has_section(each_section):
+ parser.add_section(each_section)
+
+ # Change the version number in the file.
+ parser["metadata"]["setting_version"] = str(CuraApplication.SettingVersion)
+
+ # Update version
+ parser["general"]["version"] = "2"
#Re-serialise the file.
output = io.StringIO()
parser.write(output)
- return [filename], [output.getvalue()] \ No newline at end of file
+ return [filename], [output.getvalue()]
diff --git a/plugins/VersionUpgrade/VersionUpgrade25to26/__init__.py b/plugins/VersionUpgrade/VersionUpgrade25to26/__init__.py
index 3aee161e3c..a24473f65d 100644
--- a/plugins/VersionUpgrade/VersionUpgrade25to26/__init__.py
+++ b/plugins/VersionUpgrade/VersionUpgrade25to26/__init__.py
@@ -18,14 +18,16 @@ def getMetaData():
"api": 3
},
"version_upgrade": {
- # From To Upgrade function
- ("preferences", 4000000): ("preferences", 4000001, upgrade.upgradePreferences),
- ("quality", 2000000): ("quality", 2000001, upgrade.upgradeInstanceContainer),
- ("variant", 2000000): ("variant", 2000001, upgrade.upgradeInstanceContainer), #We can re-use upgradeContainerStack since there is nothing specific to quality, variant or user profiles being changed.
- ("user", 2000000): ("user", 2000001, upgrade.upgradeInstanceContainer)
+ # From To Upgrade function
+ ("preferences", 4000000): ("preferences", 4000001, upgrade.upgradePreferences),
+ # NOTE: All the instance containers share the same general/version, so we have to update all of them
+ # if any is updated.
+ ("quality_changes", 2000000): ("quality_changes", 2000001, upgrade.upgradeInstanceContainer),
+ ("user", 2000000): ("user", 2000001, upgrade.upgradeInstanceContainer),
+ ("quality", 2000000): ("quality", 2000001, upgrade.upgradeInstanceContainer),
},
"sources": {
- "quality": {
+ "quality_changes": {
"get_version": upgrade.getCfgVersion,
"location": {"./quality"}
},
@@ -36,7 +38,7 @@ def getMetaData():
"user": {
"get_version": upgrade.getCfgVersion,
"location": {"./user"}
- }
+ },
}
}