gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ABI Compatibility (was Re: Installation woes for the average user...


From: Richard Frith-Macdonald
Subject: Re: ABI Compatibility (was Re: Installation woes for the average user...)
Date: Wed, 20 May 2009 12:35:13 +0100


On 20 May 2009, at 11:53, Yavor Doganov wrote:

On Wed, May 20, 2009 at 11:24:39AM +0100, Richard Frith-Macdonald wrote:
I think what you are describing (as the correct way to do things) is
what GNUstep already tries to do ... see
http://mediawiki.gnustep.org/index.php/GNUstep_release_policy for the
actual release policy details.

On the contrary -- this very policy is the problem.

The SONAME of a shared library should be bumped if and only if there is
ABI break, not because of publicity reasons, big API additions, or
anything else.

That's a matter of opinion. The GNUstep policy reserves the right to change the soname solely for publicity reasons, but afaik has never done so. In practice pretty much all soname changes are related to ABI changes.

 You can continue to version stable releases with even
numbers and unstable releases with odd numbers and release them in any
order you feel apropriate; the SONAME has absolutely nothing to do with
the package version.

How you version the releases and what is considered
"stable" and "unstable" is completely orthogonal to the library
versioning.

is technically true, it's not what people expect in practice, and
therefor not policy. The policy is to keep the main so version numbers
in sync with the main release version numbers, because that matches
normal expectations.

Name just one library -- just one -- on your GNU system that behaves
this way.

Hmm ... looks like you are right on that one ... I remember that user expectations were an argument years ago, back when the policy was originally formed, but perhaps that's changed (or perhaps it was never valid, just assumed).

> Consider what would happen if glibc or glib/gtk+ bump the
soname every six months...  I find it incredibly hard to believe that
this is "normal expectation".

Er ... frequency of release of binary incompatible code is a completely different issue from version numbering.

The fact is, most GNUstep libraries are still having to change. Even the base library needs to break binary compatibility occasionally in order to improve MacOS-X compatibility.


However, I don't think there have been any recent releases which should
have changed the so number for any of the libraries.

I've made an experiment some time ago by altering the symlinks without
recompiling anything. Every GNUstep app in Debian worked out of the box
(of course that's not a 100% proof that the new Base/GUI were ABI
compatible).

I agree ... not even close to proof.

Most ABI changes are minor and won't effect most applications ... but we still need to change the soname because we don't know whether there are apps out there which will break.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]