Open soxofaan opened 4 years ago
@soxofaan yes absolutely I think we have dask[complete] only because initially I had some issues installing dask with conda,but at least for now only a small part of dask is needed and I like the approach with the optional dependencies
I'm investigating if openeo-processes-python would be useful to add to the VITO backend in some form and I found that the set of dependencies of openeo-processes-python is quite heavy.
Installation in a fresh virtual env results in these dependencies:
There is a lot in that list (e.g. bokeh, click, jinja2, msgpack, PyYAML, tornado, tblib, psutil, MarkupSafe, locket ...) that quite far from the core functionality we're looking for: implementation of basic openEO (math) processes.
The direct dependencies are currently just: https://github.com/Open-EO/openeo-processes-python/blob/38c6eea5d8f09a348a63e96f967ae68fb777a8d1/setup.cfg#L29-L33
I guess the
dask[complete]
is the one that drags in all these other dependenciesFirst: is there an important reason to depend on
dask[complete]
? These are the only dask related lines in the whole repo:So why not just depend on
dask[array]
?Furthermore, would there be interest in making these dependencies on dask, xarray optional? The end user can then cherry-pick which calculation "backends" and dependencies he drags into his project. For example:
pip install openeo-processes-python
would support just the numpy stuffpip install openeo-processes-python[xarray]
would support xarray as wellpip install openeo-processes-python[dask]
would support dask as well