Python 3.12.0b1, the first of four beta versions of 3.12, has been released, bringing new features and bug fixes

2023-06-08 13:44:21

Python 3.12 is still under development. This release, 3.12.0b1, is the first of four beta releases of 3.12.

Beta releases are meant to give the whole community a chance to test out new features and bug fixes, and prepare their projects to support the new release.

Maintainers of third-party Python projects are strongly encouraged to test version 3.12 during the beta phase and report any issues found to the Python bug tracker as soon as possible (https://github.com/python/cpython/issues). Although the release is expected to be complete at the start of the beta phase, it is possible that features will be changed or, in rare cases, removed until the start of the release candidate phase (Monday 2023-07 -31). The goal is to have no ABI changes after beta 4 and as few code changes as possible after 3.12.0rc1, the first release candidate. To achieve this, it will be extremely important to publicize 3.12 as much as possible during the beta phase.

Please keep in mind that this is a preview release and is not recommended for use in production environments.

Main new features of the 3.12 series compared to 3.11

Here are some of the major new and changed features of Python 3.12:

  • New type annotation syntax for generic classes (PEP 695).
  • More flexible parsing of f-strings, allowing many things previously forbidden (PEP 701).
  • Further improved error messages. More exceptions potentially caused by typos are now suggested to the user.
  • Numerous improvements, large and small, in performance (like PEP 709).
  • Linux profiler support perf to report Python function names in traces.
  • The members wstr et wstr_length of the C implementation unicode objects have been removed, according to the PEP 623.
  • In the module unittest, a number of long-deprecated methods and classes have been removed. (They were deprecated since Python 3.1 or 3.2).
  • Modules smtpd et distutilobsolete, have been removed (see PEP 594 et PEP 632). The packet setuptools (installed by default in virtualenvs and many other places) continues to provide the module distutil.
  • A number of other old, deprecated, and deprecated functions, classes, and methods have been removed.
  • Invalid backslash escape sequences in character strings are now marked with SyntaxWarning instead of DeprecationWarning, making them more visible. (They will become syntax errors in the future).
  • The internal representation of integers has been changed to improve performance. (This shouldn’t affect most users since it’s an internal detail, but it may cause problems for Cython-generated code).

For more details on Python 3.12 changes, see What’s new in Python 3.12. The next preview of Python 3.12 will be 3.12.0b2, currently scheduled for 2023-05-29.

Source : Python 3.12.0b1

And you ?

What do you think ?

See as well

A new, faster and lighter alpha version of Python 3.12 is now available, with several improvements in multiprocessing and error handling

Python 3.11 is released and comes with speed improvements, better error handling, self type, and exception notes

1686235223
#Python #3.12.0b1 #beta #versions #released #bringing #features #bug #fixes

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.