-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/optional dependencies #269
Conversation
Some more questions:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me! I see we mention eccodes twice as a dependency (generally, and for BUFR support). Is that because BUFR support might require a newer version? I'd say that since both instances of the eccodes dep currently require the same version, we could drop it as a separate dep for BUFR.
Fixed now! |
Great, I think we're ready to merge then. Nice work! |
Thank you! What do you think about the questions above? |
Sorry, I did not notice those questions.
I think for now they should be always there, as they are 'core' data types that we support, and the dependencies are easy to install everywhere.
Good question. Probably 'earthkit' should install all, and ek-maps should be more conservative, but this is a slightly different question from this specific PR. And it depends a bit on whether lacking the binary dependencies would cause an error during 'import earthkit.data' in the 'all' case.
Probably it should use 'all', but this will not work (yet) in practice because we do not have all the binaries available on conda-forge (e.g. odc, fdb). Once we have our own conda channel up and running, we will be able to do this. So, we should just put all the dependencies that are available on conda-forge as dependencies of the conda-forge package. |
'import earthkit.data' should be fine even when the binary dependencies are missing. This PR is only addressing the Python dependencies. |
Fixes #252
See docs at: https://earthkit-data--269.org.readthedocs.build/en/269/install.html
The optional Python dependencies are now controlled in
setup.cfg
.By default when installed from PyPI we get a minimal version:
Optional dependencies can be installed as: