Rewrite of the Node API
Description
The Node
API used to be hard to use, not very understandable and quite inefficient.
This MR rewrites it entirely and makes aprt of it public so developers can directly use it in plugins.
Changes proposed in this merge request:
- Rewrite the
Node
API - Make part of the
Node
API public - Remove accessors to the
Node
API fromPlugin
Benchmarks
Those benchmarks are run against the latest master as an indication of what will the change be when merged
First one was run 6 times, dropping the first of each, on base-files.bst
commit | action | python_version | max_memory | time |
---|---|---|---|---|
bschubert/node-api-split - 55931ca9 | build - 12 | py37 | 190 | 94.44 |
build - 4 | py37 | 190 | 104.56 | |
build - 8 | py37 | 190 | 96.29 | |
show | py37 | 191 | 4.75 | |
show - cached | py37 | 191 | 4.82 | |
master - 199f080f | build - 12 | py37 | 184 | 94.36 |
build - 4 | py37 | 184 | 104.39 | |
build - 8 | py37 | 184 | 95.4 | |
show | py37 | 162 | 5.43 | |
show - cached | py37 | 185 | 5.28 |
Second one was run 12 times, dropping the first two of each, on debian-stack.bst
commit | action | python_version | max_memory | time |
---|---|---|---|---|
bschubert/node-api-split - 55931ca9 | show | py37 | 1616 | 66.42 |
master - 199f080f | show | py37 | 1550 | 70.79 |