[arch-dev-public] Plan for python upgrade

Allan McRae allan at archlinux.org
Sat Oct 4 01:13:07 EDT 2008


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






More information about the arch-dev-public mailing list