# HG changeset patch # User Franz Glasner # Date 1557386843 -7200 # Node ID 2034da70f8fdb8c563aefd000976f5337cde2079 # Parent 0477186d1cbadc069e164736a001c0aec6b7b62c Simplify the implementation of configmix.load() and .safe_load(): this also prepare for the coming implementation of a "last" user configuration (analogout to "defaults" as the first configuration). diff -r 0477186d1cba -r 2034da70f8fd configmix/__init__.py --- a/configmix/__init__.py Wed May 08 10:18:23 2019 +0200 +++ b/configmix/__init__.py Thu May 09 09:27:23 2019 +0200 @@ -58,18 +58,11 @@ """ defaults = kwargs.get("defaults") - if not files: - if defaults is None: - return Configuration() - else: - return Configuration(defaults) if defaults is None: - start = 1 - ex = merge(None, _load_cfg_from_file(files[0])) + ex = Configuration() else: - start = 0 - ex = merge(None, defaults) - for f in files[start:]: + ex = merge(None, Configuration(defaults)) + for f in files: ex = merge(_load_cfg_from_file(f), ex) return Configuration(ex) @@ -80,18 +73,11 @@ """ defaults = kwargs.get("defaults") - if not files: - if defaults is None: - return Configuration() - else: - return Configuration(copy.deepcopy(defaults)) if defaults is None: - start = 1 - ex = safe_merge(None, _load_cfg_from_file(files[0])) + ex = Configuration() else: - start = 0 - ex = safe_merge(None, defaults) - for f in files[start:]: + ex = safe_merge(None, Configuration(defaults)) + for f in files: ex = safe_merge(_load_cfg_from_file(f), ex) return Configuration(ex)