DeDop / dedop-core

DeDop is a User Configurable Tool for Processing Delay Doppler Altimeter Data.
http://dedop.org/
GNU General Public License v3.0
13 stars 8 forks source link

conda environment cannot be created: The following specifications were found to be incompatible with your CUDA driver #58

Open floschl opened 4 years ago

floschl commented 4 years ago

Expected behavior

conda env create --file environment.yml

should run without any errors and create the conda environment as defined in environment.yml.

Actual behavior

When creating the conda environment, conda tries to solve found conflicts and fails to do so. It might have something to do with my CUDA driver. How could I deal with this incompatibility?

Steps to reproduce the issue

  1. git clone {dedop-core-git-repo}
  2. cd dedop-core
  3. conda env create --file environment.yml

Specifications

OS: Ubuntu 18.04 LTS conda version 4.8.3

Console output

~/repos/dedop-core$ conda env create --file environment.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.
failed                                                            |                                                                                                                                     
Solving environment: / 
Found conflicts! Looking for incompatible packages.
This can take several minutes.  Press CTRL-C to abort.
failed                                                            /                                                                                                                                     

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package numpy conflicts for:
scipy==1.0.0 -> numpy[version='>=1.9|>=1.9.3,<2.0a0']
bokeh==0.12.13 -> numpy[version='>=1.7.1']
matplotlib==2.0.2 -> numpy
numexpr==2.6.4 -> numpy[version='>=1.11|>=1.8|>=1.9.3,<2.0a0']
netcdf4==1.2.4 -> numpy[version='1.10.*|1.11.*|1.12.*']
numpy==1.11.3
pyproj==1.9.5.1 -> numpy

Package libffi conflicts for:
pytest-cov -> python -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
numpy==1.11.3 -> python[version='>=3.6,<3.7.0a0'] -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
cate-util==1.1.0.dev1=py36_0 -> python[version='>=3.6,<3.7.0a0'] -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
matplotlib==2.0.2 -> python[version='>=3.6,<3.7.0a0'] -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
tornado[version='>=4.0,<5.0'] -> python[version='>=3.8,<3.9.0a0'] -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
netcdf4==1.2.4 -> python=3.6 -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
numexpr==2.6.4 -> python=3.6 -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
ipywidgets==7.1.1 -> python=3.6 -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
bokeh==0.12.13 -> python=3.6 -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
jupyter==1.0.0 -> python -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
pytest -> python[version='>=3.8,<3.9.0a0'] -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
pyproj==1.9.5.1 -> python[version='>=3.6,<3.7.0a0'] -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']
scipy==1.0.0 -> python=3.6 -> libffi[version='3.2.*|>=3.2.1,<3.3.0a0|>=3.3,<3.4.0a0|>=3.2.1,<3.3a0']

Package setuptools conflicts for:
bokeh==0.12.13 -> jinja2[version='>=2.7'] -> setuptools
netcdf4==1.2.4 -> setuptools
matplotlib==2.0.2 -> setuptools
pytest-cov -> setuptools
pytest -> setuptools[version='>=40.0']
pytest-cov -> pytest[version='>=4.6'] -> setuptools[version='>=40.0']
ipywidgets==7.1.1 -> ipython[version='>=4.0.0'] -> setuptools[version='>=18.5']
python==3.6 -> pip -> setuptools
numexpr==2.6.4 -> setuptools

Package six conflicts for:
bokeh==0.12.13 -> python-dateutil[version='>=2.1'] -> six[version='>=1.5']
pytest -> six[version='>=1.10.0']
numpy==1.11.3 -> mkl-service[version='>=2,<3.0a0'] -> six
tornado[version='>=4.0,<5.0'] -> singledispatch -> six
pytest-cov -> pytest[version='>=4.6'] -> six[version='>=1.10.0']
pytest -> more-itertools[version='>=4.0'] -> six[version='>=1.0.0,<2.0.0']
matplotlib==2.0.2 -> cycler[version='>=0.10'] -> six[version='>=1.5']
ipywidgets==7.1.1 -> traitlets[version='>=4.3.1,<5.0.0'] -> six
bokeh==0.12.13 -> six[version='>=1.5.2']

Package certifi conflicts for:
matplotlib==2.0.2 -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']
bokeh==0.12.13 -> tornado[version='>=4.3'] -> certifi
numexpr==2.6.4 -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']
pytest-cov -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']
pytest -> setuptools[version='>=40.0'] -> certifi[version='>=2016.09|>=2016.9.26']
netcdf4==1.2.4 -> setuptools -> certifi[version='>=2016.09|>=2016.9.26']
tornado[version='>=4.0,<5.0'] -> certifi

Package python conflicts for:
pytest -> more-itertools[version='>=4.0'] -> python[version='3.7.*|3.8.*|>=3.4|>=3.8.0a,<3.9.0a0']
bokeh==0.12.13 -> jinja2[version='>=2.7'] -> python[version='3.4.*|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0']
python==3.6
pytest -> python[version='2.7.*|3.5.*|3.6.*|>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0|>=3.5,<3.6.0a0|3.4.*']
cate-util==1.1.0.dev1=py36_0 -> python[version='>=3.6,<3.7.0a0']
netcdf4==1.2.4 -> python[version='2.7.*|3.5.*|3.6.*|3.4.*']
pytest-cov -> coverage[version='>=4.4'] -> python[version='>=3.8,<3.9.0a0']
scipy==1.0.0 -> python[version='2.7.*|3.5.*|3.6.*|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|>=2.7,<2.8.0a0']
matplotlib==2.0.2 -> python[version='>=2.7,<2.8.0a0|>=3.5,<3.6.0a0|>=3.6,<3.7.0a0']
ipywidgets==7.1.1 -> python[version='2.7.*|3.5.*|3.6.*|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|>=2.7,<2.8.0a0']
tornado[version='>=4.0,<5.0'] -> backports_abc[version='>=0.4'] -> python
jupyter==1.0.0 -> python[version='2.7.*|3.5.*|3.6.*|>=3.8,<3.9.0a0|>=3.5,<3.6.0a0|>=3.6,<3.7.0a0|>=2.7,<2.8.0a0|>=3.7,<3.8.0a0']
bokeh==0.12.13 -> python[version='2.7.*|3.5.*|3.6.*|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|>=2.7,<2.8.0a0']
pyproj==1.9.5.1 -> python[version='>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.5,<3.6.0a0']
numexpr==2.6.4 -> python[version='2.7.*|3.5.*|3.6.*|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|>=2.7,<2.8.0a0']
pyproj==1.9.5.1 -> numpy -> python[version='2.7.*|3.5.*|3.6.*|>=3.8,<3.9.0a0|3.4.*']
numexpr==2.6.4 -> numpy[version='>=1.11'] -> python[version='3.4.*|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0']
matplotlib==2.0.2 -> cycler[version='>=0.10'] -> python[version='2.7.*|3.4.*|3.5.*|3.6.*|>=3.8,<3.9.0a0|>=3.7,<3.8.0a0|<3']
ipywidgets==7.1.1 -> ipykernel[version='>=4.5.1'] -> python[version='3.4.*|>=3|>=3.4|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0|>=3.5']
jupyter==1.0.0 -> ipykernel -> python[version='3.4.*|>=3|>=3.4|>=3.5']
scipy==1.0.0 -> numpy[version='>=1.9'] -> python[version='3.4.*|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0']
netcdf4==1.2.4 -> numpy=1.12 -> python[version='>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|>=3.8,<3.9.0a0|>=3.7,<3.8.0a0']
pytest-cov -> python[version='2.7.*|3.5.*|3.6.*|3.4.*|>=3.7,<3.8.0a0|>=3.6,<3.7.0a0|>=2.7,<2.8.0a0|>=3.5,<3.6.0a0']
tornado[version='>=4.0,<5.0'] -> python[version='2.7.*|3.5.*|3.6.*|>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.8,<3.9.0a0|>=3.7,<3.8.0a0|3.4.*|>=3.5,<3.6.0a0']

Package zlib conflicts for:
matplotlib==2.0.2 -> freetype[version='>=2.8,<2.9.0a0'] -> zlib[version='1.2.*|1.2.11|1.2.8|1.2.11.*']
pytest-cov -> python -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
ipywidgets==7.1.1 -> python=3.6 -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
scipy==1.0.0 -> python=3.6 -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
matplotlib==2.0.2 -> zlib[version='>=1.2.11,<1.3.0a0']
cate-util==1.1.0.dev1=py36_0 -> python[version='>=3.6,<3.7.0a0'] -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8']
netcdf4==1.2.4 -> hdf5[version='1.8.17|1.8.17.*'] -> zlib[version='1.2.*|>=1.2.11,<1.3.0a0|1.2.11|1.2.8|1.2.11.*']
python==3.6 -> zlib=1.2
tornado[version='>=4.0,<5.0'] -> python[version='>=3.8,<3.9.0a0'] -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
hdf4==4.2.12 -> zlib=1.2
numpy==1.11.3 -> python[version='>=3.6,<3.7.0a0'] -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
bokeh==0.12.13 -> python=3.6 -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
jupyter==1.0.0 -> python -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
pyproj==1.9.5.1 -> python[version='>=3.6,<3.7.0a0'] -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
numexpr==2.6.4 -> python=3.6 -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']
pytest -> python[version='>=3.8,<3.9.0a0'] -> zlib[version='1.2.*|1.2.11|>=1.2.11,<1.3.0a0|1.2.8|1.2.11.*']

Package mkl_random conflicts for:
bokeh==0.12.13 -> numpy[version='>=1.7.1'] -> mkl_random[version='>=1.0.2,<2.0a0|>=1.0.4,<2.0a0']
pyproj==1.9.5.1 -> numpy -> mkl_random[version='>=1.0.2,<2.0a0|>=1.0.4,<2.0a0']
matplotlib==2.0.2 -> numpy -> mkl_random[version='>=1.0.2,<2.0a0|>=1.0.4,<2.0a0']
scipy==1.0.0 -> numpy[version='>=1.9'] -> mkl_random[version='>=1.0.2,<2.0a0|>=1.0.4,<2.0a0']
numexpr==2.6.4 -> numpy[version='>=1.11'] -> mkl_random[version='>=1.0.2,<2.0a0|>=1.0.4,<2.0a0']

Package python-dateutil conflicts for:
matplotlib==2.0.2 -> python-dateutil
bokeh==0.12.13 -> python-dateutil[version='>=2.1']

Package ca-certificates conflicts for:
netcdf4==1.2.4 -> python=2.7 -> ca-certificates
scipy==1.0.0 -> python=2.7 -> ca-certificates
jupyter==1.0.0 -> python -> ca-certificates
bokeh==0.12.13 -> python=2.7 -> ca-certificates
pytest-cov -> python -> ca-certificates
numexpr==2.6.4 -> python=2.7 -> ca-certificates
tornado[version='>=4.0,<5.0'] -> python[version='>=2.7,<2.8.0a0'] -> ca-certificates
pyproj==1.9.5.1 -> python[version='>=2.7,<2.8.0a0'] -> ca-certificates
ipywidgets==7.1.1 -> python=2.7 -> ca-certificates
matplotlib==2.0.2 -> python[version='>=2.7,<2.8.0a0'] -> ca-certificates
python==3.6 -> openssl=1.0 -> ca-certificates
numpy==1.11.3 -> python[version='>=2.7,<2.8.0a0'] -> ca-certificates
pytest -> python[version='>=2.7,<2.8.0a0'] -> ca-certificates

Package openblas-devel conflicts for:
numpy==1.11.3 -> openblas[version='>=0.3.3,<0.3.4.0a0'] -> openblas-devel[version='0.3.3|>=0.2.20,<0.2.21.0a0|0.3.6|0.3.6|0.3.6|>=0.3.2,<0.3.3.0a0',build='2|1|2|3|1|0']
scipy==1.0.0 -> openblas[version='0.2.20|0.2.20.*'] -> openblas-devel[version='>=0.2.20,<0.2.21.0a0']

Package pyqt conflicts for:
matplotlib==2.0.2 -> pyqt=5.6
jupyter==1.0.0 -> qtconsole -> pyqt[version='4.11.*|5.6.*|>=5.6.0,<5.7.0a0|>=5.9.2,<5.10.0a0']

Package ssl_match_hostname conflicts for:
matplotlib==2.0.2 -> tornado -> ssl_match_hostname
bokeh==0.12.13 -> tornado[version='>=4.3'] -> ssl_match_hostname
tornado[version='>=4.0,<5.0'] -> ssl_match_hostname

Package tornado conflicts for:
jupyter==1.0.0 -> ipykernel -> tornado[version='>=4|>=4,<6|>=4.0|>=4.2|>=5.0|>=5.0,<7|>=4.1,<7']
tornado[version='>=4.0,<5.0']
bokeh==0.12.13 -> tornado[version='>=4.3']
matplotlib==2.0.2 -> tornado
ipywidgets==7.1.1 -> ipykernel[version='>=4.5.1'] -> tornado[version='>=4.0|>=4.2']

Package libgcc-ng conflicts for:
numpy==1.11.3 -> libgcc-ng[version='>=4.9|>=7.3.0|>=7.2.0']
numpy==1.11.3 -> python[version='>=3.7,<3.8.0a0'] -> libgcc-ng[version='>=7.5.0|>=8.2.0']

Package pyparsing conflicts for:
matplotlib==2.0.2 -> pyparsing
pytest -> packaging -> pyparsing[version='>=2.0.2']

Package pytest conflicts for:
pytest
pytest-cov -> pytest[version='>=3.6|>=4.6']

Package _openmp_mutex conflicts for:
tornado[version='>=4.0,<5.0'] -> libgcc-ng[version='>=7.3.0'] -> _openmp_mutex[version='>=4.5']
matplotlib==2.0.2 -> libgcc-ng[version='>=7.2.0'] -> _openmp_mutex[version='>=4.5']
scipy==1.0.0 -> libgcc-ng[version='>=7.2.0'] -> _openmp_mutex[version='*|>=4.5',build=*_llvm]
numexpr==2.6.4 -> libgcc-ng[version='>=7.2.0'] -> _openmp_mutex[version='*|>=4.5',build=*_llvm]
pyproj==1.9.5.1 -> libgcc-ng[version='>=7.3.0'] -> _openmp_mutex[version='>=4.5']
numpy==1.11.3 -> libgcc-ng[version='>=7.3.0'] -> _openmp_mutex[version='*|>=4.5',build=*_llvm]

Package jinja2 conflicts for:
bokeh==0.12.13 -> jinja2[version='>=2.7']
jupyter==1.0.0 -> nbconvert -> jinja2

Package libstdcxx-ng conflicts for:
numpy==1.11.3 -> python[version='>=3.6,<3.7.0a0'] -> libstdcxx-ng[version='>=7.2.0|>=7.5.0']
numpy==1.11.3 -> libstdcxx-ng[version='>=4.9|>=7.3.0']

Package ipywidgets conflicts for:
jupyter==1.0.0 -> ipywidgets
ipywidgets==7.1.1

Package liblapacke conflicts for:
numpy==1.11.3 -> blas=[build=openblas] -> liblapacke==3.8.0[build='4_mkl|9_mkl|10_mkl|13_mkl|14_mkl|15_mkl|4_openblas|5_openblas|11_openblas|16_openblas|15_openblas|14_openblas|13_openblas|12_openblas|10_openblas|9_openblas|8_openblas|7_openblas|6_openblas|12_mkl|11_mkl|8_mkl|7_mkl|6_mkl|5_mkl']
scipy==1.0.0 -> blas=[build=openblas] -> liblapacke==3.8.0[build='4_mkl|9_mkl|10_mkl|13_mkl|14_mkl|15_mkl|4_openblas|5_openblas|11_openblas|16_openblas|15_openblas|14_openblas|13_openblas|12_openblas|10_openblas|9_openblas|8_openblas|7_openblas|6_openblas|12_mkl|11_mkl|8_mkl|7_mkl|6_mkl|5_mkl']
numexpr==2.6.4 -> blas=[build=openblas] -> liblapacke==3.8.0[build='4_mkl|9_mkl|10_mkl|13_mkl|14_mkl|15_mkl|4_openblas|5_openblas|11_openblas|16_openblas|15_openblas|14_openblas|13_openblas|12_openblas|10_openblas|9_openblas|8_openblas|7_openblas|6_openblas|12_mkl|11_mkl|8_mkl|7_mkl|6_mkl|5_mkl']

Package pathlib2 conflicts for:
pytest-cov -> pytest[version='>=4.6'] -> pathlib2[version='>=2.2.0']
pytest -> pathlib2[version='>=2.2.0']
ipywidgets==7.1.1 -> ipython[version='>=4.0.0'] -> pathlib2

Package hdf4 conflicts for:
hdf4==4.2.12
netcdf4==1.2.4 -> libnetcdf=4.4 -> hdf4[version='>=4.2.13,<4.2.14.0a0|>=4.2.13,<4.3.0a0']The following specifications were found to be incompatible with your CUDA driver:

  - feature:/linux-64::__cuda==10.2=0
  - feature:|@/linux-64::__cuda==10.2=0

Your installed CUDA driver is: 10.2
floschl commented 4 years ago

The current environment.yml looks a bit too stringent, I am not sure if this is necessary. Also cate-util seems have to been released in a version 2.0.0. This however would require it to be published on the ccitools channel, whose latest version is still 1.1.0.dev5:

Would it make sense to update the cate-util and derive all other dependencies from the ones of the latest cate-util?

floschl commented 4 years ago

Is there a progress in this issue @mark-ep ? Did you already have a look at it? Thanks and all the best

floschl commented 4 years ago

I was able to fix the issue in my private fork. I updated most of the package dependencies version numbers since most of them were outdated. Also the cate-util dependency should be updated.

Besides I noticed that some unit tests were failing. I fixed them.

Is this project still alive, so we could possibly add a pull request?

forman commented 3 years ago

Thanks @floschl! The project is no longer funded, however we'll try to maintain is if time allows for. So yes, please provide your PR!

floschl commented 3 years ago

thanks @forman! Just opened the PR. Please note that I did not testet the changes against the packages that make use of dedop-core, e.g. the web ui. However, it the changes are in my opinion a good starting point to continue the development as an open-source project.

I already encounted some other issues regarding the multilooking module (stack differs from the multilooked waveform). Do you think such issues are tackled by somebody and fixed in here?