Skip to content
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

Installing from conda broken, because of version spec #224

Closed
pmrv opened this issue Sep 17, 2023 · 2 comments
Closed

Installing from conda broken, because of version spec #224

pmrv opened this issue Sep 17, 2023 · 2 comments

Comments

@pmrv
Copy link
Contributor

pmrv commented Sep 17, 2023

I've installed pysqa==0.1.1 (as a dep of pyiron_atomistics) in a clean environment from conda forge. Importing then fails with this

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
Cell In[2], line 1
----> 1 import pysqa

File /srv/conda/envs/notebook/lib/python3.11/site-packages/pysqa/__init__.py:5
      2 __all__ = []
      4 from pysqa.queueadapter import QueueAdapter
----> 5 from pysqa.executor.executor import Executor
      7 from ._version import get_versions
      9 __version__ = get_versions()["version"]

File /srv/conda/envs/notebook/lib/python3.11/site-packages/pysqa/executor/executor.py:5
      2 import queue
      3 from concurrent.futures import Future, Executor as FutureExecutor
----> 5 from pympipool import cancel_items_in_queue, RaisingThread
      6 from pysqa.executor.helper import (
      7     reload_previous_futures,
      8     find_executed_tasks,
      9     serialize_funct,
     10     write_to_file,
     11 )
     14 class Executor(FutureExecutor):

ImportError: cannot import name 'cancel_items_in_queue' from 'pympipool' (/srv/conda/envs/notebook/lib/python3.11/site-packages/pympipool/__init__.py)

because conda installs pympipool==0.7.0 by default, which is incompatible.

I know how to fix this, but I'm posting anyway, because (I assume) this only happens because of our weird practice of leaving the upper version bound of our deps open and bumping the lower one. I've maintained for a while that we should instead bump the upper bound instead. This gives a nice example of why it is better. In that scheme this error would never happen. I will look into how we can do this with dependabot if I have time.

In practical terms, I guess #218 will fix the issue.

@pmrv
Copy link
Contributor Author

pmrv commented Sep 17, 2023

Apparently dependabot can deal with version ranges and the behaviour I mentioned can be set by specifying versioning-strategy as widen somewhere in its config. That's what I can find out for now.

@jan-janssen
Copy link
Member

In practical terms, I guess #218 will fix the issue.

Done - the issue is fixed in pysqa 0.1.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants