increasing the python requirement

Martin Pool mbp at canonical.com
Wed Jan 5 00:21:26 UTC 2011


On 5 January 2011 10:53, Gordon Tyler <gordon at doxxx.net> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 1/4/2011 6:44 PM, Martin Pool wrote:
>> Any of these seem like a high price to pay if the benefit is just
>> getting to use some nicer python2.5/2.6 source constructs.
>
> There's also improvements/bugfixes in newer python runtimes/VMs to be
> considered.

Right, but most of them will be obtained by just building against the
latest available Python for any particular platform, which we normally
already do.

Some of them require calling new APIs, which again we already normally
do, conditionally on the API being available.

I don't think there are any bug fixes from 2.x we could only obtain by
dropping support for older Pythons.

I suppose improvement that are only in Python 3.x do fit here, but
that's a somewhat separate discussion: "when should we support 3.x?",
and then only secondarily "will dropping 2.4/5 help us support 3.x"?
It seems like it will help a bit but it's not the main thing.

Let's suppose someone came up with a branch that cleanly supported 2.6
and 3.x, and they said they found it impossibly hard to also support
2.4 from the same codebase.  Quite possibly this would be faster on
3.x than we are at the moment on 2.x.  Eventually we'll support 3.x.
Will we do it as soon as bzr2.4, if it means no more support for
python 2.5?  I think it could be a reasonable tradeoff.

On the other hand, when we come to try that work it might turn out
that it's hard to support both 2.6 and 3.x, or on the other hand that
supporting 2.5 is no harder than supporting 2.6.  I've seen anecdotes
supporting any of these positions so I think the only thing is to
actually try it in bzr.

It seems like Ubuntu may go to python3 in early 2012, at which time
some people will still be using RHEL5 on Python2.4.  So we may not be
able to avoid the dilemma.

-- 
Martin



More information about the bazaar mailing list