]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Python 3.12.0a0
authorPablo Galindo <pablogsal@gmail.com>
Sun, 8 May 2022 02:40:52 +0000 (03:40 +0100)
committerPablo Galindo <pablogsal@gmail.com>
Sun, 8 May 2022 02:40:52 +0000 (03:40 +0100)
Doc/tutorial/interpreter.rst
Doc/tutorial/stdlib.rst
Doc/tutorial/stdlib2.rst
Doc/whatsnew/3.12 [new file with mode: 0644]
Include/patchlevel.h
README.rst
configure.ac

index d7f300d93b021b69ec3b2e735d7172cdc35cd049..9bee046809eb248632b0644c71dadfb363796376 100644 (file)
@@ -10,13 +10,13 @@ Using the Python Interpreter
 Invoking the Interpreter
 ========================
 
-The Python interpreter is usually installed as :file:`/usr/local/bin/python3.11`
+The Python interpreter is usually installed as :file:`/usr/local/bin/python3.12`
 on those machines where it is available; putting :file:`/usr/local/bin` in your
 Unix shell's search path makes it possible to start it by typing the command:
 
 .. code-block:: text
 
-   python3.11
+   python3.12
 
 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
@@ -24,7 +24,7 @@ Python guru or system administrator.  (E.g., :file:`/usr/local/python` is a
 popular alternative location.)
 
 On Windows machines where you have installed Python from the :ref:`Microsoft Store
-<windows-store>`, the :file:`python3.11` command will be available. If you have
+<windows-store>`, the :file:`python3.12` command will be available. If you have
 the :ref:`py.exe launcher <launcher>` installed, you can use the :file:`py`
 command. See :ref:`setting-envvars` for other ways to launch Python.
 
@@ -97,8 +97,8 @@ before printing the first prompt:
 
 .. code-block:: shell-session
 
-   $ python3.11
-   Python 3.11 (default, April 4 2021, 09:25:04)
+   $ python3.12
+   Python 3.12 (default, April 4 2022, 09:25:04)
    [GCC 10.2.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>
index a94a7f459ea2b282c360f51a4f384de9bd880055..b32a552d5570cf1bc929338591ca3418ba7ee109 100644 (file)
@@ -15,7 +15,7 @@ operating system::
 
    >>> import os
    >>> os.getcwd()      # Return the current working directory
-   'C:\\Python311'
+   'C:\\Python312'
    >>> os.chdir('/server/accesslogs')   # Change current working directory
    >>> os.system('mkdir today')   # Run the command mkdir in the system shell
    0
index 69ec0d4727c0bb7f93414ae03ebe1521e4a3fb25..2e45ebc8dd7f45fbab7acea1ab795b4894bc2a59 100644 (file)
@@ -278,7 +278,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:/python311/lib/weakref.py", line 46, in __getitem__
+     File "C:/python312/lib/weakref.py", line 46, in __getitem__
        o = self.data[key]()
    KeyError: 'primary'
 
diff --git a/Doc/whatsnew/3.12 b/Doc/whatsnew/3.12
new file mode 100644 (file)
index 0000000..bb6730c
--- /dev/null
@@ -0,0 +1,116 @@
+
+****************************
+  What's New In Python 3.12
+****************************
+
+:Release: |release|
+:Date: |today|
+
+.. 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 bug/patch number as a comment:
+
+   XXX Describe the transmogrify() function added to the socket
+   module.
+   (Contributed by P.Y. Developer in :issue:`12345`.)
+
+   This saves the maintainer the effort of going through the Mercurial log
+   when researching a change.
+
+This article explains the new features in Python 3.12, compared to 3.10.
+
+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.12 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.12.
+   Brevity is key.
+
+
+.. PEP-sized items next.
+
+
+
+New Features
+============
+
+
+
+Other Language Changes
+======================
+
+
+
+New Modules
+===========
+
+* None yet.
+
+
+Improved Modules
+================
+
+
+Optimizations
+=============
+
+
+
+
+Build and C API Changes
+=======================
+
+* :c:func:`PyFrame_BlockSetup` and :c:func:`PyFrame_BlockPop` have been removed.
+
+Deprecated
+==========
+
+
+
+Removed
+=======
+
+
+
+Porting to Python 3.12
+======================
+
+This section lists previously described changes and other bugfixes
+that may require changes to your code.
index 9747ca41777229eb1854a62d271fafed65e4184f..37a984494d713cfe8651166e9192092f8d90be0c 100644 (file)
 /* Version parsed out into numeric values */
 /*--start constants--*/
 #define PY_MAJOR_VERSION        3
-#define PY_MINOR_VERSION        11
+#define PY_MINOR_VERSION        12
 #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.11.0b1"
+#define PY_VERSION              "3.12.0a0"
 /*--end constants--*/
 
 /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
index 5a2b1ad1f8b4411886bb474e9c0e5a80db87ac44..c3a83bddf05e043956cf047c3d577ec1a281b792 100644 (file)
@@ -1,5 +1,5 @@
-This is Python version 3.11.0 beta 1
-====================================
+This is Python version 3.12.0 alpha 0
+=====================================
 
 .. image:: https://github.com/python/cpython/workflows/Tests/badge.svg
    :alt: CPython build status on GitHub Actions
@@ -133,7 +133,7 @@ What's New
 ----------
 
 We have a comprehensive overview of the changes in the `What's New in Python
-3.11 <https://docs.python.org/3.11/whatsnew/3.11.html>`_ document.  For a more
+3.12 <https://docs.python.org/3.12/whatsnew/3.12.html>`_ document.  For a more
 detailed change log, read `Misc/NEWS
 <https://github.com/python/cpython/blob/main/Misc/NEWS.d>`_, but a full
 accounting of changes can only be gleaned from the `commit history
@@ -146,7 +146,7 @@ entitled "Installing multiple versions".
 Documentation
 -------------
 
-`Documentation for Python 3.11 <https://docs.python.org/3.11/>`_ is online,
+`Documentation for Python 3.12 <https://docs.python.org/3.12/>`_ is online,
 updated daily.
 
 It can also be downloaded in many formats for faster access.  The documentation
@@ -206,8 +206,8 @@ intend to install multiple versions using the same prefix you must decide which
 version (if any) is your "primary" version.  Install that version using ``make
 install``.  Install all other versions using ``make altinstall``.
 
-For example, if you want to install Python 2.7, 3.6, and 3.11 with 3.11 being the
-primary version, you would execute ``make install`` in your 3.11 build directory
+For example, if you want to install Python 2.7, 3.6, and 3.12 with 3.12 being the
+primary version, you would execute ``make install`` in your 3.12 build directory
 and ``make altinstall`` in the others.
 
 
@@ -238,7 +238,7 @@ All current PEPs, as well as guidelines for submitting a new PEP, are listed at
 Release Schedule
 ----------------
 
-See :pep:`664` for Python 3.11 release details.
+See :pep:`664` for Python 3.12 release details.
 
 
 Copyright and License Information
index 07b8885f1e482a0c2d122171abb1f00ee8441d1a..39bb5c48b65db49d8572a078a9181623efe1f59d 100644 (file)
@@ -6,7 +6,7 @@ dnl Python's configure script requires autoconf 2.69 and autoconf-archive.
 dnl
 
 # Set VERSION so we only need to edit in one place (i.e., here)
-m4_define(PYTHON_VERSION, 3.11)
+m4_define(PYTHON_VERSION, 3.12)
 
 AC_PREREQ([2.69])