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

@ -3,7 +3,7 @@
import copy
import io
from typing import Optional
from typing import List, Optional
import xml.etree.ElementTree as ET
from UM.Resources import Resources
@ -109,7 +109,7 @@ class XmlMaterialProfile(InstanceContainer):
## Overridden from InstanceContainer
# base file: common settings + supported machines
# 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()
base_file = self.getMetaDataEntry("base_file", "")
@ -130,9 +130,11 @@ class XmlMaterialProfile(InstanceContainer):
metadata = copy.deepcopy(self.getMetaData())
# 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
for key in ignore_metadata_keys:
for key in ignored_metadata_keys:
if key in metadata:
del metadata[key]
properties = metadata.pop("properties", {})