gnustep-dev
[Top][All Lists]
Advanced

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

Re: gnustep release numbers


From: Helge Hess
Subject: Re: gnustep release numbers
Date: Thu, 5 Oct 2006 01:01:12 +0200

On Oct 5, 2006, at 24:30, Hubert Chan wrote:
I would prefer to have more frequent releases, but with a stable
SONAME/ABI.

Thats an obvious contradiction. Its close to impossible to advance the functionality w/o changing the ABI. If you have set an ABI its set in stone, you can only provide bugfixes.

(you never need to recompile programs for a new release if you keep
the old libraries ... that's what library versioning is for)e
.
[users do NOT compile programs, developers do]
Actually, with the recent GNUstep 0.11.0/1.13.0 release, you are unable
to run programs compiled against 0.10.3/1.12.0 because the old library
could not communicate with ... I think it was gdnc (I assume due to a
change in the communication protocol).

...

On the other hand, if you take a program compiled against 0.10.3/1.12.0
and make libgnustep-base.so.1.12.0 a symlink to
libgnustep-base.so.1.13.0, and libgnustep-gui.so.0.10.3 a symlink to
libgnustep-gui.so.0.11.0, it seems to run perfectly fine.

Thats because the program you check only uses the "old" API. ABI compatibility is _exact_. You can't add a (public) class or method and you must not "fix"(/change) the behaviour in an incompatible way. Eg if gnustep-base 1.13.0 adds NSOutputStream and a tool uses that it can't be ABI compatible with 1.10.0 for obvious reasons.

So keeping a stable ABI bites with advancing gnustep-base which is often work for adding additional Cocoa methods, classes or fixing incompatible behaviours etc. Which is why I _encourage_ having more GNUstep _alpha_ releases to move things forward quickly in the release-early-release-often spirit. But at the same time its not really hard to keep _one_ maintained and published "guaranteed" state a "thirdparty" developer can rely on.

Greets,
  Helge
--
Helge Hess
http://docs.opengroupware.org/Members/helge/






reply via email to

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