[Python-Dev] Promoting Python 3 [was: PyPy 1.7 - widening the sweet spot]

Stephen J. Turnbull stephen at xemacs.org
Wed Nov 23 15:45:26 CET 2011

Ned Deily writes:
 > In article <87fwhfqywr.fsf at uwakimon.sk.tsukuba.ac.jp>,
 >  "Stephen J. Turnbull" <stephen at xemacs.org> wrote:
 > > I haven't had the nerve to do this on MacPorts because "port" is such
 > > a flaky thing (not so much port itself, but so many ports assume that
 > > the port maintainer's local configuration is what others' systems use,
 > > so I stay as vanilla as possible -- I rather doubt that many ports are
 > > ready for Python 3, and I'm not willing to be a guinea pig).
 > I think your fears are unfounded.  MacPort's individual port files are 
 > supposed to be totally independent of the setting of 'port select'.

If you think I'm complaining or imagining things, you're missing the

My fears are *not* unfounded.  For personal use, I wanted Python 2.6
to be default using "port select", and things went wonky.  Some things
just didn't work, or disappeared.  Reverting to 2.5 fixed, so I left
it that way for a while.  I tried it again with Python 2.7, same deal,
different ports.  Maybe those would have been considered bugs in "port
select", I don't know.  But reverting was easy, "fixed" things, and I
won't try it with Python 3 (until I have a sacrificial system available).

Also, the MacPorts solution is very resource intensive for users: I
have *seven* Python stacks on the Mac where I'm typing this -- the
only version of Python I've been able to eliminate once it has been
installed so far is 3.0! although I could probably get rid of 3.1
now).  It also leads to fragmentation (*all* of my 2.x stacks are
incomplete, I can't do without any of them), and a couple of extra
frustrating steps in finding the code that raised an exceptions or
whatever.  Not to mention that it's in my face daily: "port outdated"
frequently lines up 3, occasionally 4 versions of the same port.  This
*only* happens with Python!

And there's no way that many ports are ready for Python 3, because
their upstreams aren't!

I think that projects that would like to move to Python 3 are going to
find they get pushback from Mac users who "don't need" *yet another*
Python stack installed.  Note that Gentoo has globally switched off
the python USE flag[1] (I suspect that the issue is that one-time
configuration utilities can pull in a whole Python stack that mostly
duplicates Python content required for Gentoo to work at all).

 > Also right now besides the Python port group transition, the
 > project has been swamped with issues arising from the Xcode 4
 > introduction for Lion, mandating the transition from gcc to clang
 > or llvm-gcc.

Sure, I understand that kind of thing.  That doesn't mean it improves
the user experience with Python, especially Python 3.

It helps if you can get widespread adoption at similar pace across the
board rather than uneven diffusion with a few niches moving really
fast.  It's like Lao Tse didn't quite say: the most successful leaders
are those who hustle and get a few steps ahead of the crowd wherever
it's heading.  But you need a crowd moving in the same direction to
execute that strategy!

So I'd like see people who *already* have the credibility with their
distros to advocate Python 3.  If Ubuntu's going to lead, now's a good
time to join them.  (Other things being equal, of course -- but then,
other things are never equal, so it may as well be now anyway.<wink>)

If that doesn't happen, well, Python and Python 3 will survive.  But
I'd rather to see them dominate.

[1]  According to the notes for the ibus ebuild.

More information about the Python-Dev mailing list