• FreshPorts: ports which have PORTVERSION externally set

    From Dan Langille@dan@langille.org to muc.lists.freebsd.ports on Thu Sep 3 08:37:02 2026
    From Newsgroup: muc.lists.freebsd.ports

    Hello,
    I've asked Claude for some starting points for ports which obtain `PORTVERSION` from outside their `Makefile` - specifically `Mk/bsd.default-versions.mk` in this case. There are others, but this is where I started.
    Why have I used Claude? Because I can. Processing commits to extract values is a complex task. Keeping it all in your head is demanding. I wanted a starting point and Claude got me there.
    https://github.com/FreshPorts/freshports/issues/659 has some background on why this is a complex process.
    * changes to DEFAULT_ values needs to be detected - there's a module in the github repo for that
    * ports which use a DEFAULT_ value need to be identified / confirmed on each commit against that port - that needs to be coded, but we might have a simple solution for that.
    A simple approach might be "differential probing":
    * Run `make -V PORTVERSION -V DISTVERSION` in the port directory rCo that's the baseline
    * Run it again, this time overriding the candidate variable on the command line, e.g. `make -V PORTVERSION -V DISTVERSION PYTHON_DEFAULT=0.999999`
    * Compare. If `PORTVERSION`/`DISTVERSION` changed, the port's version depends on that variable rCo make itself just proved it.
    The current code, untested and unreviewed, sits here:
    https://github.com/FreshPorts/DefaultVersions
    The first issue is at:
    https://github.com/FreshPorts/DefaultVersions/issues
    Pull requests most welcome. Let's see if we can complete this as a group. I don't want to do it myself.
    --
    Dan Langille
    dan@langille.org
    --
    Posted automagically by a mail2news gateway at muc.de e.V.
    Please direct questions, flames, donations, etc. to news-admin@muc.de
    --- Synchronet 3.22a-Linux NewsLink 1.2