Live data from Hacker News

Extend Python 2.7 life till 2020

hg.python.org

21–30 of 286 posts

Re: Extend Python 2.7 life till 2020

#21
post #6
post #4

Earlier quoted context omitted.

Guido's or yours opinions are irrelevant. If people have a lot of code for Python 2.7 and have little incentive to migrate to Python 3, then they'll stick with Python 2.7.

This is the same logic that got us stuck with IE6 and Windows XP for over 13 years (and we'll probably be stuck with it for a few more, altough IE6 has been dying now for a little while and Windows XP is being migrated off from)

Don't understand; Python 2.x support is already there, how much work is it to NOT delete it? Its a whole different issue - IE6 was a burden on servers with progressive web design. This Python situation is the reverse (obverse? inverse?)

Re: Extend Python 2.7 life till 2020

#22
post #7

Earlier quoted context omitted.

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

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

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)

Re: Extend Python 2.7 life till 2020

#23

Oh for god's sake. Kill the damn thing already. PHP 4 to 5 was a massive leap compared to Python 2 to 3, but they actually made that leap!

Amongst others, the Mercurial devs talked to Guido during Pycon about the huge porting effort towards Python 3 (with little benefit to the hg codebase). Let's not forget that Python itself hosts its code on http://hg.python.org. And during Guido's keynote (which should be online tomorrow) he said his own Dropbox has a huge Python 2.x codebase live on the servers which is difficult to migrate.

He didn't take the decision lightly. These are just two examples, but there's still lots of big Python 2.x uses out there.

If it's any consolation, his keynote started with a big "forbidden" sign over "2.8".

Re: Extend Python 2.7 life till 2020

#24
post #7
post #2

Damn. I hope my grandchildren see the day when Python 3 is commonplace.

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.

Re: Extend Python 2.7 life till 2020

#26
post #4

Earlier quoted context omitted.

Guido's or yours opinions are irrelevant. If people have a lot of code for Python 2.7 and have little incentive to migrate to Python 3, then they'll stick with Python 2.7.

I've used 2.* for about 10 years, quite happily. If I switch to anything, I'll probably switch to Go. (I originally typed 2.7, which is nonsense.)

that's quite an achievement, considering it was only released 4 years ago!

Re: Extend Python 2.7 life till 2020

#28

Oh for god's sake. Kill the damn thing already. PHP 4 to 5 was a massive leap compared to Python 2 to 3, but they actually made that leap!

PHP5 was almost completely backwards compatible with PHP4, Python 3 has much larger changes.

Just the entire OOP system changed.

However, nobody noticed because nobody used the OO features in PHP4.

Re: Extend Python 2.7 life till 2020

#29
post #7

Earlier quoted context omitted.

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

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

Re: Extend Python 2.7 life till 2020

#30
This is a result of some not so optimal design decisions in the past.

I remember, when Py3 first came out, everything was incompatible -- unnecessary incompatibilities like the u" notation for Unicode string literals that was dropped. Unnecessary incompatibilities in the C-extension-module implementation layer. And so on. The list of incompatibilities was just huge.

Later several of them where dropped, like the string literal trouble ... But than the trouble was already done. Many extension modules where not lifted to the new version, since the overhead was to big.

I think, many more projects would have adopted Py3, if more extension modules would support it.

The huge library of extension modules was always the strength of Python. Now we have many projects still running on Py2, because Py3 did ignore this strength.

Post reply on HN