library versioning

Stefan Metzmacher metze at
Mon Nov 18 15:01:50 UTC 2019

Hi Uri,

Am 18.11.19 um 14:38 schrieb Uri Simchoni:
> (taking the thread of
> to the list)
> Hi,
> Can someone reiterate our versioning scheme for libraries? I'm a bit
> confused because there seem to be some contradictions.
> - v4-11 branch has talloc v2.2.0 and master has v2.3.0 (additions to ABI
> - 2.3.0 was released without a Samba version that uses it)
> - Due to a bugfix, master goes to talloc 2.3.1 and Metze suggests that
> v4-11 should also go to 2.3.1 (and I remember that indeed this is the
> way it used to work)

Yes, that's it works for talloc, tevent and tdb.
Here Samba is simply a consumer of the api, which is very stable
and additional features don't impact older Samba versions.

There's also the question if we really need to backport library releases
to 4.11 in order to fix cross compiling. If someone wants to use
talloc, tevent and tdb as system library, the versions releases
from master would work fine. As it's no problem if the library
is newer than the version shipped in 4.11.

> Now trying to apply same logic to ldb:> - v4-11 branch has ldb v2.0.7 and master has unreleased v2.1.0
> (additions to ABI)
> - In the same way, I suppose that we need to release ldb 2.1.0 and
> upgrade v4-11's ldb to 2.1.0. But in ldb, we have 2.0.6 and 2.0.7 which
> are bugfix versions off v4-11 branch - why did we publish bugfix
> versions off v4-11 instead of releasing 2.1.x and moving v4-11 to use that?

ldb is the exception as there's a strong interaction between samba's ldb
modules and the library, that's why we can no longer use the same scheme
and need one ldb release stream per samba minor version.

Regarding talloc, tevent and tdb we have an new temporary exception
because Samba 4.10 still supports python2 and python3 bindings (also at
the same time). While 4.11 and master only support python3 bindings.
That means in order to do new releases (which can work with Samba 4.10)
be need to do them from v4-10-test. The question is if we really need
to do that for 4.10 or if 4.11 and newer would be enough (which I'd
actually prefer).

I'd prefer that we only backport waf 2.0.18 (commit
09e282ec8173f2935bdb579e0396f269ce712e0d) to 4.11 and 4.10.
And we need new ldb versions for 4.11 and 4.10. All other libraries
can come from master.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <>

More information about the samba-technical mailing list