diff options
author | James Ennis <james.ennis@codethink.co.uk> | 2019-03-06 17:09:26 +0000 |
---|---|---|
committer | bst-marge-bot <marge-bot@buildstream.build> | 2019-03-14 14:39:37 +0000 |
commit | 0535961695ee4b0185ded67bcba233e73209cfb7 (patch) | |
tree | 9bb05e99e2e415e683e5a5ce403d70c4a92b72b7 /buildstream/source.py | |
parent | c991a066ab42b14662a798b7e0fe2dd127672395 (diff) | |
download | buildstream-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.py | 2 |
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) |