[MacPorts] #54101: Ports that depend on hdf5-18 should switch to hdf5

MacPorts noreply at macports.org
Wed May 10 20:34:36 UTC 2017


#54101: Ports that depend on hdf5-18 should switch to hdf5
-------------------------------------------------+-------------------------
  Reporter:  mf2k                                |      Owner:
      Type:  enhancement                         |     Status:  new
  Priority:  Normal                              |  Milestone:
 Component:  ports                               |    Version:
Resolution:                                      |   Keywords:
      Port:  h4h5tools hdfeos5 netcdf octave-    |
  devel py-tables ncarg                          |
-------------------------------------------------+-------------------------

Comment (by Dave-Allured):

 Please recall the original reasons for hdf5-18.  It is a little hard to
 tell from the original tickets (ticket:51089 etc), but this alternative
 port solved two problems:

 1.  All hdf5 versions starting with 1.10.0 (2016 March 30) could easily
 generate new hdf5 data files that were backward incompatible with all
 older, non-updated hdf5 applications.  Hdf5-18 prevented this, and wrote
 only backward compatible files.  The correct long term fix is to (a)
 insert a specific hdf5 compatibility function call into the calling
 application; then and only then, (b) upgrade to hdf5 1.10.x.  For example,
 here is a discussion and compatibility fix that was applied in Netcdf
 version 4.4.1 (2016 June 28).  The single function call to
 H5Pset_libver_bounds did the trick:

     https://github.com/Unidata/netcdf-c/issues/250 (2016 April 7)

 2.  Hdf5 versions 1.10.0 and 1.10.0-patch1 could not access network-
 mounted files from Macs.  I am told this was specifically due to new usage
 of the system flock function, and shortcomings of NFS version 3 on Macs.
 This of course would not affect any Mac users that used only local disk
 files.  Hdf5-18 avoided this problem because it never used flock.  Hdf5
 version 1.10.1 (2017 April 27) appears to fix this, using a special run-
 time environment variable.  IMO the correct upgrade path is to link only
 with hdf5 1.10.1 or later, and then remind users to use the environment
 variable when needed.  The 1.10.1 update is forthcoming in ticket:54139,
 which includes details about the environment variable setting.

 I recommend holding off on switching hdf5-18 dependencies to hdf5 until
 either (a) the format compatibility fix is inserted in the calling
 packages; or (b) there is some kind of consensus that original package
 developers and users no longer care about generating backward-incompatible
 hdf5 data files.

 Furthermore, because of (2), I recommend waiting for hdf5 1.10.1
 (ticket:54139) before switching any more hdf5-18 dependencies back to
 hdf5.

--
Ticket URL: <https://trac.macports.org/ticket/54101#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list