Developers that want to preview all the new features of the Python 3.8 beta, rejoice! You can now check the beta preview for Python 3.8.0. This is an important release as it freezes the proposed features.
The rising popularity of Python is quite evident and it was recognized as the programming language of the year for 2018. The first two alpha deployments of the Python 3.8 development branch were released last month. The most notable addition in the new development branch is PEP 572, and assignment operators. The addition of operators led to Guido stepping down. The beta preview will help the community to test new features and report any issues that they encounter during bug fixes and tweaks.
The Python Software Foundation expects that maintainers of the third party projects will test the v3.8 during its beta phase. Developers need to acknowledge that these features are in a preview mode, and not ready for development until the production-ready release is available.
Here are all the new features in Python 3.8.
• Assignment expressions: The walrus operator := is a new syntax added in the Python v3.8. This assigns values to variables as part of an expression.
• Positional-only parameters: PEP 570 introduces a new syntax /, for specifying position-only parameters in Python function definition. These parameters have no externally usable name.
• Python initialisation configuration: PEP 587 adds a new C API to configure the Python Initialisation providing finer control on the whole configuration and better error reporting. I also makes it possible to read the configuration and override some computed partners before it is applied.
• Vectorcall protocol added to Python/C API: It optimises calls of objects, fasted on the fastball convention in Python.
• Runtime audit hooks: This PEP adds to the Python API and specific behaviours for the CPython implementation that make actions taken by Python runtime visible to auditing tools.
• Pickle protocol5 with out-of-band data: This PEP proposes to standardise a new pickle protocol version and accompanying APIs to take full advantage of it.
You can download the release from Python Software Foundation’s official page. The next beta release is scheduled for July 1, 2019.