You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently we wrap callables in Delayed, before storing them as "providers". Before dropping injector (in #6) this was necessary. Now we find dependencies manually in Container, so we could delay tasks later. This would have some advantages:
Better type hints. Delayed is not generic yet, so currently internals of Delayed are all hinted with a plain Delayed.
No hack using @wraps instead of using dask.delayed directly.
More flexibility for doing things other than building a dask graph (without hacks). For example, we could build a custom visualization more easily.
To make this change, Container needs to switch to recursively building a dict of functions and their dependencies, without calling the functions directly. This may be similar to a task dict that dask uses for defining task graphs.
The text was updated successfully, but these errors were encountered:
Currently we wrap callables in
Delayed
, before storing them as "providers". Before droppinginjector
(in #6) this was necessary. Now we find dependencies manually inContainer
, so we could delay tasks later. This would have some advantages:Delayed
is not generic yet, so currently internals ofDelayed
are all hinted with a plainDelayed
.@wraps
instead of usingdask.delayed
directly.To make this change,
Container
needs to switch to recursively building a dict of functions and their dependencies, without calling the functions directly. This may be similar to a task dict thatdask
uses for defining task graphs.The text was updated successfully, but these errors were encountered: