netcdf4-python icon indicating copy to clipboard operation
netcdf4-python copied to clipboard

hdf5 and libnetcdf versions in conda build

Open seth-p opened this issue 7 years ago • 8 comments

conda.recipe/meta.yaml is very restrictive about the hdf5 and libnetcdf versions:

    - hdf5 1.8.17|1.8.17.*
    - libnetcdf 4.4.*

Does it really need to be so restrictive?

seth-p avatar Nov 03 '17 20:11 seth-p

No. I will change that.

jswhit avatar Nov 07 '17 17:11 jswhit

pull request #739

jswhit avatar Nov 07 '17 17:11 jswhit

@seth-p that recipe is only to test the Windows build and not for user use. Why do you need to that for? I recommend you to go for the conda-forge version of the recipe for anything rather than testing the Windows build for this repository.

ocefpaf avatar Nov 07 '17 17:11 ocefpaf

I'm new to the whole conda thing, but when I do conda info netcdf4==1.3.1 (on a Windows 10 command line) it shows me the following for Python 3.6:

netcdf4 1.3.1 py36_0
--------------------
file name   : netcdf4-1.3.1-py36_0.tar.bz2
name        : netcdf4
version     : 1.3.1
build string: py36_0
build number: 0
channel     : conda-forge
size        : 524 KB
arch        : x86_64
has_prefix  : False
license     : OSI Approved and MIT
md5         : a3fa39b78dcb0e0b6827080e417e1d8f
noarch      : None
platform    : win32
requires    : ()
subdir      : win-64
url         : https://conda.anaconda.org/conda-forge/win-64/netcdf4-1.3.1-py36_0.tar.bz2
dependencies:
    hdf5 1.8.18|1.8.18.*
    libnetcdf 4.4.*
    numpy >=1.11
    python 3.6*
    setuptools

I am definitely not building anything myself.

seth-p avatar Nov 07 '17 18:11 seth-p

@seth-p that is the conda-forge build. The repository responsible for that is https://github.com/conda-forge/netcdf4-feedstock

That pinning is required for that specific build. We (conda-forge) need to pin software to ensure compatibility of the stack.

In that particular case we are not using libnetcdf 4.5.0 yet b/c that is buggy and we should wait for 4.5.1.

Also, we will need to discuss the possibility of dropping Python 2 support to do so b/c 4.5.0 does not build with vc 9, required for Python 2 extensions.

Regarding hdf5 1.10 the issue is that we need libnetcdf 4.5.0 to use it, so our hands are tied there 😬

ocefpaf avatar Nov 07 '17 18:11 ocefpaf

@ocefpaf Ah. Thanks for the explanation. I'm still coming up to speed on conda(-forge).

seth-p avatar Nov 07 '17 18:11 seth-p

Regarding hdf5 1.10 the issue is that we need libnetcdf 4.5.0 to use it

The Windows binaries at https://pypi.python.org/pypi/netCDF4/ are using hdf5-1.10.1 and netcdf4-4.4.1.1

cgohlke avatar Nov 07 '17 21:11 cgohlke

The Windows binaries at https://pypi.python.org/pypi/netCDF4/ are using hdf5-1.10.1 and netcdf4-4.4.1.1

Interesting. I'll double check that. I remember trying hdf5 1.10 and having issues with that.

ocefpaf avatar Nov 07 '17 23:11 ocefpaf