Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Create conda environment: "Found conflicts!" when solving environment and "Finding shortest conflict path" running forever

I was provided with an environment.ubuntu.yml file to be able to create a conda environment. However, running conda create env --file environment.ubuntu.yml I get the following output:

conda env create --file environment.ubuntu.yml Collecting package metadata (repodata.json): done Solving environment: -  Found conflicts! Looking for incompatible packages. This can take several minutes.  Press CTRL-C to abort. Examining fontconfig:   5%|▉                 | 10/202 [00:00<00:00, 5393.91it/ ] Comparing specs that have this dependency:   0%|         | 0/12 [00:00<?, ?it/s] Finding shortest confli|  path for fontconfig==2.13.1=he4413a7_1000:  12%|▏| 1/8 Finding shortest conflict path for fontconfig==2.13.1=he4413a7_1000:  25%|▎| 2/8 Finding shortest conflict pa/  for fontconfig[version='>=2.13.0,<3.0a0']:  25%| Finding shortest conflict path for fontconfig[version='>=2.13.0,<3.0a0']:  38%| Finding shortest conf- ct path for fontconfig[version='>=2.11.1']:  38%|▍| 3/8 [ Finding shortest conflict path for fontconfig[version='>=2.11.1']:  50%|▌| 4/8 [ Finding shortest conflict pa|  for fontconfig[version='>=2.12.4,<3.0a0']:  50%| ... 

The Finding shortest conflict path goes on for a long time - apparently it is trying to resolve some dependency issues. Running for 2 hours it is not clear if it will ever stop.

My question is: what is happening here and can I somehow manually speed up this process, e.g. by removing unnecessary dependencies? Since I did not create the environment I don't know which are actually necessary.

The reason why I'm curious is because it is checking conflict paths like fontconfig[version='>=2.12.6,<3.0a0'] when the one in dependencies is 2.13.1 and I have installed it through 2.13.1

Please find below the .yml file for reference.

name: cea channels:   - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free   - dlr-sc   - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main   - conda-forge   - conda-forge/label/gcc7   - defaults dependencies:   - attrs=19.1.0=py_0   - backports=1.0=py_2   - backports.functools_lru_cache=1.5=py_1   - backports_abc=0.5=py_1   - boost-cpp=1.68.0=h11c811c_1000   - bzip2=1.0.6=h14c3975_1002   - ca-certificates=2019.3.9=hecc5488_0   - cairo=1.14.12=h80bd089_1005   - certifi=2019.3.9=py27_0   - click=7.0=py_0   - click-plugins=1.0.4=py_0   - cligj=0.5.0=py_0   - curl=7.64.1=hf8cf82a_0   - cycler=0.10.0=py_1   - descartes=1.1.0=py_2   - enum34=1.1.6=py27_1001   - expat=2.2.5=hf484d3e_1002   - fiona=1.8.6=py27hf242f0b_2   - fontconfig=2.13.1=he4413a7_1000   - freetype=2.10.0=he983fc9_0   - freexl=1.0.5=h14c3975_1002   - functools32=3.2.3.2=py_3   - futures=3.2.0=py27_1000   - gdal=2.4.1=py27h5f563d9_8   - geopandas=0.4.1=py_1   - geos=3.7.1=hf484d3e_1000   - geotiff=1.4.3=h1105359_1000   - gettext=0.19.8.1=hc5be6a0_1002   - giflib=5.1.7=h516909a_1   - glib=2.56.2=had28632_1001   - hdf4=4.2.13=h9a582f1_1002   - hdf5=1.10.4=nompi_h3c11f04_1106   - icu=58.2=hf484d3e_1000   - jpeg=9c=h14c3975_1001   - json-c=0.13.1=h14c3975_1001   - kealib=1.4.10=h1978553_1003   - kiwisolver=1.0.1=py27h6bb024c_1002   - krb5=1.16.3=h05b26f9_1001   - libblas=3.8.0=4_openblas   - libcblas=3.8.0=4_openblas   - libcurl=7.64.1=hda55be3_0   - libdap4=3.19.1=hd48c02d_1000   - libedit=3.1.20170329=hf8c457e_1001   - libffi=3.2.1=he1b5a44_1006   - libgdal=2.4.1=heae24aa_8   - libiconv=1.15=h516909a_1005   - libkml=1.3.0=h328b03d_1009   - liblapack=3.8.0=4_openblas   - libnetcdf=4.6.2=hbdf4f91_1001   - libpng=1.6.36=h84994c4_1000   - libpq=11.2=h4770945_0   - libspatialindex=1.9.0=he1b5a44_0   - libspatialite=4.3.0a=hb5ec416_1026   - libssh2=1.8.2=h22169c7_2   - libtiff=4.0.10=h648cc4a_1001   - libuuid=2.32.1=h14c3975_1000   - libxcb=1.13=h14c3975_1002   - libxml2=2.9.8=h143f9aa_1005   - mapclassify=1.0.1=py27_1   - matplotlib=2.2.3=py27h8a2030e_1   - matplotlib-base=2.2.3=py27h60b886d_1   - munch=2.3.2=py_0   - ncurses=6.1=hf484d3e_1002   - numpy=1.16.2=py27h8b7e671_1   - openblas=0.3.5=h9ac9557_1001   - openjpeg=2.3.0=hf38bd82_1003   - openssl=1.1.1b=h14c3975_1   - pandas=0.24.2=py27hf484d3e_0   - pip=19.0.3=py27_0   - pixman=0.34.0=h14c3975_1003   - poppler=0.67.0=h2fc8fa2_1002   - poppler-data=0.4.9=1   - postgresql=11.2=h61314c7_0   - proj4=5.2.0=h14c3975_1001   - pthread-stubs=0.4=h14c3975_1001   - pyparsing=2.3.1=py_0   - pyproj=1.9.6=py27hc0953d3_1000   - pyqt=5.6.0=py27h13b7fb3_1008   - python=2.7.15=h721da81_1008   - python-dateutil=2.8.0=py_0   - pytz=2018.9=py_0   - readline=7.0=hf8c457e_1001   - rtree=0.8.3=py27h666c49c_1002   - scipy=1.2.1=py27h09a28d5_1   - setuptools=40.8.0=py27_0   - shapely=1.6.4=py27h2afed24_1003   - singledispatch=3.4.0.3=py27_1000   - sip=4.18.1=py27hf484d3e_1000   - six=1.12.0=py27_1000   - sqlite=3.26.0=h67949de_1001   - subprocess32=3.5.3=py27h14c3975_0   - tbb=2019.5=hc9558a2_0   - tk=8.6.9=h84994c4_1001   - tornado=5.1.1=py27h14c3975_1000   - tzcode=2018g=h14c3975_1001   - wheel=0.33.1=py27_0   - xerces-c=3.2.2=hac72e42_1001   - xorg-kbproto=1.0.7=h14c3975_1002   - xorg-libice=1.0.9=h516909a_1004   - xorg-libsm=1.2.3=h84519dc_1000   - xorg-libx11=1.6.7=h14c3975_1000   - xorg-libxau=1.0.9=h14c3975_0   - xorg-libxdmcp=1.1.3=h516909a_0   - xorg-libxext=1.3.4=h516909a_0   - xorg-libxrender=0.9.10=h516909a_1002   - xorg-renderproto=0.11.1=h14c3975_1002   - xorg-xextproto=7.3.0=h14c3975_1002   - xorg-xproto=7.0.31=h14c3975_1007   - xz=5.2.4=h14c3975_1001   - zlib=1.2.11=h14c3975_1004   - freeimageplus=3.18.0=hf484d3e_2   - gl2ps=1.3.8=h14c3975_4   - oce=0.17.2=h6bb024c_10   - pythonocc-core=0.17=py27_1   - mkl=2017.0.3=0   - mkl-service=1.1.2=py27_3   - dbus=1.13.2=h714fa37_1   - gst-plugins-base=1.14.0=hbbd80ab_1   - gstreamer=1.14.0=hb453b48_1   - libgcc-ng=8.2.0=hdf63c60_1   - libgfortran-ng=7.3.0=hdf63c60_0   - libstdcxx-ng=8.2.0=hdf63c60_1   - pcre=8.43=he6710b0_0   - qt=5.6.3=h8bf5577_3   - pip:     - alabaster==0.7.12     - babel==2.6.0     - backports.shutil-get-terminal-size==1.0.0     - bleach==3.1.0     - chardet==3.0.4     - cloudpickle==0.8.1     - configparser==3.7.4     - cvxopt==1.2.3     - decorator==4.4.0     - defusedxml==0.5.0     - docutils==0.14     - doit==0.29.0     - entrypoints==0.3     - ephem==3.7.6.0     - funcsigs==1.0.2     - h5py==2.9.0     - idna==2.8     - imagesize==1.1.0     - importlib-resources==1.0.2     - ipaddress==1.0.22     - ipykernel==4.10.0     - ipython==5.8.0     - ipython-genutils==0.2.0     - ipywidgets==7.4.2     - jinja2==2.10     - joblib==0.12.5     - jsonschema==3.0.1     - jupyter==1.0.0     - jupyter-client==5.2.4     - jupyter-console==5.2.0     - jupyter-core==4.4.0     - llvmlite==0.28.0     - lxml==4.3.3     - markupsafe==1.1.1     - mistune==0.8.4     - mock==2.0.0     - nbconvert==5.4.1     - nbformat==4.4.0     - networkx==2.2     - notebook==5.7.8     - numba==0.43.1     - packaging==19.0     - pandocfilters==1.4.2     - pathlib2==2.3.3     - patsy==0.5.1     - pbr==5.1.3     - pexpect==4.6.0     - pickleshare==0.7.5     - pkginfo==1.5.0.1     - plotly==3.7.1     - prometheus-client==0.6.0     - prompt-toolkit==1.0.15     - ptyprocess==0.6.0     - py4design==0.27     - pycollada==0.6     - pygments==2.3.1     - pyinotify==0.9.6     - pymc3==3.6     - pymf==0.1.9     - pyrsistent==0.14.11     - pysal==1.14.4.post2     - pyshp==2.1.0     - pyyaml==5.1     - pyzmq==18.0.1     - qtconsole==4.4.3     - readme-renderer==24.0     - requests==2.21.0     - requests-toolbelt==0.9.1     - retrying==1.3.3     - salib==1.2     - scandir==1.10.0     - scikit-learn==0.20.3     - seaborn==0.9.0     - send2trash==1.5.0     - simplegeneric==0.8.1     - snowballstemmer==1.2.1     - sphinx==1.8.5     - sphinxcontrib-websupport==1.1.0     - terminado==0.8.2     - testpath==0.4.2     - theano==1.0.4     - timezonefinder==4.0.1     - tqdm==4.31.1     - traitlets==4.3.2     - twine==1.13.0     - typing==3.6.6     - urllib3==1.24.1     - utm==0.4.2     - wcwidth==0.1.7     - webencodings==0.5.1     - widgetsnbextension==3.4.2     - xlrd==1.2.0     - xlwt==1.3.0     - deap==1.3.0 
like image 659
Toivo Säwén Avatar asked Oct 03 '19 10:10

Toivo Säwén


People also ask

How can conda solve the speed of the environment?

One option for speeding up conda is to reduce the index. The index is reduced by conda based upon the user's input specs. It's likely that your repodata contains package data that is not used in the solving stage. Filtering out these unnecessary packages before solving can save time.

How do I find my conda environment path?

You can also run conda info --envs , and that will show the paths to all your environments. That should return the path you're looking for.


1 Answers

This error and the subsequent behaviour is very likely coming from the Anaconda bug which from time to time causes inconsistencies in the local environment. As of Jan 26th, 2020 the bug was not yet resolved.

For me the same problem manifests profoundly on Mac.

like image 132
sophros Avatar answered Sep 18 '22 22:09

sophros