Live data from Hacker News

Python 2 will be replaced with Python 3 in the next RHEL major release

access.redhat.com

191–200 of 341 posts

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#191
post #64

Earlier quoted context omitted.

Quite the opposite. Python had deep problems that could simply not be fixed without BC breaks. The decision was made, and in hindsight it was the correct decision by Guido and other core devs. Look at PHP, and look what a total cluster of madness the language has become.

I think Python 3 was not brave enough, to be honest, to future proof Python: * an optional type system without hacks was not introduced (types in comments, really?) * the GIL was not removed or at least a solid parallelism story was not included, one that would allow Python to use all cores on a system while sharing, if needed, memory * no true performance improving changes were made; by this I mean stuff that improv…

> I think Python 3 was not brave enough, to be honest

Agree 100%. I would have added:

* fix the C API and pass the interpreter instance as the first parameter to all functions as is common in other interpreted languages, rather than relying on a global state.

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#192
post #171
post #64

Earlier quoted context omitted.

I think Python 3 was not brave enough, to be honest, to future proof Python: * an optional type system without hacks was not introduced (types in comments, really?) * the GIL was not removed or at least a solid parallelism story was not included, one that would allow Python to use all cores on a system while sharing, if needed, memory * no true performance improving changes were made; by this I mean stuff that improv…

"I say this because I'm a bit worried that long term Python has locked itself into a corner where it will keep getting pushed into as the other languages develop a better developer UX." You can stop worrying. That is absolutely what will happen. But it is a good thing. Languages should be something, not merely an accumulation of every fad and trend that appeared over its lifetime. That means eventually they will matu…

What's the last mainstream language that died? Even more so, what's the last mainstream language since the age of the internet that died?

Nothing truly dies anymore. It just lives as a ghost and haunts unfortunate journeymen.

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#193

Earlier quoted context omitted.

No that's just how IT works. Your games don't work in windows XP anymore. Actually, your USB3 mouse doesn't work on windows 7 out of the box. Centos have LTS, but still EOL. Ubuntu init system was changed to upstart. Then to systemd. Also gnome, then unity, then with new menu/notif/systray semantics, then back to gnome (but shell), and soon wayland. It breaks a lot of things. Firefox new addons don't work with some a…

> Your games don't work in windows XP anymore. In fact I can play EarthSiege 2, a game from the 3.11/Win95 era, just fine on Win7 x64 with the only things not working being joystick input (I guess it does some shenanigans with the MIDI/joystick port in addition to using the windows joystick API) and the pause screen which shows your vehicle spinning around spins too fast (probably because its speed is tethered to CPU…

We can trade anecdotes on which games age well on which OSes all day.

https://en.wikipedia.org/wiki/Chaos_League

Released in 2004, you can't play on anything but Win XP because of Starforce DRM that didn't bother to patch for future compatibility.

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#194

Earlier quoted context omitted.

It's not the opensource movement. It's IT in general. A lot of software stopped working with the windows 10 update that was forced on the users. Android breaks the API regularly by changing the permission game. The PSF has limited resources (3 million of dollar of budget) to exists (this includes running pypi and organising pyconf), but I think it's track record is quite good, even comparing to commercial products.

Actually, Android doesn't break the API, even by changing the definition of permissions. If you have a breakage, investigate your app manifest, what API version you are targeting. Android frameworks shim the old behaviors for the apps that declare the use of the old API versions.

E.G: Since API Level 19, the Alarm system has been completely remade. One must check the API Level to act some how or some differently. The same is for permissions after the advent of Android OS 6.0+. But we still need the support library to give Fragments and the ActionBar to API Levels lower than 11. And VectorDrawables to API Levels lower than 23. And many more objects.

It's not that simple.

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#195
post #174
post #158

Earlier quoted context omitted.

We've switched from 2.7 to 3.4 (and upwards to 3.5, 3.6) in about a month or so. It delayed some deployments but nothing serious. If you do it step-by-step it's not that hard. The worst part was str/binary conversions but afterwards everything was a lot easier and better to maintain. If your company is big enough you should maintain and keep it up-to-date, not "it just works"(TM) and hope for the best after 10 years.…

It's not that hard unless you had some very advanced code utilizing Python 2 internals that were significantly changed in Python 3. However, conversion takes a lot of time and if something works, why should you be forced to change it?

Various intranet pages at my company "work" in IE6/7 or whatever and nobody seems to be rushing to fix them. That kind of sucks, though.

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#196
post #122
post #112

Earlier quoted context omitted.

I see a DOS application running on XP all the time I go and visit the local doctor (social healthcare, regional center).

Given the use case, I bet it was most likely written in Clipper.

Probably, friend of mine seen a dbase one lately...

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#197
post #174

Earlier quoted context omitted.

It's not that hard unless you had some very advanced code utilizing Python 2 internals that were significantly changed in Python 3. However, conversion takes a lot of time and if something works, why should you be forced to change it?

Because non-IT users (your customers) are sick and tired of apps from 2000 that run clunky and ugly because someone is "forcing you change it" (aka doing your job) and you don't feel like it. Yes,

I know some extremely well-written apps from 2000 without trendy obfuscating flat interface, and many trendy albeit unusable monstrosities from the past 3 years. What kind of argument did you make?

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#198

Earlier quoted context omitted.

The double standard when it comes to Python is mindblowing. No other language could have gotten away with such ridiculous fragmentation and perf regression for such a long period of time.

What do you mean by double standard? Everyone in the community, including the core developers, acknowledge that the 2 to 3 story was full of mistakes. They have promised not to make it again. And they took some actions to remedy the problems, and that's why Python 3 is finally succeeding. I recommend this presentation by Victor Stinner at FOSDEM 2018 which talks about it: https://fosdem.org/2018/schedule/event/python…

Could someone provide a summary of the kinds of mistakes/remedies?

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#199

Earlier quoted context omitted.

I don't know if HN can find any counter-examples, of a language that thrived through an incompatible, code-breaking upgrade. Of course. Swift 3 is one example. Ruby 1.9, as others have pointed out, is another. PHP is yet another, and perhaps more relevant because it is close to contemperaneous. It had its "Python 3 moment" with the migration to PHP 5. Lots of BC breakages.[0] That transition took about 3-4 years for…

Swift 3 is compiled. So you can provide the binaries and be ok. Ruby 1.9 is a great example of why you should not be too nice: they told everybody "you have a fews months, deal with it". The community moved. Python said "poor things, we understand, take those tools and years to do the thing", and the community cried, and did nothing. PHP literally failed. They canceled V6 and jumped to V7. The funniest part ? None of…

Comparing Python and Ruby upgrades is not fair.

Ruby 1.9 was working mostly the same as 1.8 while provising 2-3x speed improvment, and new exciting features.

Python 3 breaks even the basic Python 2 hello world, everything was notably slower, and not anything new and exiciting feature-wise apart ubified string support.

Re: Python 2 will be replaced with Python 3 in the next RHEL major release

#200

I think this has been the ugliest, most badly managed update for a major language since Perl6. And this is not completely over, yet. Over the next 5 years I still expect to see people complaining about this Python3 thing. I hope the designers have learned a lesson.

Perl6 isn't an update to Perl5. It's a completely unrelated language with a misleading name.
Post reply on HN