label: "CPython versions tested on:"
multiple: true
options:
- - "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
- "3.14"
- "3.15"
+ - "3.16"
- "CPython main branch"
validations:
required: true
label: "CPython versions tested on:"
multiple: true
options:
- - "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
- "3.14"
- "3.15"
+ - "3.16"
- "CPython main branch"
validations:
required: true
.. code-block:: text
- python3.15
+ python3.16
to the shell. [#]_ Since the choice of the directory where the interpreter lives
is an installation option, other places are possible; check with your local
.. code-block:: shell-session
- $ python3.15
- Python 3.15 (default, May 7 2025, 15:46:04)
+ $ python3.16
+ Python 3.16 (default, May 7 2026, 19:03:04)
[GCC 10.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> import os
>>> os.getcwd() # Return the current working directory
- 'C:\\Python315'
+ 'C:\\Python316'
>>> os.chdir('/server/accesslogs') # Change current working directory
>>> os.system('mkdir today') # Run the command mkdir in the system shell
0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
d['primary'] # entry was automatically removed
- File "C:/python315/lib/weakref.py", line 46, in __getitem__
+ File "C:/python316/lib/weakref.py", line 46, in __getitem__
o = self.data[key]()
KeyError: 'primary'
--- /dev/null
+
+****************************
+ What's new in Python 3.16
+****************************
+
+:Editor: TBD
+
+.. Rules for maintenance:
+
+ * Anyone can add text to this document. Do not spend very much time
+ on the wording of your changes, because your text will probably
+ get rewritten to some degree.
+
+ * The maintainer will go through Misc/NEWS periodically and add
+ changes; it's therefore more important to add your changes to
+ Misc/NEWS than to this file.
+
+ * This is not a complete list of every single change; completeness
+ is the purpose of Misc/NEWS. Some changes I consider too small
+ or esoteric to include. If such a change is added to the text,
+ I'll just remove it. (This is another reason you shouldn't spend
+ too much time on writing your addition.)
+
+ * If you want to draw your new text to the attention of the
+ maintainer, add 'XXX' to the beginning of the paragraph or
+ section.
+
+ * It's OK to just add a fragmentary note about a change. For
+ example: "XXX Describe the transmogrify() function added to the
+ socket module." The maintainer will research the change and
+ write the necessary text.
+
+ * You can comment out your additions if you like, but it's not
+ necessary (especially when a final release is some months away).
+
+ * Credit the author of a patch or bugfix. Just the name is
+ sufficient; the e-mail address isn't necessary.
+
+ * It's helpful to add the issue number as a comment:
+
+ XXX Describe the transmogrify() function added to the socket
+ module.
+ (Contributed by P.Y. Developer in :gh:`12345`.)
+
+ This saves the maintainer the effort of going through the VCS log
+ when researching a change.
+
+This article explains the new features in Python 3.16, compared to 3.15.
+
+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.16 moves towards release,
+ so it's worth checking back even after reading earlier versions.
+
+
+Summary --- release highlights
+==============================
+
+.. This section singles out the most important changes in Python 3.16.
+ Brevity is key.
+
+
+.. PEP-sized items next.
+
+
+
+New features
+============
+
+
+
+Other language changes
+======================
+
+
+
+New modules
+===========
+
+* None yet.
+
+
+Improved modules
+================
+
+module_name
+-----------
+
+* TODO
+
+.. Add improved modules above alphabetically, not here at the end.
+
+Optimizations
+=============
+
+module_name
+-----------
+
+* TODO
+
+
+
+Removed
+=======
+
+module_name
+-----------
+
+* TODO
+.. Add removals above alphabetically, not here at the end.
+
+
+Deprecated
+==========
+
+* module_name:
+ TODO
+
+
+.. Add deprecations above alphabetically, not here at the end.
+
+
+Porting to Python 3.16
+======================
+
+This section lists previously described changes and other bugfixes
+that may require changes to your code.
+
+
+Build changes
+=============
+
+
+C API changes
+=============
+
+New features
+------------
+
+* TODO
+
+Porting to Python 3.16
+----------------------
+
+* TODO
+
+Deprecated C APIs
+-----------------
+
+* TODO
+
+.. Add C API deprecations above alphabetically, not here at the end.
+
+Removed C APIs
+--------------
+
.. toctree::
:maxdepth: 2
+ 3.16.rst
3.15.rst
3.14.rst
3.13.rst
/* Version parsed out into numeric values */
/*--start constants--*/
#define PY_MAJOR_VERSION 3
-#define PY_MINOR_VERSION 15
+#define PY_MINOR_VERSION 16
#define PY_MICRO_VERSION 0
-#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_BETA
-#define PY_RELEASE_SERIAL 1
+#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
+#define PY_RELEASE_SERIAL 0
/* Version as a string */
-#define PY_VERSION "3.15.0b1"
+#define PY_VERSION "3.16.0a0"
/*--end constants--*/
-This is Python version 3.15.0 beta 1
-====================================
+This is Python version 3.16.0 alpha 0
+=====================================
.. image:: https://github.com/python/cpython/actions/workflows/build.yml/badge.svg?branch=main&event=push
:alt: CPython build status on GitHub Actions
----------
We have a comprehensive overview of the changes in the `What's new in Python
-3.15 <https://docs.python.org/3.15/whatsnew/3.15.html>`_ document. For a more
+3.16 <https://docs.python.org/3.16/whatsnew/3.16.html>`_ document. For a more
detailed change log, read `Misc/NEWS
<https://github.com/python/cpython/tree/main/Misc/NEWS.d>`_, but a full
accounting of changes can only be gleaned from the `commit history
Documentation
-------------
-`Documentation for Python 3.15 <https://docs.python.org/3.15/>`_ is online,
+`Documentation for Python 3.16 <https://docs.python.org/3.16/>`_ is online,
updated daily.
It can also be downloaded in many formats for faster access. The documentation
Release Schedule
----------------
-See `PEP 790 <https://peps.python.org/pep-0790/>`__ for Python 3.15 release details.
+See `PEP 826 <https://peps.python.org/pep-0826/>`__ for Python 3.16 release details.
Copyright and License Information
dnl
# Set VERSION so we only need to edit in one place (i.e., here)
-m4_define([PYTHON_VERSION], [3.15])
+m4_define([PYTHON_VERSION], [3.16])
AC_PREREQ([2.72])
AC_SUBST([PYTHON_FOR_BUILD_DEPS])
AC_CHECK_PROGS([PYTHON_FOR_REGEN],
- [python$PACKAGE_VERSION python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 python3 python],
+ [python$PACKAGE_VERSION python3.16 python3.15 python3.14 python3.13 python3.12 python3.11 python3.10 python3 python],
[python3])
AC_SUBST([PYTHON_FOR_REGEN])