Closed drdanz closed 4 years ago
Hi! chimming up with my packager hat on: if the version == soversion then it means that the soversion will change with every release, even point releases. This is either a mistake or a notice that the API/ABI is not stable. Which would be the real case here?
originally we didn't plan for a stable ABI until a 2.0 release. Years later, I don't know when/if there will be a 2.0.
I'm ok setting a stable SOVERSION for 1.x version. what do you suggest? we could do 1.2.99 for the life of the 1.2 releases?
I would rather do a 1.2.8 with SONAME 1. If bugs or improvements arrive just create a 1.2.9 or 1.3 release as necessary. And as long as you don't break API/ABI, of course :-)
ok, I see no problem with this plan. it feels a bit strange to reduce the SONAME from 1.2.x to 1, but I don't think anything breaks due to this.
Well, whatever uses it will have to be recompiled, it's the same as any SONAME bump. Apart from that I don't think there will be any other issue, as the SONAME is just a string after all.
Worth to mention: as it currently is each and every new version is a SONAME bump, so it's doing it one more time.
fixed in commit 53d0512d220a5fe3943cf0444395206433e6ec87
The
SOVERSION
andVERSION
properties have different meaning, but in KDStateMachineEditor are used as if they were the same thing, see for example:https://github.com/KDAB/KDStateMachineEditor/blob/4819c0ff0107d01bd68b331f7a04a102b2ad0494/src/core/CMakeLists.txt#L55-L60
This is problematic for packagers, I recommend to change it to a single number, like most libraries. If you agree on this, I can open a PR.