library versioning

Uri Simchoni uri at
Mon Nov 18 20:18:19 UTC 2019

On 18/11/2019 17:01, Stefan Metzmacher via samba-technical wrote:
> Hi Uri,
> 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).

Thanks Metze and Andreas, that clears things up.

We can avoid fixing bug 13846 for 4.10.x and tell users who are still 
stuck in 4.9.x (e.g. OpenWRT last time I checked...) to jump straight to 
4.11 or 4.12, and that way we shall avoid 4 lib releases. If we do 
backport the code fix, the precedent seems to be that this calls for a 
new lib version, so we'd need a new 4.10-based release for all four libs.

One missing piece in the puzzle - We seem not to backport "version 
bumps" in talloc/tdb/tevent. It looks like if a bugfix requires that we 
touch, e.g. lib/tevent in a stable branch, then we upgrade it all the 
way to the newest version, but if a bugfix doesn't touch code there, 
then we don't backport changes just because there's been a new release 
in master(See for example tevent 0.10.1 which was merely a version bump 
due to waf upgrade - the version bump was not backported to v4-11-test). 
That would mean that, possibly contrary to what Andrew has suggested in 
the bug thread, I don't need to backport my talloc/tevent/tdb version 
bumps from master to v4-11. Is that correct?

> 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.

The way I see it, we need either new ldb/tdb/talloc/tevent for 4.10, or 
not fix the bug there at all and then we don't need anything.

Going back to the specific problem at hand -

I suggest that I cherry-pick the actual bug fix (waf upgrade and 4 
commits that accompany it) to 4.11 *only*, and issue a new 4.11-based 
ldb version. That would accompany the version bumps for 
talloc/tdb/tevent which already landed in master, and which don't 
require back-porting at this time. As an alternative, also backport to 
v4-10-test and also bump versions of all 4 libs there.

> metze


More information about the samba-technical mailing list