jbusecke / pangeo-forge-esgf

Using queries to the ESGF API to generate urls and keyword arguments for receipe generation in pangeo-forge
Apache License 2.0
6 stars 4 forks source link

dependency issue #7

Closed rahulsivankutty closed 1 year ago

rahulsivankutty commented 1 year ago

Hi, I am getting this dependency issue while installing via pip

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. requests 2.26.0 requires charset-normalizer~=2.0.0; python_version >= "3", but you have charset-normalizer 2.1.1 which is incompatible. prefect 0.15.3 requires requests<2.26,>=2.20, but you have requests 2.26.0 which is incompatible. msal-extensions 0.3.0 requires portalocker~=1.0; platform_system != "Windows", but you have portalocker 2.3.0 which is incompatible.

This I think is creating the following error when trying to load 'parse_instance_ids'

from pangeo_forge_esgf.parsing import parse_instance_ids


TypeError Traceback (most recent call last) /tmp/ipykernel_331/23446803.py in ----> 1 from pangeo_forge_esgf.parsing import parse_instance_ids

/srv/conda/envs/notebook/lib/python3.8/site-packages/pangeo_forge_esgf/parsing.py in 24 25 ---> 26 def parse_instance_ids(iid: str) -> list[str]: 27 """Parse an instance id with wildcards""" 28 facets = facets_from_iid(iid)

TypeError: 'type' object is not subscriptable

jbusecke commented 1 year ago

Are you using this on windows? I unfortunately have little experience with running anything on windows these days. I wonder though if a conda-forge distro might help?

Just to double check, can you post a reproducible code snippet so I can confirm that this does not happen on unix systems?

rahulsivankutty commented 1 year ago

Hi Julius, Many thanks for the reply. I am running this on Linux, but through Jupyter running on a kubernetes pod. Just loading the module after installation gives me this error

!pip install git+https://github.com/jbusecke/pangeo-forge-esgf.git from pangeo_forge_esgf.parsing import parse_instance_ids

When I tried installing the version in pypi, I got the error 'no module named pangeo_forge_esgf.parsing'

jbusecke commented 1 year ago

When I tried installing the version in pypi, I got the error 'no module named pangeo_forge_esgf.parsing'

Yep the last release did not include the module at all, that is correct.

When installing from main I actually ran into another dependency error (requests is missing). I will start a PR and actually add some rudimentary tests. Ill report back once that is done, and hopefully that will resolve your issue. Sorry for the inconvenience.

jbusecke commented 1 year ago

Hi @rahulsivankutty, could you try installing from #8 and see if that fixes your issue? I can also merge it now if that helps you with testing.

rahulsivankutty commented 1 year ago

Many thanks @jbusecke. I could use this branch without any error (Not in the original location as I lost access to the server temporarily due to a maintenance which is going on. I tried it in another Linux platform and didn't get any issue)

jbusecke commented 1 year ago

Ok that sounds promising. I will then merge this and issue a bugfix release. I will close this now, but feel free to reopen if the problem returns/persists with the released version!