Bug 13960 - Samba/libtalloc/libtdb/libtevent/libldb fails to build with Python 3.8
Summary: Samba/libtalloc/libtdb/libtevent/libldb fails to build with Python 3.8
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: Build (show other bugs)
Version: 4.10.0
Hardware: All All
: P5 normal (vote)
Target Milestone: ---
Assignee: Karolin Seeger
QA Contact: Samba QA Contact
Depends on:
Reported: 2019-05-22 08:12 UTC by Andreas Schneider
Modified: 2019-10-24 20:30 UTC (History)
6 users (show)

See Also:

patch for 4.10 (119.41 KB, patch)
2019-06-17 11:09 UTC, Andreas Schneider
ab: review+

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Schneider 2019-05-22 08:12:50 UTC
Samba/libtalloc/libtdb/libtevent/libldb fails to build with Python 3.8.

Checking for pyembed fails because it is not really supported by the python3-config anymore, see https://bugs.python.org/issue36721
Comment 1 Andreas Schneider 2019-05-22 08:26:27 UTC
Ok, this is a python3 change. We need to fix waf to look up pyembed correctly as libpytalloc-util requires it!
Comment 2 Andreas Schneider 2019-05-22 15:26:41 UTC
waf bug: https://gitlab.com/ita1024/waf/issues/2239
Comment 3 Andreas Schneider 2019-06-17 11:09:14 UTC
Created attachment 15252 [details]
patch for 4.10
Comment 4 Alexander Bokovoy 2019-06-17 11:47:32 UTC
Comment on attachment 15252 [details]
patch for 4.10

LGTM. Please create a CI run on gitlab too.
Comment 5 Karolin Seeger 2019-08-06 08:04:50 UTC
(In reply to Alexander Bokovoy from comment #4)
Pushed to autobuild-v4-10-test.
Patch adds trailing whitespaces.
Comment 6 Andreas Schneider 2019-08-06 08:57:58 UTC
Yes, that's from waf upstream repo. Andrew didn't want to remove them :-)
Comment 7 Karolin Seeger 2019-08-09 07:58:17 UTC
Pushed to v4-10-test.
Closing out bug report.

Comment 8 Andrew Bartlett 2019-10-23 17:58:22 UTC
David pointed out to me in a private mail that the version numbers of the sub-projects need to be bumped to keep the common code (eg the build system) in sync between released tarballs and the published samba tarball. 

Lets sort that out in bug 13846.
Comment 9 Uri Simchoni 2019-10-24 11:55:55 UTC
(In reply to Andrew Bartlett from comment #8)
Trying to put the last comment in other words that make more sense to me, pls correct me if I'm wrong:

In order to actually "fix" this bug for libraries (as the bug is for both Samba and libraries) we need to make a new release of those libraries. And in order to make a new release, we need to bump the version numbers because, well, different releases must have different version numbers. It's not about ABI stuff and such. Hence the bumping, where applicable should be in the patchlevel number.
Comment 10 Andrew Bartlett 2019-10-24 17:22:50 UTC
(In reply to Uri Simchoni from comment #9)
Correct.  This isn't really an ABI change, we just need new packages.  However our current process requires it. 

See https://gitlab.com/samba-team/samba/merge_requests/374 for an attempt to make the ldb package version be the Samba version, which would have made this process automatic for ldb but it got lost in the weeds.
Comment 11 Stefan Metzmacher 2019-10-24 20:30:56 UTC
In master we have:

git log --oneline origin/master third_party/waf/ lib/tdb/wscript  lib/tevent/wscript lib/talloc/wscript

123267138e99 tevent: Release tevent 0.10.1
60cba7b3a171 tdb: Release tdb 1.4.2
cd20e3876c36 talloc: Release talloc 2.3.0
aabdcc91513e third_party: Update waf to version 2.0.17

For 4.10 we have:

git log --oneline origin/v4-10-stable third_party/waf/ lib/ldb/wscript
fe99db5c3492 ldb: Release ldb 1.5.6
c51d810ee99f third_party: Update waf to version 2.0.17

For 4.11 we have:
git log --oneline origin/v4-11-stable third_party/waf/ lib/ldb/wscript

bc0d16c9d8ea ldb: Release ldb 2.0.7
9c677a274d49 ldb: Correct Pigeonhole principle validation in ldb_filter_attrs()
80bd467affbd ldb: Release ldb 2.0.6
86d480ade259 ldb: Release ldb 2.0.5
f58324570655 ldb: Fix dependency on ldb_key_value_sub_txn_{mdb_}test
e46d5bb669d1 ldb: Release ldb 2.0.4
201684e59fd4 lib ldb ldb_key_value tests: Add tests for wrapped operations
b78597e1cd0b lib ldb: csbuild add lib/util/attr.h to dist
aabdcc91513e third_party: Update waf to version 2.0.17

So this seems to be no problem at all.
All current releases have at least waf 2.0.17