oturns / geosnap

The Geospatial Neighborhood Analysis Package
https://oturns.github.io/geosnap-guide
BSD 3-Clause "New" or "Revised" License
237 stars 32 forks source link

testing failure on python3.8 #241

Closed knaaptime closed 3 years ago

knaaptime commented 4 years ago

our CI tests fail on 3.8 because a dependency conflict causes the conda solver to churn forever. Nothing in our dependencies suggests an obvious potential conflict with 3.8--except region.

Looking a bit closer at region's reqs, it specifies sklearn instead of scikit-learn, which is a deprecated alias. I'm guessing that's the culprit. I'm not sure the best way to resolve this. We're not planning to release spopt for awhile, and we've decided not to do any more releases of region (though this would be a very quick and easy change). What do you think @sjsrey?

sjsrey commented 4 years ago

I think a quick bug fix type release of region makes sense in this case.

knaaptime commented 4 years ago

if you try to install region in an empty 3.8 envirionment you get

test38 ❯ conda install region
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
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
Note that strict channel priority may have removed packages required for satisfiability.

so i'm fairly confident this is the root of the problem

knaaptime commented 4 years ago

this happens on tobler too, so now i'm not so sure about the root cause...

jGaboardi commented 4 years ago

Seems to be several dependency conflicts:

1880    Package pytest conflicts for:
1881    pytest-cov -> pytest[version='>=3.6|>=4.6']
1882    pytest-mpl -> pytest
1883    pytest
1884
1885    Package rasterio conflicts for:
1886    rasterstats -> rasterio[version='>=0.27']
1887    rasterio
1888
1889    Package importlib-metadata conflicts for:
1890    pytest -> importlib_metadata[version='>=0.12'] -> importlib-metadata[version='>=1.1.3,<1.1.4.0a0|>=1.5.0,<1.5.1.0a0|>=1.5.2,<1.5.3.0a0|>=1.6.0,<1.6.1.0a0|>=1.6.1,<1.6.2.0a0|>=1.7.0,<1.7.1.0a0']
1891    twine -> importlib_metadata -> importlib-metadata[version='>=1.1.3,<1.1.4.0a0|>=1.5.0,<1.5.1.0a0|>=1.5.2,<1.5.3.0a0|>=1.6.0,<1.6.1.0a0|>=1.6.1,<1.6.2.0a0|>=1.7.0,<1.7.1.0a0']
1892
1893    Package zope conflicts for:
1894    pytest -> attrs[version='>=17.2.0'] -> zope
1895    rasterio -> attrs -> zope
1896
1897    Package boto3 conflicts for:
1898    rasterio -> boto3[version='>=1.2.4']
1899    quilt3 -> boto3[version='>=1.10.0|>=1.8.0']
1900    rasterstats -> rasterio[version='>=0.27'] -> boto3[version='>=1.2.4']
knaaptime commented 4 years ago

image

seems like it may be quilt

knaaptime commented 4 years ago

also seems to be conda-specific, because i dont have conflicts with pip

sjsrey commented 4 years ago

https://github.com/pysal/tobler/pull/78

knaaptime commented 3 years ago

the quilt issue was solved thanks to some fantastic help from @marcelotrevisani. Now the blocker seems to be pulp, and it looks like that's a known issue

knaaptime commented 3 years ago

resolved thanks to some fantastic help from @marcelotrevisani