Closed liamhuber closed 1 month ago
Check out this pull request on
See visual diffs & provide feedback on Jupyter Notebooks.
Powered by ReviewNB
Coverage variation | Diff coverage |
---|---|
:white_check_mark: +0.03% (target: -1.00%) | :white_check_mark: 86.00% |
Codacy will stop sending the deprecated coverage status from June 5th, 2024. Learn more
Ah, rebasing onto the other branch borked the commit history again. It's not functionally problematic, just ugly.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.
Files with Coverage Reduction | New Missed Lines | % | ||
---|---|---|---|---|
function.py | 1 | 98.08% | ||
transform.py | 1 | 96.2% | ||
semantics.py | 3 | 96.79% | ||
node.py | 6 | 94.36% | ||
run.py | 9 | 89.13% | ||
create.py | 10 | 91.95% | ||
composite.py | 11 | 92.46% | ||
<!-- | Total: | 41 | --> |
Totals | |
---|---|
Change from base Build 8976677163: | 0.03% |
Covered Lines: | 3292 |
Relevant Lines: | 3713 |
on_run
is no longer a property returning a staticmethod that will be shipped off, but we directly ship offself.on_run
soself
goes with it to remote processes. Similarly,run_args
gets extended to betuple[tuple, dict]
so positional arguments can be sent too.Stacked on top of pickleability, this means we can now use standard
concurrent.futures.ProcessPoolExecutor
-- as long as the nodes are all defined somewhere importable, i.e. not in__main__
. Since working in notebooks is pretty common, the more flexiblepympipool.Executor
is left as the defaultWorkflow.create.Executor
.This simplifies some stuff under the hood too, e.g.
Function
andComposite
now just directly do their thing inon_run
instead of needing the misdirection of returning their own static methods.