[arch-dev-public] Plan for python upgrade
Douglas Soares de Andrade
douglas at archlinux.org
Sat Oct 4 07:54:24 EDT 2008
Eric Belanger escreveu:
> On Sat, 4 Oct 2008, Allan McRae wrote:
>
>> Allan McRae wrote:
>>> Hi everybody,
>>>
>>> Python-2.6 is out and Python-3.0 is scheduled for release in a couple
>>> of weeks. People have been asking how I am going to handle the
>>> update so I thought I'd post a summary here.
>>>
>>> <snip>
>>
>>
>> According to the number of emails in my inbox (which has reached well
>> into double figures), my plan for the python 2.6 and 3.0 upgrade is
>> rather controversial. So, I thought that I would add some more
>> justification here and point out that if people want to comment on the
>> strategy they can do so by replying to public mailing lists because it
>> is getting repetitive I will no longer be replying individually to
>> people.
>>
>> Here are the possible upgrade strategies.
>>
>> Plan 1:
>> python = python3.0
>> python2 = python2.6
>>
>> Plan 2:
>> python = python2.6
>> python3 = python3.0
>> These are the advantages/disadvantages of these plans as far as I can
>> see. Many programs point at "/usr/bin/python" or "/usr/bin/env
>> python". For Plan 1, the /usr/bin/python binary is python3.0 so that
>> involves rebuilding packages and changing them to point at "python2".
>> For some, this is as simple as rebuilding. Others require a simple
>> sed statement. Also, with Plan 1, anything with a python
>> depends/optdepends will need rebuilt. So, Plan 1 involves *a lot*
>> more rebuilding that Plan 2 (around 125 packages vs 47 packages in
>> [extra]).
>>
>> Plan 2 will also require adjusting programs built against python3 to
>> point at /usr/bin/python3 in their scripts and changing the dependency
>> to python3 so this is a now versus later issue. Also, with Plan 2, at
>> some later stage we will want the /usr/bin/python binary to be
>> python-3.x and probably to keep a legacy python-2.x package. That
>> tells me, that Plan 2 requires moving to Plan 1 at a later time.
>>
>> So in summary:
>> Plan 1 - Big rebuild now. People complain "Allan broke it"...
>> Plan 2 - Medium rebuild now, drawn out transition, followed by
>> medium/big rebuild later. People complain "Allan broke it" long term...
>>
>> I am going to go for Plan 1 unless someone convinces me the Plan 2 is
>> a better plan _long_ term. I prefer short term pain for long term
>> benefit rather than long term pain for short term benefit.
>>
>> Cheers,
>> Allan
>>
>
> IMO, Plan 1 is the way to go as this is how we managed the qt3/qt upgrade.
>
> Does anyone has an idea on how many packages in the repo currently works
> with or need python3.0? If that number is zero or very small, we could
> update python to 2.6 and wait until that number increases before
> proceeding with Plan 1. That will reduce the number of rebuilds because
> we will be replacing rebuilds by package update that eventually would
> need to be done anyway.
As Allan know, im with you Eric. I guess it will be safe to users too.
--
Douglas Soares de Andrade
-- Python, Django, Zope e Plone
== Archlinux Trusted User and Developer - dsa
** Quote: Old programmers never die; they exit to a higher shell.
More information about the arch-dev-public
mailing list