[PATCHES] Port pytalloc to Python 3

Petr Viktorin pviktori at redhat.com
Fri Dec 5 05:27:20 MST 2014

On 12/05/2014 12:02 PM, Jelmer Vernooij wrote:
>>>>>>>> Which major projects are there, just beside OpenChange and FreeIPA?
>>>>>>>> I do of course want to accomodate the projects that use our bindings, so
>>>>>>>> let's
>>>>>>>> see if we can come up with a plan that is satisfactory for both of us.
>>>>>>>> :)
>>>>>>>> Is there any reason you couldn't just depend on a newer version of Samba
>>>>>>>> once
>>>>>>>> you migrate FreeIPA to Python3? Why is it essential for you Samba
>>>>>>>> support multiple
>>>>>>>> Python versions?
>>>>>>> Well, that would essentially force the FreeIPA team to maintain a fork
>>>>>>> of Samba until FreeIPA is ported. And porting FreeIPA's dependencies
>>>>>>> might take some time.
>>>>>> Why not leave Samba until later then, if this is a concern?
>>>>>> Andrew Bartlett
>>>>> If you're asking why *I* don't hold off porting Samba, it's because Samba
>>>>> it's a part of the Fedora Live DVD, and the goal is to remove Python 2 from
>>>>> that completely. Porting FreeIPA can wait until later, when we try to tackle
>>>>> the entire distro.
>>>>> Speaking from my other (and very separate) role, as a FreeIPA developer:
>>>>> Python 3 is not a priority there, mainly because all the dependencies are
>>>>> not ported yet. Any of the dependencies could ask the same question – why
>>>>> not leave this one project until the end?
>>>> That's why it is sensible for an infrastructure components like
>>>> libtalloc and friends to support both Python2 and Python3.
>>>> If there could be a phaseout time like several releases, it would give
>>>> people at least a chance to allocate time to port over.
>>> For talloc, tdb and ldb it makes sense to support both python2 and
>>> python3. For Samba itself, the burden of maintaining support for both
>>> is much higher, and the benefits smaller.
>> Yes. However, talloc/tdb/ldb support for both Python2 and Python3
>> means there is need to improve our build system to support both Python
>> versions so this task is relevant.

Just to clarify: Are you just saying it needs to be possible to build 
Samba with Python 3?
Or are you proposing that the modules for both Python 2 and 3 be built 
in the same configure/make run? It seems (to me, currently) that this 
would require rather big changes in Waf, while a configure-time switch 
for the Python version is practically free.

>> As for migrating FreeIPA to Python3 if proper Samba bindings would
>> become Python3 only, this is something we can discuss when they would
>> become as such -- I don't see Samba migrating earlier than 4.3 which
>> means FreeIPA would have time next year realistically speaking.
> Just to be clear: I'm happy for Samba to migrate to Python3. I have problems
> with e.g. Samba 4.3 supporting both Python 2 *and* Python3 because of the
> maintenance burden involved in that.

That sounds entirely reasonable.

> If FreeIPA can just follow Samba with the Python release it uses once Samba
> releases a major version with Python3, then there should be no need for support
> for multiple Python versions in Samba.

I'll let people from Fedora and FreeIPA know about what's been said 
here; hopefully we can come up with a way to make it work for everyone.

Are the relevant people from OpenChange aware of this discussion?


More information about the samba-technical mailing list