[Python-Dev] The next major Python version will be Python 8

Brian Cain brian.cain at gmail.com
Thu Mar 31 17:43:28 EDT 2016


I bought it.  I will confess to being your first victim.  :)

On Thu, Mar 31, 2016 at 4:40 PM, Victor Stinner <victor.stinner at gmail.com>
wrote:

> 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
> _______________________________________________
> Python-Dev mailing list
> Python-Dev at python.org
> https://mail.python.org/mailman/listinfo/python-dev
> Unsubscribe:
> https://mail.python.org/mailman/options/python-dev/brian.cain%40gmail.com
>



-- 
-Brian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20160331/0a3cfda9/attachment.html>


More information about the Python-Dev mailing list