]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Python 3.15.0a0
authorHugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Wed, 7 May 2025 15:47:42 +0000 (18:47 +0300)
committerHugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Wed, 7 May 2025 15:47:42 +0000 (18:47 +0300)
.github/ISSUE_TEMPLATE/bug.yml
.github/ISSUE_TEMPLATE/crash.yml
Doc/tutorial/interpreter.rst
Doc/tutorial/stdlib.rst
Doc/tutorial/stdlib2.rst
Doc/whatsnew/3.15.rst [new file with mode: 0644]
Include/patchlevel.h
PC/pyconfig.h.in
PCbuild/rt.bat
README.rst
configure.ac

index 7b7810cf6965fd4a33c7a5bd4c3f097b3c2cbeaa..da70710b7ecfa397c29b096aab0b26508d60b94a 100644 (file)
@@ -40,6 +40,7 @@ body:
         - "3.12"
         - "3.13"
         - "3.14"
+        - "3.15"
         - "CPython main branch"
     validations:
       required: true
index 58da2dfe0c73541c74c4d39d6ea32603cbfd9243..470ad581367b1033e996dd86e86b333777870a25 100644 (file)
@@ -33,6 +33,7 @@ body:
         - "3.12"
         - "3.13"
         - "3.14"
+        - "3.15"
         - "CPython main branch"
     validations:
       required: true
index 02e7de77322e99ad6a0f97e1b4e7c210749728b9..cd52607142485e6aae1cbcbde90302026bcde6ca 100644 (file)
@@ -16,7 +16,7 @@ Unix shell's search path makes it possible to start it by typing the command:
 
 .. code-block:: text
 
-   python3.14
+   python3.15
 
 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
@@ -97,8 +97,8 @@ before printing the first prompt:
 
 .. code-block:: shell-session
 
-   $ python3.14
-   Python 3.14 (default, April 4 2024, 09:25:04)
+   $ python3.15
+   Python 3.15 (default, May 7 2025, 15:46:04)
    [GCC 10.2.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>
index 4b3eef313e76d7202c90cadc0bb0b03af20559a2..d83ecca270b16026de5973cce41e1cdc45de3b6b 100644 (file)
@@ -15,7 +15,7 @@ operating system::
 
    >>> import os
    >>> os.getcwd()      # Return the current working directory
-   'C:\\Python314'
+   'C:\\Python315'
    >>> os.chdir('/server/accesslogs')   # Change current working directory
    >>> os.system('mkdir today')   # Run the command mkdir in the system shell
    0
index a2f96b34b2dead3dcb636a66301bca05ead5d981..678b71c9274c1c605be510ba30d73f1c7392fd7b 100644 (file)
@@ -279,7 +279,7 @@ applications include caching objects that are expensive to create::
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
        d['primary']                # entry was automatically removed
-     File "C:/python314/lib/weakref.py", line 46, in __getitem__
+     File "C:/python315/lib/weakref.py", line 46, in __getitem__
        o = self.data[key]()
    KeyError: 'primary'
 
diff --git a/Doc/whatsnew/3.15.rst b/Doc/whatsnew/3.15.rst
new file mode 100644 (file)
index 0000000..41b2685
--- /dev/null
@@ -0,0 +1,156 @@
+
+****************************
+  What's new in Python 3.15
+****************************
+
+: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.15, compared to 3.14.
+
+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.15 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.15.
+   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
+
+
+
+Deprecated
+==========
+
+* module_name:
+  TODO
+
+
+.. Add deprecations above alphabetically, not here at the end.
+
+Removed
+=======
+
+module_name
+-----------
+
+* TODO
+
+
+Porting to Python 3.15
+======================
+
+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.15
+----------------------
+
+* TODO
+
+Deprecated C APIs
+-----------------
+
+* TODO
+
+.. Add C API deprecations above alphabetically, not here at the end.
+
+Removed C APIs
+--------------
+
index c9dd659046a367107af965dc36b2a759571294a0..532873b51e65bba779b1923fd3c55778abbed1ac 100644 (file)
 /* Version parsed out into numeric values */
 /*--start constants--*/
 #define PY_MAJOR_VERSION        3
-#define PY_MINOR_VERSION        14
+#define PY_MINOR_VERSION        15
 #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.14.0b1"
+#define PY_VERSION              "3.15.0a0"
 /*--end constants--*/
 
 
index 9e70303868e5de7ca29aaf0c78b0596954e5e0a9..bbafaed808eecd220a9ca5b5e7a5fa0ba2fcd292 100644 (file)
@@ -320,19 +320,19 @@ Py_NO_ENABLE_SHARED to find out.  Also support MS_NO_COREDLL for b/w compat */
                         the linking is explicitly handled */
 #                       if defined(Py_GIL_DISABLED)
 #                       if defined(_DEBUG)
-#                               pragma comment(lib,"python314t_d.lib")
+#                               pragma comment(lib,"python315t_d.lib")
 #                       elif defined(Py_LIMITED_API)
 #                               pragma comment(lib,"python3t.lib")
 #                       else
-#                               pragma comment(lib,"python314t.lib")
+#                               pragma comment(lib,"python315t.lib")
 #                       endif /* _DEBUG */
 #                       else /* Py_GIL_DISABLED */
 #                       if defined(_DEBUG)
-#                               pragma comment(lib,"python314_d.lib")
+#                               pragma comment(lib,"python315_d.lib")
 #                       elif defined(Py_LIMITED_API)
 #                               pragma comment(lib,"python3.lib")
 #                       else
-#                               pragma comment(lib,"python314.lib")
+#                               pragma comment(lib,"python315.lib")
 #                       endif /* _DEBUG */
 #                       endif /* Py_GIL_DISABLED */
 #               endif /* _MSC_VER && !Py_NO_LINK_LIB */
index c436215780fda06b8f46b22e814d5cd2ab13eb04..f1e0607393405beb4d8c3e1e772d65d3b9c1535e 100644 (file)
@@ -42,7 +42,7 @@ if "%~1"=="-O" (set dashO=-O)     & shift & goto CheckOpts
 if "%~1"=="-q" (set qmode=yes)    & shift & goto CheckOpts
 if "%~1"=="-d" (set suffix=_d)    & shift & goto CheckOpts
 rem HACK: Need some way to infer the version number in this script
-if "%~1"=="--disable-gil" (set pyname=python3.14t) & shift & goto CheckOpts
+if "%~1"=="--disable-gil" (set pyname=python3.15t) & shift & goto CheckOpts
 if "%~1"=="-win32" (set prefix=%pcbuild%win32) & shift & goto CheckOpts
 if "%~1"=="-x64" (set prefix=%pcbuild%amd64) & shift & goto CheckOpts
 if "%~1"=="-amd64" (set prefix=%pcbuild%amd64) & shift & goto CheckOpts
index 897d8995b63d9b7bc9a8a093adc5b7a38333ad69..5bad7ea1c36dda0cdee8894764c12e5e4fed7f7c 100644 (file)
@@ -1,5 +1,5 @@
-This is Python version 3.14.0 beta 1
-====================================
+This is Python version 3.15.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
index a7b2f62579b0e96069da1d9cc92c8300d84055f3..233f19a82f87c857879a964f433e7fcc29c7d14e 100644 (file)
@@ -10,7 +10,7 @@ dnl to regenerate the configure script.
 dnl
 
 # Set VERSION so we only need to edit in one place (i.e., here)
-m4_define([PYTHON_VERSION], [3.14])
+m4_define([PYTHON_VERSION], [3.15])
 
 AC_PREREQ([2.72])