sgoldenlab / simba

SimBA (Simple Behavioral Analysis), a pipeline and GUI for developing supervised behavioral classifiers
https://simba-uw-tf-dev.readthedocs.io/
GNU General Public License v3.0
290 stars 141 forks source link

Dependency Conflicts During Installation #207

Closed carson2stoker closed 2 years ago

carson2stoker commented 2 years ago

Describe the bug I have multiple dependency conflicts during installation when using anaconda. I am trying to install in my home directory on a cluster so I have the correct permissions. The current conflict is with numpy.

The conflict is caused by:
    simba-uw-tf 1.0.3 depends on numpy==1.18.1
    deeplabcut 2.0.9 depends on numpy~=1.14.5

To Reproduce Steps to reproduce the behavior:

  1. create new conda environment
  2. activate environment
  3. type 'pip install simba-uw-tf'
  4. See error

Expected behavior simba installs without issue

Desktop (please complete the following information):

The full terminal output is posted below under Logs.

Logs ``` (base) [u1208563@notchpeak1:~]$ salloc --time=4:00:00 --account=notchpeak-gpu --partition=notchpeak-gpu --nodes=1 --ntasks=1 --mem=60G --gres=gpu:2080ti:1 salloc: Pending job allocation 5090324 salloc: job 5090324 queued and waiting for resources salloc: job 5090324 has been allocated resources salloc: Granted job allocation 5090324 salloc: Waiting for resource configuration salloc: Nodes notch004 are ready for job (base) [u1208563@notch004:~]$ conda env list # conda environments: # base * /uufs/chpc.utah.edu/common/home/u1208563/miniconda3 bento /uufs/chpc.utah.edu/common/home/u1208563/miniconda3/envs/bento sleap /uufs/chpc.utah.edu/common/home/u1208563/miniconda3/envs/sleap (base) [u1208563@notch004:~]$ conda create --name simba python=3.6 Collecting package metadata (current_repodata.json): done Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source. Collecting package metadata (repodata.json): done Solving environment: done ## Package Plan ## environment location: /uufs/chpc.utah.edu/common/home/u1208563/miniconda3/envs/simba added / updated specs: - python=3.6 The following NEW packages will be INSTALLED: _libgcc_mutex pkgs/main/linux-64::_libgcc_mutex-0.1-main _openmp_mutex pkgs/main/linux-64::_openmp_mutex-5.1-1_gnu ca-certificates pkgs/main/linux-64::ca-certificates-2022.07.19-h06a4308_0 certifi pkgs/main/linux-64::certifi-2021.5.30-py36h06a4308_0 ld_impl_linux-64 pkgs/main/linux-64::ld_impl_linux-64-2.38-h1181459_1 libffi pkgs/main/linux-64::libffi-3.3-he6710b0_2 libgcc-ng pkgs/main/linux-64::libgcc-ng-11.2.0-h1234567_1 libgomp pkgs/main/linux-64::libgomp-11.2.0-h1234567_1 libstdcxx-ng pkgs/main/linux-64::libstdcxx-ng-11.2.0-h1234567_1 ncurses pkgs/main/linux-64::ncurses-6.3-h5eee18b_3 openssl pkgs/main/linux-64::openssl-1.1.1q-h7f8727e_0 pip pkgs/main/linux-64::pip-21.2.2-py36h06a4308_0 python pkgs/main/linux-64::python-3.6.13-h12debd9_1 readline pkgs/main/linux-64::readline-8.1.2-h7f8727e_1 setuptools pkgs/main/linux-64::setuptools-58.0.4-py36h06a4308_0 sqlite pkgs/main/linux-64::sqlite-3.39.2-h5082296_0 tk pkgs/main/linux-64::tk-8.6.12-h1ccaba5_0 wheel pkgs/main/noarch::wheel-0.37.1-pyhd3eb1b0_0 xz pkgs/main/linux-64::xz-5.2.5-h7f8727e_1 zlib pkgs/main/linux-64::zlib-1.2.12-h7f8727e_2 Proceed ([y]/n)? y Preparing transaction: done Verifying transaction: done Executing transaction: done # # To activate this environment, use # # $ conda activate simba # # To deactivate an active environment, use # # $ conda deactivate (base) [u1208563@notch004:~]$ conda activate simba (simba) [u1208563@notch004:~]$ pip install simba-uw-tf Collecting simba-uw-tf Using cached Simba_UW_tf-1.3.12-py3-none-any.whl (7.3 MB) Collecting numexpr==2.6.9 Using cached numexpr-2.6.9-cp36-cp36m-manylinux1_x86_64.whl (163 kB) Collecting matplotlib==3.0.3 Using cached matplotlib-3.0.3-cp36-cp36m-manylinux1_x86_64.whl (13.0 MB) Collecting dash==1.14.0 Using cached dash-1.14.0-py3-none-any.whl Collecting opencv-python==3.4.5.20 Using cached opencv_python-3.4.5.20-cp36-cp36m-manylinux1_x86_64.whl (25.4 MB) Collecting xgboost==0.90 Using cached xgboost-0.90-py2.py3-none-manylinux1_x86_64.whl (142.8 MB) Collecting imutils==0.5.2 Using cached imutils-0.5.2-py3-none-any.whl Collecting deeplabcut==2.0.8 Using cached deeplabcut-2.0.8-py3-none-any.whl (178 kB) Collecting imblearn==0.0 Using cached imblearn-0.0-py2.py3-none-any.whl (1.9 kB) Collecting tabulate==0.8.3 Using cached tabulate-0.8.3-py3-none-any.whl Collecting pyarrow==0.17.1 Using cached pyarrow-0.17.1-cp36-cp36m-manylinux2014_x86_64.whl (63.8 MB) Collecting scikit-image==0.14.2 Using cached scikit_image-0.14.2-cp36-cp36m-manylinux1_x86_64.whl (25.3 MB) Collecting dash-colorscales==0.0.4 Using cached dash_colorscales-0.0.4-py3-none-any.whl Collecting tqdm==4.30.0 Using cached tqdm-4.30.0-py2.py3-none-any.whl (47 kB) Collecting h5py==2.9.0 Using cached h5py-2.9.0-cp36-cp36m-manylinux1_x86_64.whl (2.8 MB) Collecting shapely==1.7 Using cached Shapely-1.7.0-cp36-cp36m-manylinux1_x86_64.whl (1.8 MB) Collecting shap==0.35.0 Using cached shap-0.35.0-cp36-cp36m-linux_x86_64.whl Collecting scipy==1.1.0 Using cached scipy-1.1.0-cp36-cp36m-manylinux1_x86_64.whl (31.2 MB) Collecting dash-core-components==1.10.2 Using cached dash_core_components-1.10.2-py3-none-any.whl Collecting protobuf==3.6.0 Using cached protobuf-3.6.0-cp36-cp36m-manylinux1_x86_64.whl (7.1 MB) Collecting dtreeviz==0.8.1 Using cached dtreeviz-0.8.1-py3-none-any.whl Collecting statsmodels==0.9.0 Using cached statsmodels-0.9.0-cp36-cp36m-manylinux1_x86_64.whl (7.4 MB) Collecting tensorflow-gpu==1.14.0 Using cached tensorflow_gpu-1.14.0-cp36-cp36m-manylinux1_x86_64.whl (377.0 MB) Collecting wxpython==4.0.4 Using cached wxPython-4.0.4.tar.gz (68.8 MB) Collecting pandas==0.25.3 Using cached pandas-0.25.3-cp36-cp36m-manylinux1_x86_64.whl (10.4 MB) Collecting pyyaml==5.3.1 Using cached PyYAML-5.3.1-cp36-cp36m-linux_x86_64.whl Collecting graphviz==0.11 Using cached graphviz-0.11-py2.py3-none-any.whl (17 kB) Collecting plotly==4.9.0 Using cached plotly-4.9.0-py2.py3-none-any.whl (12.9 MB) Collecting seaborn==0.9.0 Using cached seaborn-0.9.0-py3-none-any.whl (208 kB) Collecting dash-html-components==1.0.3 Using cached dash_html_components-1.0.3-py3-none-any.whl Collecting deepposekit==0.3.5 Using cached deepposekit-0.3.5-py3-none-any.whl Collecting dash-color-picker==0.0.1 Using cached dash_color_picker-0.0.1-py3-none-any.whl Collecting scikit-learn==0.22.2 Using cached scikit_learn-0.22.2-cp36-cp36m-manylinux1_x86_64.whl (7.1 MB) Collecting eli5==0.10.1 Using cached eli5-0.10.1-py2.py3-none-any.whl (105 kB) Collecting imgaug==0.4.0 Using cached imgaug-0.4.0-py2.py3-none-any.whl (948 kB) Collecting cefpython3==66.0 Using cached cefpython3-66.0-py2.py3-none-manylinux1_x86_64.whl (79.6 MB) Collecting numba==0.48.0 Using cached numba-0.48.0-1-cp36-cp36m-manylinux2014_x86_64.whl (3.5 MB) Collecting Pillow==5.4.1 Using cached Pillow-5.4.1-cp36-cp36m-manylinux1_x86_64.whl (2.0 MB) Collecting yellowbrick==0.9.1 Using cached yellowbrick-0.9.1-py2.py3-none-any.whl (282 kB) Collecting future Using cached future-0.18.2-py3-none-any.whl Collecting flask-compress Using cached Flask_Compress-1.12-py3-none-any.whl (7.9 kB) Collecting dash-renderer==1.6.0 Using cached dash_renderer-1.6.0-py3-none-any.whl Collecting dash-table==4.9.0 Using cached dash_table-4.9.0-py3-none-any.whl Collecting Flask>=1.0.2 Using cached Flask-2.0.3-py3-none-any.whl (95 kB) Collecting numpy==1.14.5 Using cached numpy-1.14.5-cp36-cp36m-manylinux1_x86_64.whl (12.2 MB) Collecting chardet==3.0.4 Using cached chardet-3.0.4-py2.py3-none-any.whl (133 kB) Collecting python-dateutil==2.7.3 Using cached python_dateutil-2.7.3-py2.py3-none-any.whl (211 kB) INFO: pip is looking at multiple versions of dash-table to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dash-renderer to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dash-html-components to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dash-core-components to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dash-colorscales to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dash-color-picker to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dash to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of cefpython3 to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of simba-uw-tf to determine which version is compatible with other requirements. This could take a while. Collecting simba-uw-tf Using cached Simba_UW_tf-1.3.11-py3-none-any.whl (7.3 MB) Collecting deeplabcut==2.0.9 Using cached deeplabcut-2.0.9-py3-none-any.whl (187 kB) Collecting intel-openmp Using cached intel_openmp-2022.1.0-py2.py3-none-manylinux1_x86_64.whl (10.7 MB) Requirement already satisfied: setuptools in ./miniconda3/envs/simba/lib/python3.6/site-packages (from deeplabcut==2.0.9->simba-uw-tf) (58.0.4) Collecting ipython~=6.0.0 Using cached ipython-6.0.0-py3-none-any.whl (736 kB) Collecting patsy Using cached patsy-0.5.2-py2.py3-none-any.whl (233 kB) Requirement already satisfied: certifi in ./miniconda3/envs/simba/lib/python3.6/site-packages (from deeplabcut==2.0.9->simba-uw-tf) (2021.5.30) Collecting requests Using cached requests-2.27.1-py2.py3-none-any.whl (63 kB) Collecting six~=1.11.0 Using cached six-1.11.0-py2.py3-none-any.whl (10 kB) Collecting tensorpack~=0.9.7.1 Using cached tensorpack-0.9.7.1-py2.py3-none-any.whl (286 kB) Collecting numpy~=1.14.5 Using cached numpy-1.14.6-cp36-cp36m-manylinux1_x86_64.whl (13.8 MB) Collecting click Using cached click-8.0.4-py3-none-any.whl (97 kB) Collecting easydict~=1.7 Using cached easydict-1.9-py3-none-any.whl Collecting ipython-genutils~=0.2.0 Using cached ipython_genutils-0.2.0-py2.py3-none-any.whl (26 kB) Collecting wheel~=0.31.1 Using cached wheel-0.31.1-py2.py3-none-any.whl (41 kB) Collecting moviepy~=0.2.3.5 Using cached moviepy-0.2.3.5-py3-none-any.whl Collecting tables Using cached tables-3.7.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (6.0 MB) Collecting python-dateutil~=2.7.3 Using cached python_dateutil-2.7.5-py2.py3-none-any.whl (225 kB) Collecting simba-uw-tf Using cached Simba_UW_tf-1.3.10-py3-none-any.whl (7.3 MB) Using cached Simba_UW_tf-1.2.31-py3-none-any.whl (4.6 MB) Collecting numpy==1.18.1 Using cached numpy-1.18.1-cp36-cp36m-manylinux1_x86_64.whl (20.1 MB) Collecting simba-uw-tf Using cached Simba_UW_tf-1.2.30-py3-none-any.whl (4.6 MB) Using cached Simba_UW_tf-1.2.29-py3-none-any.whl (3.4 MB) Collecting h5py~=2.7 Using cached h5py-2.10.0-cp36-cp36m-manylinux1_x86_64.whl (2.9 MB) Collecting simba-uw-tf Using cached Simba_UW_tf-1.2.28-py3-none-any.whl (3.4 MB) Using cached Simba_UW_tf-1.2.27-py3-none-any.whl (3.4 MB) INFO: pip is looking at multiple versions of simba-uw-tf to determine which version is compatible with other requirements. This could take a while. Using cached Simba_UW_tf-1.2.26-py3-none-any.whl (3.4 MB) Using cached Simba_UW_tf-1.2.24-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.23-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.22-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.21-py3-none-any.whl (3.3 MB) INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. If you want to abort this run, you can press Ctrl + C to do so. To improve how pip performs, tell us what happened here: https://pip.pypa.io/surveys/backtracking Using cached Simba_UW_tf-1.2.20-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.19-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.18-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.17-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.16-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.15-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.14-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.13-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.12.1-py3-none-any.whl (4.6 MB) Collecting scikit-learn~=0.19.2 Using cached scikit_learn-0.19.2-cp36-cp36m-manylinux1_x86_64.whl (4.9 MB) Collecting ruamel.yaml~=0.15 Using cached ruamel.yaml-0.17.21-py3-none-any.whl (109 kB) Collecting imageio~=2.3.0 Using cached imageio-2.3.0-py2.py3-none-any.whl (3.3 MB) Collecting colour Using cached colour-0.1.5-py2.py3-none-any.whl (23 kB) Collecting attrs>16.0.0 Using cached attrs-22.1.0-py2.py3-none-any.whl (58 kB) Collecting jinja2 Using cached Jinja2-3.0.3-py3-none-any.whl (133 kB) Collecting imbalanced-learn Using cached imbalanced_learn-0.9.1-py3-none-any.whl (199 kB) INFO: pip is looking at multiple versions of imblearn to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of h5py to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of graphviz to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of eli5 to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of dtreeviz to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of deepposekit to determine which version is compatible with other requirements. This could take a while. INFO: pip is looking at multiple versions of deeplabcut to determine which version is compatible with other requirements. This could take a while. Collecting simba-uw-tf Using cached Simba_UW_tf-1.2.12-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.11-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.10-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.9.2-py3-none-any.whl (4.6 MB) Using cached Simba_UW_tf-1.2.9-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.8-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.7-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.6-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.5-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.4.3-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.4.2-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.4.1-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.13-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.12-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.11-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.10-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.9-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.8-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.7-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.6-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.5-py3-none-any.whl (3.3 MB) Using cached Simba_UW_tf-1.2.3.4-py3-none-any.whl (2.2 MB) Using cached Simba_UW_tf-1.2.3.3-py3-none-any.whl (2.2 MB) Using cached Simba_UW_tf-1.2.3-py3-none-any.whl (2.2 MB) Using cached Simba_UW_tf-1.2.2-py3-none-any.whl (2.2 MB) Using cached Simba_UW_tf-1.2.1-py3-none-any.whl (2.2 MB) Using cached Simba_UW_tf-1.2.0-py3-none-any.whl (1.9 MB) Using cached Simba_UW_tf-1.1.7-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.1.6-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.1.1-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.1.0-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.0.9-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.0.7-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.0.6-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.0.5-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.0.4-py3-none-any.whl (2.3 MB) Using cached Simba_UW_tf-1.0.3-py3-none-any.whl (2.3 MB) ERROR: Cannot install simba-uw-tf and simba-uw-tf==1.0.3 because these package versions have conflicting dependencies. The conflict is caused by: simba-uw-tf 1.0.3 depends on numpy==1.18.1 deeplabcut 2.0.9 depends on numpy~=1.14.5 To fix this you could try to: 1. loosen the range of package versions you've specified 2. remove package versions to allow pip attempt to solve the dependency conflict ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies ```

I've tried all the things suggested about this issue on the FAQ page. I've also looked through the Issues page and tried a few things suggested there, but none of those things worked. I don't have much experience with installing over the command line or dependency conflict resolution, so any help will be greatly appreciated, thanks!

sronilsson commented 2 years ago

Hi @carson2stoker ! Use pip install simba-uw-tf-dev instead. The simba-uw-tf has not been maintained for some time.

carson2stoker commented 2 years ago

Hi, thanks that worked. Initially when I used pip install simba-uw-tf-dev I got a different error saying 'failed building wheel for wxpython'. I used the fix used in #154 by installing wxpython with the command 'conda install -c anaconda wxpython==4.0.4' and then reinstalling simba. I have it installed now, thank you. Although I would suggest updating your installation documentation if 'simba-uw-tf' is so far out of date.

sronilsson commented 2 years ago

Hi @carson2stoker - thanks! Yes, it's sometimes difficult for me to keep up. Have you got a link to the doc where simba-uw-tf is mentioned, and I will remove it?

carson2stoker commented 2 years ago

Yes. It's here https://github.com/sgoldenlab/simba/blob/master/docs/anaconda_installation.md and here https://github.com/sgoldenlab/simba/blob/master/docs/installation.md

sronilsson commented 2 years ago

Thank you!