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

Installation error "pip's dependency resolver does not currently take into account all the packages that are installed." #330

Open
ivanllampy opened this issue Jan 18, 2024 · 3 comments
Labels
bug Something isn't working external issues/bugs with other libraries, frameworks, etc.; might include reproducing an issue minimally

Comments

@ivanllampy
Copy link

ivanllampy commented Jan 18, 2024

Hi all

Describe the bug
An error occurs during installation:
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. umap-learn 0.5.4 requires tbb>=2019.0, which is not installed.

To Reproduce
Install Qurro by:
pip install qurro

Expected behavior
Qurro is expected to be installed properly

Screenshots
Not applicable

Desktop (please complete the following information):

  • OS: MacOS
  • Browser: Safari
  • Version: Ventura 13.3

Are you running Qurro through QIIME 2 or outside of QIIME 2?
Inside Qiime2 version 2023.7 and version amplicon-2023.9

What version of Qurro are you using?
I have tried installing version 0.7.0 to 0.8.0

Additional context
After the error above, for every command I ran in Qiime2 environment, a long list of error appears until I uninstall Qurro:
QIIME is caching your current deployment for improved performance. This may take a few moments and should only happen once per deployment. Traceback (most recent call last): File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/util.py", line 279, in get_plugin_manager return qiime2.sdk.PluginManager.reuse_existing() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/qiime2/sdk/plugin_manager.py", line 58, in reuse_existing raise UninitializedPluginManagerError qiime2.sdk.plugin_manager.UninitializedPluginManagerError During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/bin/qiime", line 11, in <module> sys.exit(qiime()) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/click/core.py", line 1157, in __call__ return self.main(*args, **kwargs) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/click/core.py", line 1078, in main rv = self.invoke(ctx) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/click/core.py", line 1682, in invoke cmd_name, cmd, args = self.resolve_command(ctx, args) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/click/core.py", line 1729, in resolve_command cmd = self.get_command(ctx, cmd_name) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/commands.py", line 100, in get_command plugin = self._plugin_lookup[name] File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/commands.py", line 76, in _plugin_lookup import q2cli.core.cache File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/core/cache.py", line 285, in <module> CACHE = DeploymentCache() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/core/cache.py", line 61, in __init__ self._state = self._get_cached_state(refresh=refresh) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/core/cache.py", line 107, in _get_cached_state self._cache_current_state(current_requirements) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/core/cache.py", line 205, in _cache_current_state state = self._get_current_state() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/core/cache.py", line 253, in _get_current_state plugin_manager = q2cli.util.get_plugin_manager() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/q2cli/util.py", line 291, in get_plugin_manager return qiime2.sdk.PluginManager() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/qiime2/sdk/plugin_manager.py", line 67, in __new__ self._init(add_plugins=add_plugins) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/qiime2/sdk/plugin_manager.py", line 105, in _init plugin = entry_point.load() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2518, in load return self.resolve() File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2524, in resolve module = __import__(self.module_name, fromlist=['__name__'], level=0) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/gemelli/q2/plugin_setup.py", line 13, in <module> from gemelli.ctf import (ctf, phylogenetic_ctf, File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/gemelli/ctf.py", line 2, in <module> import skbio File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/skbio/__init__.py", line 11, in <module> import skbio.io # noqa File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/skbio/io/__init__.py", line 248, in <module> import_module('skbio.io.format.lsmat') File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/importlib/__init__.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/skbio/io/format/lsmat.py", line 77, in <module> from skbio.stats.distance import DissimilarityMatrix, DistanceMatrix File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/skbio/stats/distance/__init__.py", line 197, in <module> from ._mantel import mantel, pwmantel File "/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/skbio/stats/distance/_mantel.py", line 16, in <module> from scipy.stats import ConstantInputWarning ImportError: cannot import name 'ConstantInputWarning' from 'scipy.stats' (/Users/ivanllampy/miniconda3/envs/qiime2-amplicon-2023.9/lib/python3.8/site-packages/scipy/stats/__init__.py)

Any help would be highly appreciated!
Thank you.

@ivanllampy ivanllampy added the bug Something isn't working label Jan 18, 2024
@ivanllampy
Copy link
Author

ivanllampy commented Jan 18, 2024

In addition, if install using conda, the following error appears:
`UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:
Specifications:

  • qurro -> python[version='>=3.6,<3.7.0a0|>=3.7,<3.8.0a0']
    Your python: python=3.8.18
    If python is on the left-most side of the chain, that's the version you've asked for.
    When python appears to the right, that indicates that the thing on the left is somehow
    not available for the python version you are constrained to. Note that conda will not
    change your python version to a different minor version unless you explicitly specify
    that.
    The following specifications were found to be incompatible with your system:
  • feature:/osx-64::__osx==13.3=0
  • feature:/osx-64::__unix==0=0
  • feature:|@/osx-64::__osx==13.3=0
  • feature:|@/osx-64::__unix==0=0
  • qurro -> click -> __unix
  • qurro -> click -> __win
  • qurro -> numpy[version='>=1.21.6,<2.0a0'] -> __osx[version='>=10.9']
    Your installed version is: 13.3`

It seems like there is a conflict with python version.
I am going through other threads regarding the version issue. Are there any simple fix?
Highly appreciate, and thank you!

@fedarko
Copy link
Collaborator

fedarko commented Feb 7, 2024

Hi @ivanllampy -- sorry, I lost track of this. One of the packages that Qurro depends upon (#216) requires an old version of Python, which prevents Qurro from being installed into recent QIIME 2 environments.

It should be possible for me to update Qurro and fix it to work with newer QIIME 2 environments -- I hope to do this as soon as I can. In the meantime, the workaround solutions (neither of which are ideal) involve either (1) installing an old version of QIIME 2 to run Qurro in or (2) running Qurro outside of QIIME 2. Please see this comment for details on these two workarounds.

Sorry for the trouble -- I'll try to have this resolved soon.

@fedarko fedarko added the external issues/bugs with other libraries, frameworks, etc.; might include reproducing an issue minimally label Feb 7, 2024
@ivanllampy
Copy link
Author

Thank you for your reply, I will try both options.
Looking forward to the updates!

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working external issues/bugs with other libraries, frameworks, etc.; might include reproducing an issue minimally
Projects
None yet
Development

No branches or pull requests

2 participants