Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon

Python 3.8.0 alpha 1 is now available for testing

Save for later
  • 2 min read
  • 05 Feb 2019

article-image

Yesterday, the first alpha of Python 3.8.0 was announced in a Python blog post. The most important change in this version is the addition of Assignment Expressions. This is the first alpha, three more are yet to be released. Keep in mind that the features are raw and not meant for production use.

Some changes in Python 3.8.0 alpha 1:

Security changes

  • When spawning child processes, the command line option -I to run Python in isolated mode is now copied by the multiprocessing and distutils modules as well
  • OpenSSL is updated to OpenSSL 1.1.0i for Windows builds
  • The thread safety of error handling is fixed in _ssl
  • A small fix to prevent buffer overrun in os.symlink for Windows

Changes in core and builtins

  • PEP 572: This introduces a new way which assigns values to variables in an expression by using the NAME := expr notation
  • Parenthesis are made optional for named expressions in a while statement.
  • Python initialization is reorganized to get exceptions and sys.stderr early.
  • A small memory leak is fixed in pymain_parse_cmdline_impl.
  • Unlock access to the largest independent learning library in Tech for FREE!
    Get unlimited access to 7500+ expert-authored eBooks and video courses covering every tech area you can think of.
    Renews at $19.99/month. Cancel anytime
  • For unbalanced parentheses in f-string, the syntax messages are better.
  • End line and end column position information are added to the Python AST nodes
  • During the Python initialization, the Python filesystem encoding is read faster

Library changes

  • Shared memory submodule is added to multiprocessing in order to avoid serialization between processes
  • The KeyError exception when using enums and compile is now fixed
  • help() on metaclasses is fixed
  • The raise(signum) is now exposed as raise_signal
  • Building enums by value are now faster


These were a select few changes in Python 3.8.0 alpha 1. For a complete list of changes, you may go through the changelog.

Introducing RustPython, a Python 3 interpreter written in Rust

EuroPython Society announces the ‘Guido van Rossum Core Developer Grant’ program to honor Python core developers

pandas will drop support for Python 2 this month with pandas 0.24