ecmwf / eccodes-python

Python interface to the ecCodes GRIB/BUFR decoder/encoder
Apache License 2.0
113 stars 33 forks source link

aarch64 supports #84

Closed philippemiron closed 5 months ago

philippemiron commented 9 months ago

Is your feature request related to a problem? Please describe.

The conda package currently supports osx-arm64, would it be possible to also include linux-aarch64?

I'm running into some issues where I can't build my Docker environment in macOS ARM. It works fine in macOS, but Docker runs an arm version of Linux and can't find the package.

This is the error I'm getting when trying to install cggrib > 0.9.8.5

    The following package could not be installed
    └─ cfgrib 0.9.10.4  is not installable because it requires
       └─ python-eccodes >=0.9.8 , which does not exist (perhaps a missing channel).

The solution as of right now is to use cfgrib<=0.9.10.4, which installs:

cfgrib                     0.9.8.5

and doesn't seem to depends on python-eccodes, I see that it does install eccodes 2.32.1.

Describe the solution you'd like

No response

Describe alternatives you've considered

No response

Additional context

No response

Organisation

No response

iainrussell commented 5 months ago

Hi @philippemiron, we have added aarch64 support to python-eccodes now. Could you try and see if it works for you please? Cheers, Iain

philippemiron commented 5 months ago

I see that it is now available:

$ conda search eccodes
Getting repodata from channels...

conda-forge/osx-arm64                                       Using cache
conda-forge/noarch                                          Using cache
pkgs/main/osx-arm64                                         Using cache
pkgs/main/noarch                                            Using cache
pkgs/r/osx-arm64                                            Using cache
pkgs/r/noarch                                               Using cache

       eccodes 2.34.1 h64f3314_0
────────────────────────────────────────

 Name            eccodes
 Version         2.34.1
 Build           h64f3314_0
 Size            4690 kB
 License         Apache-2.0
 Subdir          osx-arm64
 File Name       eccodes-2.34.1-h64f3314_0.conda
 URL             https://conda.anaconda.org/conda-forge/osx-arm64/eccodes-2.34.1-h64f3314_0.conda
 MD5             792a18dc9e755a6c12de1cf50ef8cea5
 SHA256          eebb18cec21786c875017c1d0b19ef6add96a8b780b373c131617b44d040e017

I can't test much more than that (easily) at the moment, we moved from GRIB to NetCDF in the project where I had issue to decrease dependencies.

Cheers,

philippemiron commented 5 months ago

I can also confirm that it works for linux-aarch64.

$ docker run -it --rm mambaorg/micromamba
(base) mambauser@c1ba785301a3:/tmp$ micromamba search -c conda-forge eccodes
Getting repodata from channels...

conda-forge/linux-aarch64                           10.9MB @   7.0MB/s  1.6s
conda-forge/noarch                                  14.0MB @   7.8MB/s  1.8s

       eccodes 2.34.1 hb180dc1_0
────────────────────────────────────────

 Name            eccodes
 Version         2.34.1
 Build           hb180dc1_0
 Size            4494 kB
 License         Apache-2.0
 Subdir          linux-aarch64
 File Name       eccodes-2.34.1-hb180dc1_0.conda
 URL             https://conda.anaconda.org/conda-forge/linux-aarch64/eccodes-2.34.1-hb180dc1_0.conda
 MD5             c6fa7a6a2fcdcea8eeaee698944a5d52
 SHA256          214d9ab8071d36adfce9ba16b23b6bb31a1039164c79af16afc1b7ae0967c76b

Cheers,

iainrussell commented 5 months ago

That's really great - thanks for checking, @philippemiron!