HDF5.jl icon indicating copy to clipboard operation
HDF5.jl copied to clipboard

Update reference API

Open simonbyrne opened this issue 3 years ago • 7 comments

There were significant changes to the reference API in 1.12: https://portal.hdfgroup.org/display/HDF5/Update+to+References This has some nice things, like you don't need to supply the file to dereference. However one significant change is that references now have a H5Rdestroy function, so we may have to make the Reference object mutable.

simonbyrne avatar Jun 15 '22 22:06 simonbyrne

Are we continuing to support the 1.10 binaries?

simonbyrne avatar Jun 15 '22 22:06 simonbyrne

I'm not sure if the situation has changed from https://github.com/JuliaIO/HDF5.jl/pull/756 but the main reason we backtracked and included 1.10 support is because several users are using default binaries not provided by HDF5_JLL in HPC environments. Apparently Fedora and Ubuntu both default to HDF5 v1.10. Has the situation changed?

musm avatar Jun 16 '22 14:06 musm

cc @jipolanco

musm avatar Jun 16 '22 14:06 musm

Has the situation changed?

https://github.com/JuliaIO/HDF5.jl/runs/6902157480?check_suite_focus=true#step:2:142

It doesn't seem like it.

musm avatar Jun 16 '22 15:06 musm

We should still be able to provide at least low level API bindings for these functions, right?

mkitti avatar Jun 16 '22 18:06 mkitti

Apparently Fedora and Ubuntu both default to HDF5 v1.10. Has the situation changed?

Unfortunately this still seems to be the case in the latest Ubuntu version (22.04). See for instance the libhdf5-dev package. For some reason things go quite slowly in this front...

This is annoying because if one wants to test system HDF5 libraries in CI, installing repository packages is by far the easiest option. Especially if one wants in addition to test parallel HDF5, which requires the HDF5 libraries to be linked to an MPI library. This is quite easy to do if one just installs compatible MPI and HDF5 from repositories in CI.

so we may have to make the Reference object mutable

Is there any reason this would mean breaking support for HDF5 1.10?

jipolanco avatar Jun 16 '22 19:06 jipolanco

so we may have to make the Reference object mutable

Is there any reason this would mean breaking support for HDF5 1.10?

I'm not sure. One benefit of the new API is that you can dereference without the file, but we could provide both interfaces.

simonbyrne avatar Jun 16 '22 20:06 simonbyrne