[Pkg-samba-maint] debian-only patches break upgrading our python3 bindings (was: Re: Bug#814928: build python3 bindings)

Timo Aaltonen tjaalton at debian.org
Tue Sep 4 15:57:55 BST 2018


On 01.07.2018 12:47, Mathieu Parent wrote:
> (See thread at https://alioth-lists.debian.net/pipermail/pkg-samba-maint/2016-April/018139.html
> and commits at https://salsa.debian.org/samba-team/talloc/commits/7e58e2de17d62818913a08bece2d4bb5dce898a2)
> 
> 
> Le dim. 3 avr. 2016 à 23:22, Jelmer Vernooij <jelmer at samba.org> a écrit :
>>
>> On Mon, Apr 04, 2016 at 09:08:25AM +1200, Andrew Bartlett wrote:
>>> On Sun, 2016-04-03 at 20:44 +0000, Jelmer Vernooij wrote:
>>>
> [...]
>>>> I don't think it's fair to say that reverting the symbols patch is
>>>> breaking the symbols. The symbols are broken by design as they
>>>> include
>>>> the upstream version string, meaning each new version will change the
>>>> names of all symbols:
>>>>
>>>> E.g.:
>>>>
>>>> + pytalloc_reference_ex at PYTALLOC_UTIL.PY3_2.1.5 2.1.6
>>>>
>>>> (notice the _2.1.5 at the end of the symbol name)
> 
>>> That looks OK to me.  In this case it is odd, because the .PY3_2.1.5
>>> symbol first appears in our new 2.1.6 package.
>>>
>>> The next version will, like the python2 package, only add the name of
>>> new symbols.
>>>
>>> With the patch I removed in place however, it did do what you say:
>>>
>>> Each new talloc version broke all the symbols, as no old version
>>> numbers were embedded in the symbols.
>>>
>>> (The fact that 2.1.5 and 2.1.6, and -py3 and .py3 are visually similar
>>> makes this all the more mind-bending).
>> Ah, oops. I missed the @ in there for some reason.
>>
>> Looks okay to upload for me.
> Hi,
> 
> 
> py3 talloc support was removed and I want to re-introduce it (Timo
> proposed a MR about this).
> 
> The package is ready (for experimental) but it has this line in the
> symbols file:
> PYTALLOC_UTIL.CPYTHON_36M_X86_64_LINUX_GNU_2.1.13 at PYTALLOC_UTIL.CPYTHON_36M_X86_64_LINUX_GNU_2.1.13
> 2.1.13
> 
> (See https://salsa.debian.org/samba-team/talloc/commit/f3c5f776644675c27efe54a4d69f2defbfd9e4e9#d26ddfb231ded4a98ae501d9114b198b03784eac_5_2)
> 
> And it contains those files (with python version included) :
> $ dpkg-deb --contents ../python3-talloc_2.1.13-1_amd64.deb  | grep cpython
> -rw-r--r-- root/root     15688 2018-07-01 09:28
> ./usr/lib/python3/dist-packages/talloc.cpython-36m-x86_64-linux-gnu.so
> -rw-r--r-- root/root     18352 2018-07-01 09:28
> ./usr/lib/x86_64-linux-gnu/libpytalloc-util.cpython-36m-x86-64-linux-gnu.so.2.1.13
> lrwxrwxrwx root/root         0 2018-07-01 09:28
> ./usr/lib/x86_64-linux-gnu/libpytalloc-util.cpython-36m-x86-64-linux-gnu.so.2
> -> libpytalloc-util.cpython-36m-x86-64-linux-gnu.so.2.1.13
> 
> Is this acceptable or should we patch the build system?
> 
> Regards
> 

It's what the others have, as for example on Fedora:

http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/p/python3-talloc-2.1.14-2.fc29.x86_64.html

/usr/lib/.build-id
/usr/lib/.build-id/7c
/usr/lib/.build-id/7c/8702e033dd1f22e6707616088cc658d2a73a6b
/usr/lib/.build-id/94
/usr/lib/.build-id/94/e84412df74bf27231d62180ec260ebfc57095f
/usr/lib64/libpytalloc-util.cpython-37m-x86-64-linux-gnu.so.2
/usr/lib64/libpytalloc-util.cpython-37m-x86-64-linux-gnu.so.2.1.14
/usr/lib64/python3.7/site-packages/talloc.cpython-37m-x86_64-linux-gnu.so

so looks valid to have it like that, and drop the symbols file as it was
mentioned to be "the wrong approach" on #814928.


-- 
t



More information about the Pkg-samba-maint mailing list