4 ms·
Just like you said, for majority of people, migration from python 2 to 3 is mostly painless. Some code don't even have to be rewritten and might work on python
by neurostimulant 6y ago
Just like you said, for majority of people, migration from python 2 to 3 is mostly painless. Some code don't even have to be rewritten and might work on python 3 without any modification. However, some applications requires major migration because their core functionality depends on some feature in python 2 that now changed python 3, and they won't do major refactoring effort until the benefit of migrating to python 3 outweighs staying on python 2. They were essentially waiting until the ecosystem migrated to python 3, but as they're also part of the ecosystem (and often the essential part in their niche), this created a chicken and egg problem that needs a decade to be resolved.
The situation with wayland migration seem to be somewhat similar with the python 3 migration. Many gui apps that uses gui toolkit probably don't need major modification, or no modification at all. But some apps that requires platform-specific access are heavily affected and might require some major refactor, and they probably won't do it until the benefit of migrating to wayland outweigh staying on xorg.
Also, unlike python 3 migration where most of the community agree that the move is justifiable will have to happen eventually, in the case of wayland migration, the community opinion seem to be split which certainly harm wayland migration progress.
- sergeykish 6y agoI've built Python 3.2 just to show the problem introduced by language designer $ python3.2 Python 3.2.6 (default, Oct 26 2020, 15:29:09) [GCC 10.2.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> u"foo" File "<stdin>", line 1 u"foo" ^ SyntaxError: invalid syntax This is hostile behavior. It took four years to solve (python 3.3), still supported: $ python3 Python 3.8.6 (default, Sep 30 2020, 04:00:38) [GCC 10.2.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>> u"foo" 'foo' Python got better in supporting old versions over the years. Take a look at Django, it got Python 3 support in February 26, 2013 [1]. > Django 1.5 introduces support for Python 3 - specifically, Python 3.2 and above. Notice version gap — no support for 3.0, 3.1. It was quite common. > python 3 migration where most of the community agree that the move is justifiable If people believed breaking change was justified they would move to 3.0, it did not happen. I've seen both Python and Ruby community, Ruby made two breaking changes (1.9 and 2.0) while Python got its PEP 414. There was a huge split among developers. --- Essentially you are describing how switch happened while I'm describing which lessons should have been learned. It is sad if Python community learned nothing. > the community opinion seem to be split which certainly harm wayland migration progress. Developers done great job, you can't run 2.7 code in 3.*, you can run X11 applications in XWayland. Is there a split in developers community? All I see is FUD among users. [1] https://docs.djangoproject.com/en/3.1/releases/1.5/#python-3-support https://docs.djangoproject.com/en/3.1/releases/1.5/#python-3...