From 596a4f5b54b7d0beadc588b5f59068ea30ed072a Mon Sep 17 00:00:00 2001 From: Bojan Mihelac Date: Mon, 3 Dec 2018 16:06:26 +0100 Subject: [PATCH] refactor: do not use mutable arguments --- import_export/resources.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/import_export/resources.py b/import_export/resources.py index 75bb495..e884ffb 100644 --- a/import_export/resources.py +++ b/import_export/resources.py @@ -272,7 +272,7 @@ class Resource(six.with_metaclass(DeclarativeMetaclass)): else: return (self.init_instance(row), True) - def validate_instance(self, instance, import_validation_errors={}, validate_unique=True): + def validate_instance(self, instance, import_validation_errors=None, validate_unique=True): """ Takes any validation errors that were raised by :meth:`~import_export.resources.Resource.import_obj`, and combines them @@ -284,7 +284,10 @@ class Resource(six.with_metaclass(DeclarativeMetaclass)): ``full_clean()`` method is not called, and only the errors raised by ``import_obj()`` are re-raised. """ - errors = import_validation_errors.copy() + if import_validation_errors is None: + errors = {} + else: + errors = import_validation_errors.copy() if self._meta.clean_model_instances: try: instance.full_clean(