Skip to content

Latest commit

 

History

History
191 lines (118 loc) · 4.51 KB

3.14.rst

File metadata and controls

191 lines (118 loc) · 4.51 KB

What's New In Python 3.14

Editor:TBD

This article explains the new features in Python 3.14, compared to 3.13.

For full details, see the :ref:`changelog <changelog>`.

Note

Prerelease users should be aware that this document is currently in draft form. It will be updated substantially as Python 3.14 moves towards release, so it's worth checking back even after reading earlier versions.

Summary -- Release highlights

New Features

Other Language Changes

New Modules

  • None yet.

Improved Modules

Optimizations

Deprecated

Removed

argparse

  • Remove the type, choices, and metavar parameters of :class:`!argparse.BooleanOptionalAction`. They were deprecated since 3.12.

collections.abc

  • Remove :class:`!collections.abc.ByteString`. It had previously raised a :exc:`DeprecationWarning` since Python 3.12.

email

  • Remove the isdst parameter from :func:`email.utils.localtime`. (Contributed by Hugo van Kemenade in :gh:`118798`.)

itertools

  • Remove :mod:`itertools` support for copy, deepcopy, and pickle operations. These had previously raised a :exc:`DeprecationWarning` since Python 3.12. (Contributed by Raymond Hettinger in :gh:`101588`.)

pathlib

  • Remove support for passing additional keyword arguments to :class:`pathlib.Path`. In previous versions, any such arguments are ignored.
  • Remove support for passing additional positional arguments to :meth:`pathlib.PurePath.relative_to` and :meth:`~pathlib.PurePath.is_relative_to`. In previous versions, any such arguments are joined onto other.

sqlite3

  • Remove :data:`!version` and :data:`!version_info` from :mod:`sqlite3`. (Contributed by Hugo van Kemenade in :gh:`118924`.)
  • Disallow using a sequence of parameters with named placeholders. This had previously raised a :exc:`DeprecationWarning` since Python 3.12; it will now raise a :exc:`sqlite3.ProgrammingError`. (Contributed by Erlend E. Aasland in :gh:`118928` and :gh:`101693`.)

typing

  • Remove :class:`!typing.ByteString`. It had previously raised a :exc:`DeprecationWarning` since Python 3.12.

Others

  • Using :data:`NotImplemented` in a boolean context will now raise a :exc:`TypeError`. It had previously raised a :exc:`DeprecationWarning` since Python 3.9. (Contributed by Jelle Zijlstra in :gh:`118767`.)

Porting to Python 3.14

This section lists previously described changes and other bugfixes that may require changes to your code.

Build Changes

C API Changes

New Features

Porting to Python 3.14

Deprecated

Removed