summaryrefslogtreecommitdiff
path: root/buildstream/source.py
diff options
context:
space:
mode:
authorJames Ennis <james.ennis@codethink.co.uk>2019-03-06 17:09:26 +0000
committerbst-marge-bot <marge-bot@buildstream.build>2019-03-14 14:39:37 +0000
commit0535961695ee4b0185ded67bcba233e73209cfb7 (patch)
tree9bb05e99e2e415e683e5a5ce403d70c4a92b72b7 /buildstream/source.py
parentc991a066ab42b14662a798b7e0fe2dd127672395 (diff)
downloadbuildstream-jennis/remove_node_chain_stuff.tar.gz
_yaml.py: Rip out ChainMap(), node_chain_copy(), node_list_copy()jennis/remove_node_chain_stuff
This class and these two functions exist as they were intended to bring efficiency. Benchmarking this patch against the debian-stack.bst element in the debian-like project [0] showed that although this took 15M more RAM (peak usage), there was a ~20s gain in the time taken to 'show' the stack. Thus the class and functions have been removed. This also has the advantage of removing a lot of duplicate and unnecessary code. [0] https://gitlab.com/jennis/debian-stretch-bst
Diffstat (limited to 'buildstream/source.py')
-rw-r--r--buildstream/source.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/buildstream/source.py b/buildstream/source.py
index b5c38335b..af89ff8aa 100644
--- a/buildstream/source.py
+++ b/buildstream/source.py
@@ -1165,7 +1165,7 @@ class Source(Plugin):
#
def __extract_config(self, meta):
config = _yaml.node_get(self.__defaults, Mapping, 'config', default_value={})
- config = _yaml.node_chain_copy(config)
+ config = _yaml.node_copy(config)
_yaml.composite(config, meta.config)
_yaml.node_final_assertions(config)