The next major Python version will be Python 8

wxjmfauth at gmail.com wxjmfauth at gmail.com
Fri Apr 1 11:44:16 EDT 2016


Le vendredi 1 avril 2016 00:04:44 UTC+2, Victor Stinner a écrit :
> Hi,
> 
> Python 3 becomes more and more popular and is close to a dangerous point
> where it can become popular that Python 2. The PSF decided that it's
> time to elaborate a new secret plan to ensure that Python users suffer
> again with a new major release breaking all their legacy code.
> 
> The PSF is happy to announce that the new Python release will be
> Python 8!
> 
> Why the version 8? It's just to be greater than Perl 6 and PHP 7, but
> it's also a mnemonic for PEP 8. By the way, each minor release will now
> multiply the version by 2. With Python 8 released in 2016 and one
> release every two years, we will beat Firefox 44 in 2022 (Python 64) and
> Windows 2003 in 2032 (Python 2048).
> 
> A major release requires a major change to justify a version bump: the
> new killer feature is that it's no longer possible to import a module
> which does not respect the PEP 8. It ensures that all your code is pure.
> Example:
> 
>     $ python8 -c 'import keyword'
>     Lib/keyword.py:16:1: E122 continuation line missing indentation or outdented
>     Lib/keyword.py:16:1: E265 block comment should start with '# '
>     Lib/keyword.py:50:1: E122 continuation line missing indentation or outdented
>     (...)
>     ImportError: no pep8, no glory
> 
> Good news: since *no* module of the current standard library of Python 3
> respect the PEP 8, the standard library will be simplified to one
> unique module, which is new in Python 8: pep8. The standard library will
> move to the Python Cheeseshop (PyPI), to reply to an old and popular
> request.
> 
> 
> DON'T PANIC! You are still able to import your legacy code into
> Python 8, you just have to rename all your modules to add a "_noqa" suffix
> to the filename. For example, rename utils.py to utils_noqa.py. A side
> effect is that you have to update all imports. For example, replace
> "import django" with "import django_noqa". After a study of the PSF,
> it's a best option to split again the Python community and make sure
> that all users are angry.
> 
> 
> The plan is that in 10 years, at least 50% of the 77,000 packages on the
> Python cheeseshop will be updated to get the "_noqa" tag. After 2020,
> the PSF will start to sponsor trolls to harass users of the legacy
> Python 3 to force them to migrate to Python 8.
> 
> 
> Python 8 is a work-in-progress (it's still an alpha version), the
> standard library was not removed yet. Hopefully, trying to import any
> module of the standard library fails.
> 
> Don't hesitate to propose more ideas to make Python 8 more incompatible
> with Python 3!
> 
> Note: The change is already effective in the default branch of Python:
> https://hg.python.org/cpython/rev/9aedec2dbc01
> 
> Have fun,
> Victor

Très bonne idée.
Et d'ailleurs, Python 8 arrêtera de se planter dès que l'on
utilisera un e accent aigu, (U+00E9) ou un ü (U+00FC) comme
dans "ETH Zürich".

Salutations.



More information about the Python-list mailing list