Fix mutable arg problem and rename arg

CURA-4049
This commit is contained in:
Lipu Fei 2017-07-18 08:32:20 +02:00
parent 6fc824abd5
commit 024f2384e0
2 changed files with 7 additions and 5 deletions

View file

@ -90,6 +90,6 @@ class ThreeMFWorkspaceWriter(WorkspaceWriter):
# Do not include the network authentication keys # Do not include the network authentication keys
ignore_keys = ["network_authentication_id", "network_authentication_key"] ignore_keys = ["network_authentication_id", "network_authentication_key"]
serialized_data = container.serialize(ignore_metadata_keys = ignore_keys) serialized_data = container.serialize(ignored_metadata_keys = ignore_keys)
archive.writestr(file_in_archive, serialized_data) archive.writestr(file_in_archive, serialized_data)

View file

@ -3,7 +3,7 @@
import copy import copy
import io import io
from typing import Optional from typing import List, Optional
import xml.etree.ElementTree as ET import xml.etree.ElementTree as ET
from UM.Resources import Resources from UM.Resources import Resources
@ -109,7 +109,7 @@ class XmlMaterialProfile(InstanceContainer):
## Overridden from InstanceContainer ## Overridden from InstanceContainer
# base file: common settings + supported machines # base file: common settings + supported machines
# machine / variant combination: only changes for itself. # machine / variant combination: only changes for itself.
def serialize(self, ignore_metadata_keys=[]): def serialize(self, ignored_metadata_keys: Optional[List] = None):
registry = ContainerRegistry.getInstance() registry = ContainerRegistry.getInstance()
base_file = self.getMetaDataEntry("base_file", "") base_file = self.getMetaDataEntry("base_file", "")
@ -130,9 +130,11 @@ class XmlMaterialProfile(InstanceContainer):
metadata = copy.deepcopy(self.getMetaData()) metadata = copy.deepcopy(self.getMetaData())
# setting_version is derived from the "version" tag in the schema, so don't serialize it into a file # setting_version is derived from the "version" tag in the schema, so don't serialize it into a file
ignore_metadata_keys = ignore_metadata_keys + ["setting_version"] if ignored_metadata_keys is None:
ignored_metadata_keys = []
ignored_metadata_keys = ignored_metadata_keys + ["setting_version"]
# remove the keys that we want to ignore in the metadata # remove the keys that we want to ignore in the metadata
for key in ignore_metadata_keys: for key in ignored_metadata_keys:
if key in metadata: if key in metadata:
del metadata[key] del metadata[key]
properties = metadata.pop("properties", {}) properties = metadata.pop("properties", {})