[Python-Dev] Status of Python 3.6 PEPs?

Victor Stinner victor.stinner at gmail.com
Tue Jul 12 05:26:19 EDT 2016


Hi,

I see many PEPs accepted for Python 3.6, or stil in draft status, but
only a few final PEPs. What is happening?

Reminder: the deadline for new features in Python 3.6 is 2016-09-12,
only in 2 months and these 2 months are summer in the northern
hemisphere which means holiday for many of them...

Python 3.6 schedule and What's New in Python 3.6 list some PEPs:
https://www.python.org/dev/peps/pep-0494/
https://docs.python.org/dev/whatsnew/3.6.html


"PEP 499 -- python -m foo should bind sys.modules['foo'] in addition
to sys.modules['__main__']"
https://www.python.org/dev/peps/pep-0499/
=> draft


"PEP 498 -- Literal String Interpolation"
https://www.python.org/dev/peps/pep-0498/
=> accepted -- it's merged in Python 3.6, the status should be updated
to Final no?


"PEP 495 -- Local Time Disambiguation"
https://www.python.org/dev/peps/pep-0495/
=> accepted

Alexander Belopolsky asked for a review of the implementation:
https://mail.python.org/pipermail/python-dev/2016-June/145450.html


"PEP 447 -- Add __getdescriptor__ method to metaclass"
https://www.python.org/dev/peps/pep-0447/
=> draft


"PEP 487 -- Simpler customisation of class creation"
https://www.python.org/dev/peps/pep-0487/
=> draft


"PEP 520 -- Preserving Class Attribute Definition Order"
https://www.python.org/dev/peps/pep-0520/
=> accepted -- what is the status of its implementation?


"PEP 519 -- Adding a file system path protocol"
https://www.python.org/dev/peps/pep-0519/
=> accepted


"PEP 467 -- Minor API improvements for binary sequences"
https://www.python.org/dev/peps/pep-0467
=> draft -- I saw recently some discussions around this PEP (on python-ideas?)

It looks like os.fspath() exists, so the PEP is implemented. Its
status should be Final, but the PEP should also be mentioned in What's
New in Python 3.6 please.


I also see some discussions for even more compact dict implementation.


I wrote 3 PEPs, but I didn't have time recently to work of them (to
make progress on the implementation of FAT Python):


"PEP 509 -- Add a private version to dict"
https://www.python.org/dev/peps/pep-0509/
=> draft

Pyjion, Cython, and Yury Selivanov are interested to use this feature,
but last time I asked Guido, he didn't seem convinced by the
advantages of the PEP.


"PEP 510 -- Specialize functions with guards"
https://www.python.org/dev/peps/pep-0510/

"PEP 511 -- API for code transformers"
https://www.python.org/dev/peps/pep-0511/

These two PEPs are directly related to my FAT Python work. I was asked
to prove that FAT Python makes CPython faster. Sadly, I failed to
prove that. Moreover, it took me almost 2 months (and I'm not done
yet!) to get stable benchmarks results on Python. I want to make sure
that my changes don't make Python slower (don't introduce Python
regressions), but the CPython benchmark is unstable, some benchmarks
are very unstable. To get more information, follow the
speed at python.org mailing list ;-)


I probably forgot some PEPs, there are so many PEPs in the draft state :-(

Victor


More information about the Python-Dev mailing list