mirror of https://github.com/python/cpython
Python 3.12.0a0
This commit is contained in:
parent
8d32a5c8c4
commit
e851177536
|
@ -10,13 +10,13 @@ Using the Python Interpreter
|
||||||
Invoking the 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
|
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:
|
Unix shell's search path makes it possible to start it by typing the command:
|
||||||
|
|
||||||
.. code-block:: text
|
.. code-block:: text
|
||||||
|
|
||||||
python3.11
|
python3.12
|
||||||
|
|
||||||
to the shell. [#]_ Since the choice of the directory where the interpreter lives
|
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
|
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.)
|
popular alternative location.)
|
||||||
|
|
||||||
On Windows machines where you have installed Python from the :ref:`Microsoft Store
|
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`
|
the :ref:`py.exe launcher <launcher>` installed, you can use the :file:`py`
|
||||||
command. See :ref:`setting-envvars` for other ways to launch Python.
|
command. See :ref:`setting-envvars` for other ways to launch Python.
|
||||||
|
|
||||||
|
@ -97,8 +97,8 @@ before printing the first prompt:
|
||||||
|
|
||||||
.. code-block:: shell-session
|
.. code-block:: shell-session
|
||||||
|
|
||||||
$ python3.11
|
$ python3.12
|
||||||
Python 3.11 (default, April 4 2021, 09:25:04)
|
Python 3.12 (default, April 4 2022, 09:25:04)
|
||||||
[GCC 10.2.0] on linux
|
[GCC 10.2.0] on linux
|
||||||
Type "help", "copyright", "credits" or "license" for more information.
|
Type "help", "copyright", "credits" or "license" for more information.
|
||||||
>>>
|
>>>
|
||||||
|
|
|
@ -15,7 +15,7 @@ operating system::
|
||||||
|
|
||||||
>>> import os
|
>>> import os
|
||||||
>>> os.getcwd() # Return the current working directory
|
>>> os.getcwd() # Return the current working directory
|
||||||
'C:\\Python311'
|
'C:\\Python312'
|
||||||
>>> os.chdir('/server/accesslogs') # Change current working directory
|
>>> os.chdir('/server/accesslogs') # Change current working directory
|
||||||
>>> os.system('mkdir today') # Run the command mkdir in the system shell
|
>>> os.system('mkdir today') # Run the command mkdir in the system shell
|
||||||
0
|
0
|
||||||
|
|
|
@ -278,7 +278,7 @@ applications include caching objects that are expensive to create::
|
||||||
Traceback (most recent call last):
|
Traceback (most recent call last):
|
||||||
File "<stdin>", line 1, in <module>
|
File "<stdin>", line 1, in <module>
|
||||||
d['primary'] # entry was automatically removed
|
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]()
|
o = self.data[key]()
|
||||||
KeyError: 'primary'
|
KeyError: 'primary'
|
||||||
|
|
||||||
|
|
|
@ -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.
|
|
@ -17,13 +17,13 @@
|
||||||
/* Version parsed out into numeric values */
|
/* Version parsed out into numeric values */
|
||||||
/*--start constants--*/
|
/*--start constants--*/
|
||||||
#define PY_MAJOR_VERSION 3
|
#define PY_MAJOR_VERSION 3
|
||||||
#define PY_MINOR_VERSION 11
|
#define PY_MINOR_VERSION 12
|
||||||
#define PY_MICRO_VERSION 0
|
#define PY_MICRO_VERSION 0
|
||||||
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_BETA
|
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
|
||||||
#define PY_RELEASE_SERIAL 1
|
#define PY_RELEASE_SERIAL 0
|
||||||
|
|
||||||
/* Version as a string */
|
/* Version as a string */
|
||||||
#define PY_VERSION "3.11.0b1"
|
#define PY_VERSION "3.12.0a0"
|
||||||
/*--end constants--*/
|
/*--end constants--*/
|
||||||
|
|
||||||
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
|
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
|
||||||
|
|
14
README.rst
14
README.rst
|
@ -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
|
.. image:: https://github.com/python/cpython/workflows/Tests/badge.svg
|
||||||
:alt: CPython build status on GitHub Actions
|
: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
|
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
|
detailed change log, read `Misc/NEWS
|
||||||
<https://github.com/python/cpython/blob/main/Misc/NEWS.d>`_, but a full
|
<https://github.com/python/cpython/blob/main/Misc/NEWS.d>`_, but a full
|
||||||
accounting of changes can only be gleaned from the `commit history
|
accounting of changes can only be gleaned from the `commit history
|
||||||
|
@ -146,7 +146,7 @@ entitled "Installing multiple versions".
|
||||||
Documentation
|
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.
|
updated daily.
|
||||||
|
|
||||||
It can also be downloaded in many formats for faster access. The documentation
|
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
|
version (if any) is your "primary" version. Install that version using ``make
|
||||||
install``. Install all other versions using ``make altinstall``.
|
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
|
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.11 build directory
|
primary version, you would execute ``make install`` in your 3.12 build directory
|
||||||
and ``make altinstall`` in the others.
|
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
|
Release Schedule
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
See :pep:`664` for Python 3.11 release details.
|
See :pep:`664` for Python 3.12 release details.
|
||||||
|
|
||||||
|
|
||||||
Copyright and License Information
|
Copyright and License Information
|
||||||
|
|
|
@ -6,7 +6,7 @@ dnl Python's configure script requires autoconf 2.69 and autoconf-archive.
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
# Set VERSION so we only need to edit in one place (i.e., here)
|
# 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])
|
AC_PREREQ([2.69])
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue