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: Yavor Doganov
Subject: Re: ABI Compatibility (was Re: Installation woes for the average user...)
Date: Fri, 22 May 2009 22:04:06 +0300
User-agent: Wanderlust/2.15.5 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (Gojō) APEL/10.7 Emacs/22.3 (i486-pc-linux-gnu) MULE/5.0 (SAKAKI)

Richard Frith-Macdonald wrote:
> On 20 May 2009, at 23:17, Yavor Doganov wrote:
> > I am counting only the major releases when there was a soname
> > bump; the regular point releases are not interesting for this
> > discussion.
> 
> Then the discussion seems rather pointless ... since what you are  
> calling the 'major' releases are those were we make ABI changes and  
> bump the soname.

Well, no matter how they're called, that's the core of the dispute:
whether actually there's an ABI break that warrants the soname bump.
If there is a real ABI break -- that's OK, but it if it's just the
feeling "We've accumulated a pile of big changes, so we might be
breaking the ABI; let's force recompilation for extra safety" --
that's a problem.

> the chances are that any individual ABI change will not break your
> application because the app will not be using the feature concerned.

Most probably that's the reason why some people (myself included)
think that some of the soname bumps are unwarranted.  I quickly looked
at the diff between two adjacent releases when the latter claimed to
be "binary incompatible", and surprise -- it really is.  There is at
least one ABI-breaking change which implies a SONAME bump.

I don't have the time to check every pair of recent (>=1.13 for Base)
releases so far, but I'll do it from now on, and I am much more
confident that you're doing the right thing.

> Chasing MacOS-X is a problem for us

I realize this, and I understand that it's hard enough even if one
does not count the various library maintenance issues.  I am not
blaming, and will never blame, for breaking the API or ABI,
being intentional or not.  You are all doing an exceptionally
wonderful job, no matter what.

> Yes, with the manpower they have (and perhaps more importantly, the
> fact that they control the entire operating system) it's relatively
> easy to add runtime tricks to pick the behaviors they want.

I wholeheartedly agree here.  Also, if I may add, judging by the large
piles of code-bases that were made free software through the years,
such approaches are (although smart in some situations) an unportable
mess which has to be rewritten/redesigned some day.

Only the GNU architectures are about 20, with 3 different kernels (and
GNU/kOpenSolaris coming along soon).  Add here the free *BSD family
systems, the proprietary Unices, Windoze, etc...  GNUstep supports
most (if not all of them, to some extent at least), and that's an
enormous effort and achievement already.




reply via email to

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