pangeo-data / xESMF

Universal Regridder for Geospatial Data
http://xesmf.readthedocs.io/
MIT License
189 stars 34 forks source link

xESMF 0.8.2 conda-forge release failing on osx-arm64 #327

Closed durack1 closed 8 months ago

durack1 commented 8 months ago

I just went to create a new env today and hit:

(base) home:home ~$ mamba create --dry-run -n xesmf -c conda-forge xesmf
Looking for: ['xesmf']

conda-forge/osx-arm64                                       Using cache
conda-forge/noarch                                          Using cache
Could not solve for environment specs
The following packages are incompatible
└─ xesmf is not installable because there are no viable options
   ├─ xesmf [0.1.2|0.2.1|0.2.2|0.3.0] would require
   │  └─ esmpy, which does not exist (perhaps a missing channel);
   └─ xesmf [0.4.0|0.5.0|...|0.6.3] would require
      └─ esmpy >=8.0.0 , which does not exist (perhaps a missing channel).

This surprised me as it seems xesmf 0.8.2 is available for noarch, and so is esmpy 8.4.2

Some further diagnostic env info:

(base) home:home ~$ python
Python 3.9.16 | packaged by conda-forge | (main, Feb  1 2023, 21:38:11) 
[Clang 14.0.6 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 
(base) home:home ~$$ mamba --version
mamba 1.5.6
conda 23.11.0
aulemahal commented 8 months ago

Indeed, this is strange. The output you showed seems to imply that xesmf >= 0.7 was not considered for the environment, why should that be ? At 0.7 we introduced a pin on numba >= 0.55.2, but that package also exists for your architecture and python version, so I'm not sure.

I'm not an expert in how mamba works, but could you try "forcing" the versions we know exist ? Like

mamba create --dry-run -n xesmf -c conda-forge "xesmf==0.8.2" "esmpy>=8.4"

and see if the output gives tou more info ?

durack1 commented 8 months ago

It turns out my issue was due to some kind of conda/mamba corruption. I just reinstalled mambaforge from scratch and it seems it's now working perfectly with a new env including xesmf 0.8.2, esmpy 8.4.2 and esmf 8.4.2, so apologies for wasting your time