cURL / Mailing Lists / curl-library / Single Mail


Re: Obsolete error codes / Debian soname

From: Domenico Andreoli <>
Date: Mon, 3 Sep 2007 02:20:54 +0200


On Tue, Aug 28, 2007 at 02:22:23PM +0200, Richard Atterer wrote:
> I'm not sure I've correctly understood all the details, but my impression
> is that it might be possible to improve the situation now that the above
> package transition has taken place. However, because of the large number of
> packages which depend on libcurl, updating it to a new soname is not easy.
> In general, Debian does aim to keep binary compatibility with upstream
> library releases. Maybe Domenico (the package maintainer) can comment on
> this?

that from .3 to .4 has not been a soname transition mandated by changes
in the ABI. what changed is the return value of a single function among
all those exported by libcurl.

so every application built with one library will work also with the
other. given that it checks the return codes, errors included, it gets
on the way.

libcurl in debian is at all the effects coherent with upstream, it
builds and installs libcurl.4. every package built with it will get a
dependency on libcurl.4.

it only happens to be (sym)linked also as libcurl.3. all the existent
applications used to libcurl.3 work without any further transition,
not even a rebuild.

ah.. i forgot the versioned symbols. of course they are still all marked
libcurl.3, since nothing from the linker POW is changed in the library.
anyway this would be a debian "private" matter, it is the only one to
provide them. probably it is also the only one to provide both openssl
and gnutls variants.

situation would be really bright if only libcurl.4 was not provided by
packages named after libcurl3. but next time will do better :)

so feel free to enforce your preferred policy about the interface
used with applications. IMHO this is sufficiently robust to survive at
the changes. it is pretty runtime. it would be very cool to have such
commodity also with protocols implementations...

that said, i really do not see any sort of real problem to be solved.
if i am wrong, please elaborate further.


-----[ Domenico Andreoli, aka cavok
   ---[ 3A0F 2F80 F79C 678A 8936 4FEE 0677 9033 A20E BC50
Received on 2007-09-03