cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: 7.20.0: soname again :-(

From: Daniel Stenberg <daniel_at_haxx.se>
Date: Thu, 11 Feb 2010 22:41:41 +0100 (CET)

On Thu, 11 Feb 2010, Patrick Monnerat wrote:

> What is the reason for changing the VERSIONINFO in 7.20.0 ? I've looked
> through all the changes and I do not see any interface added. There is quite
> a lot of new protocols and options, but I cannot find anything new regarding
> the ABI at the ".so" level. For OS400 (where only C of C:R:A is used in the
> soname computation), this change causes an "soname bump" and requires
> relinking of all calling programs/libraries :-( Did I miss anything ?

Ok, there are three parts to the explanation and I'll do them all here one by
one.

1 - I'm not an expert on these things, I mostly try to follow the documented
ways on how to proceed with the numbering.

2 - I usually tend to forget to change the numbers, so most releases actually
get the versioninfo wrongly set to the exact same as the release before due to
this.

3 - The rules in the lib/Makefile.am says exactly this:

    # 1. if there are only source changes, use C:R+1:A
    # 2. if interfaces were added use C+1:0:A+1
    # 3. if interfaces were removed, then use C+1:0:0

... so I gave this a good thought. We haven't actually added a new function,
but we have added new options. My thinking is that the rule (2) is there to
make sure that the numbering is made in such a manner that it will make it
more obvious that going back to an older version may cause sever breakage as
opposed to just going back to an older version of the lib.

One uncertainty to define is perhaps what 'interface' means in this context.

I take it you say my reasoning is wrong and that (1) is the rule I should've
followed this time?

-- 
  / daniel.haxx.se
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette:  http://curl.haxx.se/mail/etiquette.html
Received on 2010-02-11