Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#44541 closed update (fixed)

hdf5 @1.6.9_4: retire this port

Reported by: petrrr Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: mamoll (Mark Moll)
Port: hdf5 hdf5-18

Description

I am wondering if we cannot / should not retire the hdf5 port, or updating to 1.8 and get rid of hdf5-18, directly.

HDF5 1.6 is not fully API compatible with, however 1.8 provides API compatibility as well, and most software now should be 1.8 compatible. All depending ports seem to depend on hdf5-18, so from this point of view it is not need. HDF5 1.6.9 was released in May 2009, the last 1.6.x release is 1.6.10, but the port was never updated. So the port is already quite aged and not maintained.

Maybe the port could be marked as replaced_by hdf5-18 and hdf5-18 would eventually be renamed to simply hdf5.

Or we might want to do this directly, so hdf5 would be just an update and hdf5-18 would be replaced by hdf5, plus changing all dependencies?

Change History (11)

comment:1 Changed 6 years ago by mamoll (Mark Moll)

I'd okay with the last option, esp. if there's no ports depending on hdf5 1.6.9.

comment:2 in reply to:  1 Changed 6 years ago by seanfarley (Sean Farley)

Replying to mmoll@…:

I'd okay with the last option, esp. if there's no ports depending on hdf5 1.6.9.

Yeah, same here.

comment:3 Changed 6 years ago by petrrr

I made a quick:

petr% port echo depends:"hdf5-18" | wc
      51      51    1683

petr% port echo depends:"hdf5" | wc
      51      51    1683

So I would assume all ports depending on hdf5 actually depend on hdf5-18. Or, am I missing something?

comment:4 Changed 6 years ago by mf2k (Frank Schima)

I think that's a correct assumption. No ports currently depend on hdf5. I agree with the last option of simply updating the current hdf5 port to the 1.8 version and replacing hdf5-18 with it.

comment:5 in reply to:  4 Changed 6 years ago by ryandesign (Ryan Schmidt)

Replying to mf2k@…:

I think that's a correct assumption. No ports currently depend on hdf5.

Yup:

$ port echo depends:':hdf5-18($|\s)' | wc
      52      52    1716
$ port echo depends:':hdf5($|\s)' | wc
       0       0       0

I agree with the last option of simply updating the current hdf5 port to the 1.8 version and replacing hdf5-18 with it.

The deactivate hack may need to be used.

comment:6 Changed 6 years ago by mamoll (Mark Moll)

I'd be happy to make the change. If I understand correctly, I'd need to make the following changes:

  • "svn cp" the hdf5-18 Portfile to hdf5 and change the name to hdf5.
  • Add the deactivate hack to the hdf5 port:
    pre-activate {
        if {![catch {set installed [lindex [registry_active hdf5-18] 0]}]} {
            set _version [lindex $installed 1]
            if {[vercmp $_version 1.8.14] < 0} {
                registry_deactivate_composite hdf5-18 "" [list ports_nodepcheck 1]
            }
        }
    }
    
  • Replace the hdf5-18 Portfile with this:
    PortSystem          1.0
    replaced_by         hdf5
    PortGroup           obsolete 1.0
    
    name                hdf5-18
    version             1.8.13
    categories          science
    maintainers         nomaintainer
    
  • Change all ports that depend on hdf5-18 to depend on hdf5 and rev bump.

Did I miss anything?

comment:7 Changed 6 years ago by petrrr

I guess, more or less that's it. Not sure about the deactivate hack. I thought it was not necessary anymore, but would need to check the details. Ahhh, mf2k@ is mentioning this so probably it is ...

I guess you want to add a replaced_by hdf5 line to the hdf5-18 Portfile as well.

comment:8 in reply to:  7 Changed 6 years ago by mf2k (Frank Schima)

Replying to petr@…:

I guess, more or less that's it. Not sure about the deactivate hack. I thought it was not necessary anymore, but would need to check the details. Ahhh, mf2k@ is mentioning this so probably it is ...

Actually ryandesign mentioned it and he is much more knowledgeable than I!

I guess you want to add a replaced_by hdf5 line to the hdf5-18 Portfile as well.

He did mention that in step 3.

These steps look good to me too.

comment:9 Changed 6 years ago by mamoll (Mark Moll)

Resolution: fixed
Status: newclosed

Committed in r123274.

comment:10 Changed 6 years ago by petrrr

Thanks for taking care of this!

Just a one minor observation, in the warning texts the Portfile still refers to hdf5-18. This is not functional, but should be updated as well.

comment:11 Changed 6 years ago by mamoll (Mark Moll)

Oops, you're right! Fixed in r123280.

Note: See TracTickets for help on using tickets.