On Sun, Sep 03 2023, Jonathan Schleifer <[email protected]> wrote:
> Am 31.08.23 um 09:56 schrieb Jonathan Schleifer:
>
>> Am 31.08.23 um 08:26 schrieb Stuart Henderson:
>>>>> SHARED_LIBS +=  objfw           1.0
>>>>> SHARED_LIBS +=  objfwrt         1.0
>>>>> SHARED_LIBS +=  objfwtls        1.0
>>>> I can't remember how strict we are with these version starting numbers
>>>> but iirc we start with 0.1 (?) I don't really mind if this isn't
>>>> changed.
>>>> The bumpings are the more important ones anyway.
>>> 0.0.
>>>
>>> The key thing is to make sure that changing the versions in SHARED_LIBS
>>> changes the versions of the produced file, i.e. make sure that ports is
>>> in control.
>>
>> Ok, now I have questions :).
>>
>> I was under the impression that the the SHARED_LIBS should match the
>> .so name? This would be the case with 1.0, as upstream used 0.0 during
>> development when there was no stable ABI/API (and users could have
>> installed such a pre-1.0 release manually on OpenBSD). I could find
>> https://man.openbsd.org/library-specs.7 which seems to indicate it
>> must match the .so name, as well as lining out rules on when and how
>> to update the version, which match upstream in this case (I can vouch
>> for this, as I am the upstream).
>>
>> Given that, wouldn't it be better to have it 1.0 instead of always one
>> major version less than upstream?*
>>
>> * Very, very early, there was a major version of as high as 8. But
>> this was a decade or so ago and I think nobody ever used it. And on
>> a version that was very much declared "this WILL break, don't use this
>> for anything"
>
> I'm happy to change it to 0.0, of course, but would really like to fully
> understand the implications of this. Should every port, when imported to
> OpenBSD, change the soname to 0.0?

The library version should be 0.0 for a new port and the soname should
match the library name.  That's how we handle it in ports, with all due
respect that's not something that you, as an upstream, should feel
concerned about IMO.

Earlier you said:
>> Given that, wouldn't it be better to have it 1.0 instead of always one
>> major version less than upstream?*

The version used in ports may stay at 0.0 or move to 0.1 or 1.0, 2.0
etc, it depends on how you (upstream) preserve or change API and ABI in
the future, but it may also depend on changes in the OpenBSD base system
and ports tree.  That's why the port for objfw should have complete
control about the version used.

-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE

Reply via email to