Opened 4 years ago

Closed 3 years ago

Last modified 3 years ago

#60553 closed defect (fixed)

github portgroup livecheck values interfere with one another when github.setup is called twice

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.6.2
Keywords: Cc: iEFdev
Port: github

Description

It is common for a portfile to offer both a stable version of the software and a development version in a -devel subport, and although it was not originally intended to use the github portgroup in this way, many ports have taken to invoking github.setup both in the main port and the -devel subport (with different values for the version field). In this case it is desired for the main port's livecheck to return the latest tagged version and the -devel port's livecheck to return the latest tag on the applicable branch. I feel like this used to work but it got broken at some point, requiring ports to use workarounds like [6a97ae2a383a43097c8b1b18ebf3d8aa877a6eba/macports-ports] which were not supposed to be necessary.

The portgroup used to overwrite the livecheck variables whenever github.setup was invoked but some of them were changed from overwrites to defaults in [8c8cfbced424311973717d48f0193ad4e53820a3/macports-ports] and [17f5c7000ffae20fe396789d21db3aa5b8ae6dda/macports-ports]. Using defaults was necessary to implement those features because those livecheck variables are now based on other variables that the user is allowed and expected to overwrite after github.setup has been invoked. Hopefully the fix is as simple as making all of the livecheck variables defaults rather than overwrites.

Change History (6)

comment:1 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Summary: github portgroup default non-default livecheck values interfere with one anothergithub portgroup livecheck values interfere with one another when github.setup is called twice

comment:2 Changed 4 years ago by iEFdev

Cc: iEFdev added

comment:3 in reply to:  description Changed 4 years ago by iEFdev

Replying to ryandesign:

Hopefully the fix is as simple as making all of the livecheck variables defaults rather than overwrites.

Just tried this… And it works by just making both livecheck.url use default. Added another missing default to livecheck.regex, to make it consistant - and made a PR: https://github.com/macports/macports-ports/pull/7294

comment:4 Changed 3 years ago by iefdev (Eric F)

Resolution: fixed
Status: assignedclosed

In a65442c87c99ee9beb9051da9cefc48695fef0ed/macports-ports (master):

github-1.0: Wrong value of livecheck.url in subport

github portgroup livecheck values interfere with one another when github.setup
is called twice

comment:5 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

You forgot to make the same change to livecheck.type... (make it default rather than overwrite).

comment:6 Changed 3 years ago by kencu (Ken)

Eric, when you get a moment, can you address Ryan's concern please?

Note: See TracTickets for help on using tickets.