Add setting_version every time we create InstanceContainer

Except when we fill the instancecontainer via deserialising. Because then we want to retain the original version number.

Contributes to issue CURA-3427.
This commit is contained in:
Ghostkeeper 2017-05-15 10:39:53 +02:00
parent c61baf3355
commit ccda155882
No known key found for this signature in database
GPG key ID: C5F96EE2BC0F7E75
7 changed files with 12 additions and 3 deletions

View file

@ -43,7 +43,7 @@ class CuraContainerRegistry(ContainerRegistry):
if isinstance(container, InstanceContainer) and type(container) != type(self.getEmptyInstanceContainer()):
#Check against setting version of the definition.
required_setting_version = int(container.getDefinition().getMetaDataEntry("setting_version"))
required_setting_version = int(container.getDefinition().getMetaDataEntry("setting_version", default = 0))
actual_setting_version = int(container.getMetaDataEntry("setting_version", default = 0))
if required_setting_version != actual_setting_version:
Logger.log("w", "Instance container {container_id} is outdated. Its setting version is {actual_setting_version} but it should be {required_setting_version}.".format(container_id = container.getId(), actual_setting_version = actual_setting_version, required_setting_version = required_setting_version))