conda-forge / cartopy-feedstock

A conda-smithy repository for cartopy.
BSD 3-Clause "New" or "Revised" License
4 stars 16 forks source link

UnsatisfiableError with python 3.7 in clean new env #63

Closed gboeing closed 5 years ago

gboeing commented 5 years ago

I'm suddenly unable to conda install cartopy. Here's the failed installation, and my conda info:

C:\>conda create -n TEST cartopy
Collecting package metadata (current_repodata.json): done
Solving environment: failed
Collecting package metadata (repodata.json): done
Solving environment: failed

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

  - cartopy -> geos[version='>=3.7.1,<3.7.2.0a0'] -> vc[version='>=14.1,<15.0a0'] -> vs2015_runtime[version='>=14.15.26706']
  - cartopy -> matplotlib -> cycler[version='>=0.10'] -> six
  - cartopy -> matplotlib -> freetype=2.6
  - cartopy -> matplotlib -> functools32
  - cartopy -> matplotlib -> numpy=1.11 -> liblapack[version='>=3.8.0,<3.9.0a0'] -> blas=[build=mkl]
  - cartopy -> matplotlib -> numpy=1.11 -> numpy-base==1.11.3=py36hc3f5095_12
  - cartopy -> matplotlib -> pyparsing
  - cartopy -> matplotlib -> pyqt -> python[version='>=3.6,<3.7.0a0'] -> sqlite[version='>=3.26.0,<4.0a0']
  - cartopy -> matplotlib -> pyqt -> qt[version='5.9.*,>=5.9.7,<5.10.0a0'] -> icu[version='>=58.1,<59.0a0']
  - cartopy -> matplotlib -> pyqt -> qt[version='5.9.*,>=5.9.7,<5.10.0a0'] -> jpeg[version='>=9c,<10a']
  - cartopy -> matplotlib -> pyqt -> qt[version='5.9.*,>=5.9.7,<5.10.0a0'] -> libpng[version='>=1.6.35,<1.7.0a0'] -> zlib[version='>=1.2.11,<1.3.0a0']
  - cartopy -> matplotlib -> pyqt -> qt[version='5.9.*,>=5.9.7,<5.10.0a0'] -> openssl[version='>=1.1.1b,<1.1.2a'] -> ca-certificates
  - cartopy -> matplotlib -> pyqt -> sip[version='>=4.19.4,<=4.19.8']
  - cartopy -> matplotlib -> python-dateutil
  - cartopy -> matplotlib -> pytz
  - cartopy -> matplotlib -> setuptools -> certifi[version='>=2016.09']
  - cartopy -> matplotlib -> setuptools -> wincertstore[version='>=0.2']
  - cartopy -> mock
  - cartopy -> nose
  - cartopy -> owslib
  - cartopy -> pillow
  - cartopy -> proj4[version='>=5.2.0,<5.2.1.0a0']
  - cartopy -> pyepsg
  - cartopy -> pykdtree
  - cartopy -> pyshp
  - cartopy -> scipy
  - cartopy -> shapely

Note that strict channel priority may have removed packages required for satisfiability.

C:\>conda info

     active environment : None
            shell level : 0
       user config file : C:\Users\Geoff\.condarc
 populated config files : C:\Users\Geoff\.condarc
          conda version : 4.7.5
    conda-build version : 3.18.6
         python version : 3.7.3.final.0
       virtual packages :
       base environment : c:\Anaconda  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/win-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/win-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/win-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : c:\Anaconda\pkgs
                          C:\Users\Geoff\.conda\pkgs
                          C:\Users\Geoff\AppData\Local\conda\conda\pkgs
       envs directories : c:\Anaconda\envs
                          C:\Users\Geoff\.conda\envs
                          C:\Users\Geoff\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.7.5 requests/2.22.0 CPython/3.7.3 Windows/10 Windows/10.0.18362
          administrator : False
             netrc file : None
           offline mode : False
ocefpaf commented 5 years ago

Should be fixed soon. The builds are slow today b/c our humans are in a conference. But the bots are working hard on this and it should be fixed in ~2 hours when the new builds of gdal 2.4.2 with the old geos and new cftisio are complete.

xref.: https://github.com/conda-forge/gdal-feedstock/issues/303

gboeing commented 5 years ago

@ocefpaf just checked again and this is issue is still ongoing (just commenting here in case you didn't know it was still ongoing). For example, conda create -n test cartopy still fails as above.

gboeing commented 5 years ago

Interestingly, I just updated conda from 4.7.5 -> 4.7.8 and the failure changed slightly. Now it concludes with an actual error.

conda create -n test cartopy

C:\>conda create -n test cartopy
Collecting package metadata (current_repodata.json): done
Solving environment: failed with current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed

# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<

    Traceback (most recent call last):
      File "C:\Anaconda\lib\site-packages\conda\exceptions.py", line 1062, in __call__
        return func(*args, **kwargs)
      File "C:\Anaconda\lib\site-packages\conda\cli\main.py", line 84, in _main
        exit_code = do_call(args, p)
      File "C:\Anaconda\lib\site-packages\conda\cli\conda_argparse.py", line 82, in do_call
        exit_code = getattr(module, func_name)(args, parser)
      File "C:\Anaconda\lib\site-packages\conda\cli\main_create.py", line 37, in execute
        install(args, parser, 'create')
      File "C:\Anaconda\lib\site-packages\conda\cli\install.py", line 256, in install
        force_reinstall=context.force_reinstall or context.force,
      File "C:\Anaconda\lib\site-packages\conda\core\solve.py", line 112, in solve_for_transaction
        force_remove, force_reinstall)
      File "C:\Anaconda\lib\site-packages\conda\core\solve.py", line 150, in solve_for_diff
        force_remove)
      File "C:\Anaconda\lib\site-packages\conda\core\solve.py", line 262, in solve_final_state
        ssc = self._run_sat(ssc)
      File "C:\Anaconda\lib\site-packages\conda\common\io.py", line 88, in decorated
        return f(*args, **kwds)
      File "C:\Anaconda\lib\site-packages\conda\core\solve.py", line 780, in _run_sat
        repodata_fn=self._repodata_fn)
      File "C:\Anaconda\lib\site-packages\conda\common\io.py", line 88, in decorated
        return f(*args, **kwds)
      File "C:\Anaconda\lib\site-packages\conda\resolve.py", line 1183, in solve
        self.find_conflicts(specs, specs_to_add, history_specs)
      File "C:\Anaconda\lib\site-packages\conda\resolve.py", line 336, in find_conflicts
        bad_deps = self.build_conflict_map(specs, specs_to_add, history_specs)
      File "C:\Anaconda\lib\site-packages\conda\resolve.py", line 425, in build_conflict_map
        deps = set.union(*[set(self.ms_depends_.get(prec)) for prec in precs])
      File "C:\Anaconda\lib\site-packages\conda\resolve.py", line 425, in <listcomp>
        deps = set.union(*[set(self.ms_depends_.get(prec)) for prec in precs])
    TypeError: 'NoneType' object is not iterable

`$ C:\Anaconda\Scripts\conda-script.py create -n test cartopy`

  environment variables:
                 CIO_TEST=<not set>
                CONDA_EXE=C:\Anaconda\condabin\..\Scripts\conda.exe
               CONDA_EXES="C:\Anaconda\condabin\..\Scripts\conda.exe"
               CONDA_ROOT=C:\Anaconda
                 HOMEPATH=\Users\Geoff
                     PATH=C:\Anaconda;C:\Anaconda\Library\mingw-w64\bin;C:\Anaconda\Library\usr\
                          bin;C:\Anaconda\Library\bin;C:\Anaconda\Scripts;C:\Anaconda\bin;C:\Ana
                          conda;C:\Anaconda\Library\mingw-w64\bin;C:\Anaconda\Library\usr\bin;C:
                          \Anaconda\Library\bin;C:\Anaconda\Scripts;C:\Program Files
                          (x86)\Common
                          Files\Oracle\Java\javapath;C:\ProgramData\DockerDesktop\version-
                          bin;C:\Program Files\Docker\Docker\Resources\bin;C:\WINDOWS\system32;C
                          :\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShe
                          ll\v1.0\;C:\Users\Geoff\AppData\Local\GitHub\PortableGit_d76a6a98c9315
                          931ec4927243517bc09e9b731a0\cmd;C:\Program Files\Git\cmd;C:\Program
                          Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\WINDOWS\S
                          ystem32\OpenSSH\;C:\Windows\System32;C:\Users\Geoff\AppData\Local\Micr
                          osoft\WindowsApps;C:\Users\Geoff\AppData\Local\Microsoft\WindowsApps;G
                          :\texlive\2019\bin\win32;;C:\Anaconda\lib\site-
                          packages\pywin32_system32
             PSMODULEPATH=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\Windows
                          PowerShell\v1.0\Modules
       REQUESTS_CA_BUNDLE=<not set>
            SSL_CERT_FILE=<not set>

     active environment : None
       user config file : C:\Users\Geoff\.condarc
 populated config files : C:\Users\Geoff\.condarc
          conda version : 4.7.8
    conda-build version : 3.18.8
         python version : 3.7.3.final.0
       virtual packages : __cuda=10.2
       base environment : C:\Anaconda  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/win-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/win-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/win-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/msys2/win-64
                          https://repo.anaconda.com/pkgs/msys2/noarch
          package cache : C:\Anaconda\pkgs
                          C:\Users\Geoff\.conda\pkgs
                          C:\Users\Geoff\AppData\Local\conda\conda\pkgs
       envs directories : C:\Anaconda\envs
                          C:\Users\Geoff\.conda\envs
                          C:\Users\Geoff\AppData\Local\conda\conda\envs
               platform : win-64
             user-agent : conda/4.7.8 requests/2.22.0 CPython/3.7.3 Windows/10 Windows/10.0.17763
          administrator : False
             netrc file : None
           offline mode : False

An unexpected error has occurred. Conda has prepared the above report.

If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?

[y/N]: n

No report sent. To permanently opt-out, use

    $ conda config --set report_errors false

conda create -n test pandas

But trying a different package (pandas) does not result in this unexpected error:

C:\>conda create -n test pandas
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: C:\Anaconda\envs\test

  added / updated specs:
    - pandas

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    intel-openmp-2019.4        |              245         1.4 MB  defaults
    libblas-3.8.0              |            8_mkl         3.5 MB  conda-forge
    libcblas-3.8.0             |            8_mkl         3.5 MB  conda-forge
    liblapack-3.8.0            |            8_mkl         3.5 MB  conda-forge
    mkl-2019.4                 |              245        99.2 MB  defaults
    numpy-1.16.4               |   py37hc71023c_0         4.0 MB  conda-forge
    pandas-0.25.0              |   py37he350917_0         9.6 MB  conda-forge
    python-dateutil-2.8.0      |             py_0         219 KB  conda-forge
    vc-14.1                    |       h0510ff6_4           6 KB  defaults
    ------------------------------------------------------------
                                           Total:       125.0 MB

The following NEW packages will be INSTALLED:

  ca-certificates    conda-forge/win-64::ca-certificates-2019.6.16-hecc5488_0
  certifi            conda-forge/win-64::certifi-2019.6.16-py37_1
  intel-openmp       pkgs/main/win-64::intel-openmp-2019.4-245
  libblas            conda-forge/win-64::libblas-3.8.0-8_mkl
  libcblas           conda-forge/win-64::libcblas-3.8.0-8_mkl
  liblapack          conda-forge/win-64::liblapack-3.8.0-8_mkl
  mkl                pkgs/main/win-64::mkl-2019.4-245
  numpy              conda-forge/win-64::numpy-1.16.4-py37hc71023c_0
  openssl            conda-forge/win-64::openssl-1.1.1c-hfa6e2cd_0
  pandas             conda-forge/win-64::pandas-0.25.0-py37he350917_0
  pip                conda-forge/win-64::pip-19.1.1-py37_0
  python             conda-forge/win-64::python-3.7.3-h510b542_1
  python-dateutil    conda-forge/noarch::python-dateutil-2.8.0-py_0
  pytz               conda-forge/noarch::pytz-2019.1-py_0
  setuptools         conda-forge/win-64::setuptools-41.0.1-py37_0
  six                conda-forge/win-64::six-1.12.0-py37_1000
  sqlite             conda-forge/win-64::sqlite-3.29.0-hfa6e2cd_0
  vc                 pkgs/main/win-64::vc-14.1-h0510ff6_4
  vs2015_runtime     pkgs/main/win-64::vs2015_runtime-14.15.26706-h3a45250_4
  wheel              conda-forge/win-64::wheel-0.33.4-py37_0
  wincertstore       conda-forge/win-64::wincertstore-0.2-py37_1002

Proceed ([y]/n)?
ocefpaf commented 5 years ago

Cartopy is more difficult than I expected b/c it does not works with proj4 6, so trying to re-build an old version of the packages for it but it may take a while.

PS: I'm not sure the error in https://github.com/conda-forge/cartopy-feedstock/issues/63#issuecomment-513046282 is related. Looks like a conda bug to me.

gboeing commented 5 years ago

@ocefpaf you're right, that was a conda bug in 4.7.8 that is fixed in 4.7.9: https://github.com/conda/conda/issues/8963

With conda 4.7.9 it goes back to the original UnsatisfiableError: The following specifications were found to be incompatible with each other

ocefpaf commented 5 years ago

With conda 4.7.9 it goes back to the original UnsatisfiableError: The following specifications were found to be incompatible with each other

Please keep an eye on https://github.com/conda-forge/gdal-feedstock/pull/310 that hopefully will fix that. However, the more I work on that PR the more I think it is probably easier to fix rasterio and cartopy to work with proj4 >=6 :-(

gboeing commented 5 years ago

Ok I'll keep my eye on that PR and test again when it's merged.

I think it is probably easier to fix rasterio and cartopy to work with proj4 >=6

FYI, I just noticed that this seems to affect other packages too. For example, I cannot install geopandas either:

C:\>conda create -n test geopandas
Collecting package metadata (current_repodata.json): done
Solving environment: failed with current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed

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

Package descartes conflicts for:
geopandas -> descartes
Package psycopg2 conflicts for:
geopandas -> psycopg2
Package matplotlib conflicts for:
geopandas -> matplotlib
Package python conflicts for:
geopandas -> python[version='2.7.*|3.4.*|3.5.*|3.6.*']
Package pandas conflicts for:
geopandas -> pandas
Package rtree conflicts for:
geopandas -> rtree
Package matplotlib-base conflicts for:
geopandas -> matplotlib-base
Package pysal conflicts for:
geopandas -> pysal
Package six conflicts for:
geopandas -> six
Package fiona conflicts for:
geopandas -> fiona
Package sqlalchemy conflicts for:
geopandas -> sqlalchemy
Package pyproj conflicts for:
geopandas -> pyproj[version='>=1.9,<2']
Package mapclassify conflicts for:
geopandas -> mapclassify
Package geopy conflicts for:
geopandas -> geopy==1.10.0
Package gdal conflicts for:
geopandas -> gdal[version='1.11.4|2.1.*']
Package shapely conflicts for:
geopandas -> shapely
Note that strict channel priority may have removed packages required for satisfiability.
ocefpaf commented 5 years ago

That one should be OK :-/ I'll try to find a Windows machine to debug it.

ocefpaf commented 5 years ago

I rebuilt cartopy with the old proj4 5.2.0 that should help here. Can you test it again?

ocefpaf commented 5 years ago

Cartopy is "solved" but I still need to rebuild a few dependencies to get this working on Windows.

gboeing commented 5 years ago

@ocefpaf thanks, I'm moving cross country this week but will test again soon as I can.

ocefpaf commented 5 years ago

Should be working now. Let me know if you find more any issues.

ocefpaf commented 5 years ago

I am trying to install PDAL in my Macbook and I have following conflicts:

This feedstock is for cartopy, not pdal.

Try a clean env:

conda create --name TEST python-pdal cartopy

that works for me. Also, please open a new env with the required debug information. We cannot help you further with it. Locking this issue and, if you want to follow up, open a new one with the required information.