Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Since it's only bug & security fixes for Python 2.7.x from this point on, the momentum to python 3.x will pick up considerably.

Python 3 compatibility far outnumbers incompatible packages now: http://python3wos.appspot.com



The number of compatible packages is irrelevant. All it takes is one critical package to be stuck on 2.7.

It's not like I can just decide to drop the dependency on boto and twisted from all my work code and migrate to something else.

I understand that these are opensource projects and I should be submitting patches to make the migration faster, but from a business point of view, I have absolutely nothing to gain by doing that instead of just sticking with 2.7.


You are correct, but the number of blockers is getting smaller. I sympathize with your situation, boto is a pretty big blocker (PIL was too until I switched to Pillow) and it impacts several of my projects, but thankfully I can work on porting my code to 3.x with six https://pypi.python.org/pypi/six and still deploy on 2.7 until boto gets there.

and Twisted seems to be making good progress:

http://twistedmatrix.com/trac/milestone/Python-3.x


The disaster that is unicode in Python 2.7.x is enough for me to use Python 3 for anything I do in the future. And as you said there are enough compatible packages now to make this doable so yay for Python 3, and I say that as a former Python 3 skeptic.


A bit off topic, but what exactly makes boto so hard to port to Python 3? Whenever I look at this page I am puzzled by it still not supporting Python 3


There is a port in the works [0], and apparently they decided to go with a rewrite instead of just a port. I'm not sure of the exact reasoning, but that could explain why it takes them time.

[0] https://github.com/boto/boto3


There has certainly not been a lack of work on porting, there was the neo branch as well, there is some interesting (for some values of interesting) discussion about the approaches to 2.x and 3.x compatibility:

https://github.com/boto/boto/issues/1127

and also the py3kport branch:

https://github.com/boto/boto/tree/py3kport/py3kport


I don't know all the backstory, but when I pip-installed awscli in a py3.4 virtualenv this week, it pulled in "botocore", among others. Everything seems to work fine, so at least botocore works on version 3. Since awscli is a very complete AWS interface, it may be just a matter of documentation or a very thin API layer before everything one needs in boto works fine on v3.


Paramiko didn't make a 3.x release until recently.

(That doesn't make it hard or anything, but it seems lots of projects that depend on it were waiting)


I thought 2.7 has always been the bugfix branch and no new features would be ported to the 2.x branch after 2.7 was released? Some things were backported from 3.x to 2.x but that was done with 2.6 and 2.7.


> the momentum to python 3.x will pick up considerably.

People won't leave Python 2.7 for Python 3.x, they'll go to other languages. Python has no right to its users.


bullshit. i have several large Django code bases to maintain and all of them could move to py3 if needed if it wasn't for boto. As soon as they are ready porting boto my next projects will all be py3.


Considering Py2.7, Py3 is actually an "other language". Why would all these people throw out their Python expertise?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: