mirror of https://github.com/python/cpython
Python 3.10.0a0 (GH-20198)
This commit is contained in:
parent
9095f76613
commit
d4fe098d1e
|
@ -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.9`
|
The Python interpreter is usually installed as :file:`/usr/local/bin/python3.10`
|
||||||
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.9
|
python3.10
|
||||||
|
|
||||||
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.9` command will be available. If you have
|
<windows-store>`, the :file:`python3.10` 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.9
|
$ python3.10
|
||||||
Python 3.9 (default, June 4 2019, 09:25:04)
|
Python 3.10 (default, June 4 2019, 09:25:04)
|
||||||
[GCC 4.8.2] on linux
|
[GCC 4.8.2] 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:\\Python39'
|
'C:\\Python310'
|
||||||
>>> 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:/python39/lib/weakref.py", line 46, in __getitem__
|
File "C:/python310/lib/weakref.py", line 46, in __getitem__
|
||||||
o = self.data[key]()
|
o = self.data[key]()
|
||||||
KeyError: 'primary'
|
KeyError: 'primary'
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,115 @@
|
||||||
|
****************************
|
||||||
|
What's New In Python 3.10
|
||||||
|
****************************
|
||||||
|
|
||||||
|
: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.10, compared to 3.9.
|
||||||
|
|
||||||
|
For full details, see the :source:`Misc/NEWS` file.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
Prerelease users should be aware that this document is currently in draft
|
||||||
|
form. It will be updated substantially as Python 3.10 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.10.
|
||||||
|
Brevity is key.
|
||||||
|
|
||||||
|
|
||||||
|
.. PEP-sized items next.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
New Features
|
||||||
|
============
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Other Language Changes
|
||||||
|
======================
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
New Modules
|
||||||
|
===========
|
||||||
|
|
||||||
|
* None yet.
|
||||||
|
|
||||||
|
|
||||||
|
Improved Modules
|
||||||
|
================
|
||||||
|
|
||||||
|
|
||||||
|
Optimizations
|
||||||
|
=============
|
||||||
|
|
||||||
|
|
||||||
|
Build and C API Changes
|
||||||
|
=======================
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Deprecated
|
||||||
|
==========
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Removed
|
||||||
|
=======
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Porting to Python 3.10
|
||||||
|
======================
|
||||||
|
|
||||||
|
This section lists previously described changes and other bugfixes
|
||||||
|
that may require changes to your code.
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@ anyone wishing to stay up-to-date after a new release.
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
|
3.10.rst
|
||||||
3.9.rst
|
3.9.rst
|
||||||
3.8.rst
|
3.8.rst
|
||||||
3.7.rst
|
3.7.rst
|
||||||
|
|
|
@ -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 9
|
#define PY_MINOR_VERSION 10
|
||||||
#define PY_MICRO_VERSION 0
|
#define PY_MICRO_VERSION 0
|
||||||
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
|
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
|
||||||
#define PY_RELEASE_SERIAL 6
|
#define PY_RELEASE_SERIAL 0
|
||||||
|
|
||||||
/* Version as a string */
|
/* Version as a string */
|
||||||
#define PY_VERSION "3.9.0a6+"
|
#define PY_VERSION "3.10.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.
|
||||||
|
|
|
@ -1297,7 +1297,7 @@ calculate_zip_path(PyCalculatePath *calculate)
|
||||||
PyStatus res;
|
PyStatus res;
|
||||||
|
|
||||||
/* Path: <PLATLIBDIR> / "python00.zip" */
|
/* Path: <PLATLIBDIR> / "python00.zip" */
|
||||||
wchar_t *path = joinpath2(calculate->platlibdir_macro, L"python00.zip");
|
wchar_t *path = joinpath2(calculate->platlibdir_macro, L"python000.zip");
|
||||||
if (path == NULL) {
|
if (path == NULL) {
|
||||||
return _PyStatus_NO_MEMORY();
|
return _PyStatus_NO_MEMORY();
|
||||||
}
|
}
|
||||||
|
@ -1305,7 +1305,7 @@ calculate_zip_path(PyCalculatePath *calculate)
|
||||||
if (calculate->prefix_found > 0) {
|
if (calculate->prefix_found > 0) {
|
||||||
/* Use the reduced prefix returned by Py_GetPrefix()
|
/* Use the reduced prefix returned by Py_GetPrefix()
|
||||||
|
|
||||||
Path: <basename(basename(prefix))> / <PLATLIBDIR> / "python00.zip" */
|
Path: <basename(basename(prefix))> / <PLATLIBDIR> / "python000.zip" */
|
||||||
wchar_t *parent = _PyMem_RawWcsdup(calculate->prefix);
|
wchar_t *parent = _PyMem_RawWcsdup(calculate->prefix);
|
||||||
if (parent == NULL) {
|
if (parent == NULL) {
|
||||||
res = _PyStatus_NO_MEMORY();
|
res = _PyStatus_NO_MEMORY();
|
||||||
|
@ -1325,10 +1325,11 @@ calculate_zip_path(PyCalculatePath *calculate)
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Replace "00" with version */
|
/* Replace "000" with the version */
|
||||||
size_t len = wcslen(calculate->zip_path);
|
size_t len = wcslen(calculate->zip_path);
|
||||||
calculate->zip_path[len - 6] = VERSION[0];
|
calculate->zip_path[len - 7] = VERSION[0];
|
||||||
calculate->zip_path[len - 5] = VERSION[2];
|
calculate->zip_path[len - 6] = VERSION[2];
|
||||||
|
calculate->zip_path[len - 5] = VERSION[3];
|
||||||
|
|
||||||
res = _PyStatus_OK();
|
res = _PyStatus_OK();
|
||||||
|
|
||||||
|
|
|
@ -269,11 +269,11 @@ Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */
|
||||||
file in their Makefile (other compilers are
|
file in their Makefile (other compilers are
|
||||||
generally taken care of by distutils.) */
|
generally taken care of by distutils.) */
|
||||||
# if defined(_DEBUG)
|
# if defined(_DEBUG)
|
||||||
# pragma comment(lib,"python39_d.lib")
|
# pragma comment(lib,"python310_d.lib")
|
||||||
# elif defined(Py_LIMITED_API)
|
# elif defined(Py_LIMITED_API)
|
||||||
# pragma comment(lib,"python3.lib")
|
# pragma comment(lib,"python3.lib")
|
||||||
# else
|
# else
|
||||||
# pragma comment(lib,"python39.lib")
|
# pragma comment(lib,"python310.lib")
|
||||||
# endif /* _DEBUG */
|
# endif /* _DEBUG */
|
||||||
# endif /* _MSC_VER */
|
# endif /* _MSC_VER */
|
||||||
# endif /* Py_BUILD_CORE */
|
# endif /* Py_BUILD_CORE */
|
||||||
|
|
1598
PC/python3.def
1598
PC/python3.def
File diff suppressed because it is too large
Load Diff
|
@ -38,7 +38,7 @@ Debug
|
||||||
Used to build Python with extra debugging capabilities, equivalent
|
Used to build Python with extra debugging capabilities, equivalent
|
||||||
to using ./configure --with-pydebug on UNIX. All binaries built
|
to using ./configure --with-pydebug on UNIX. All binaries built
|
||||||
using this configuration have "_d" added to their name:
|
using this configuration have "_d" added to their name:
|
||||||
python39_d.dll, python_d.exe, parser_d.pyd, and so on. Both the
|
python310_d.dll, python_d.exe, parser_d.pyd, and so on. Both the
|
||||||
build and rt (run test) batch files in this directory accept a -d
|
build and rt (run test) batch files in this directory accept a -d
|
||||||
option for debug builds. If you are building Python to help with
|
option for debug builds. If you are building Python to help with
|
||||||
development of CPython, you will most likely use this configuration.
|
development of CPython, you will most likely use this configuration.
|
||||||
|
|
12
README.rst
12
README.rst
|
@ -1,5 +1,5 @@
|
||||||
This is Python version 3.9.0 alpha 6
|
This is Python version 3.10.0 alpha 0
|
||||||
====================================
|
=====================================
|
||||||
|
|
||||||
.. image:: https://travis-ci.org/python/cpython.svg?branch=master
|
.. image:: https://travis-ci.org/python/cpython.svg?branch=master
|
||||||
:alt: CPython build status on Travis CI
|
:alt: CPython build status on Travis CI
|
||||||
|
@ -141,7 +141,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.9 <https://docs.python.org/3.9/whatsnew/3.9.html>`_ document. For a more
|
3.10 <https://docs.python.org/3.10/whatsnew/3.10.html>`_ document. For a more
|
||||||
detailed change log, read `Misc/NEWS
|
detailed change log, read `Misc/NEWS
|
||||||
<https://github.com/python/cpython/blob/master/Misc/NEWS.d>`_, but a full
|
<https://github.com/python/cpython/blob/master/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
|
||||||
|
@ -154,7 +154,7 @@ entitled "Installing multiple versions".
|
||||||
Documentation
|
Documentation
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
`Documentation for Python 3.9 <https://docs.python.org/3.9/>`_ is online,
|
`Documentation for Python 3.10 <https://docs.python.org/3.10/>`_ 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
|
||||||
|
@ -213,8 +213,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.9 with 3.9 being the
|
For example, if you want to install Python 2.7, 3.6, and 3.10 with 3.10 being the
|
||||||
primary version, you would execute ``make install`` in your 3.9 build directory
|
primary version, you would execute ``make install`` in your 3.10 build directory
|
||||||
and ``make altinstall`` in the others.
|
and ``make altinstall`` in the others.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.69 for python 3.9.
|
# Generated by GNU Autoconf 2.69 for python 3.10.
|
||||||
#
|
#
|
||||||
# Report bugs to <https://bugs.python.org/>.
|
# Report bugs to <https://bugs.python.org/>.
|
||||||
#
|
#
|
||||||
|
@ -580,8 +580,8 @@ MAKEFLAGS=
|
||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='python'
|
PACKAGE_NAME='python'
|
||||||
PACKAGE_TARNAME='python'
|
PACKAGE_TARNAME='python'
|
||||||
PACKAGE_VERSION='3.9'
|
PACKAGE_VERSION='3.10'
|
||||||
PACKAGE_STRING='python 3.9'
|
PACKAGE_STRING='python 3.10'
|
||||||
PACKAGE_BUGREPORT='https://bugs.python.org/'
|
PACKAGE_BUGREPORT='https://bugs.python.org/'
|
||||||
PACKAGE_URL=''
|
PACKAGE_URL=''
|
||||||
|
|
||||||
|
@ -1404,7 +1404,7 @@ if test "$ac_init_help" = "long"; then
|
||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# Omit some internal or obsolete options to make the list less imposing.
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures python 3.9 to adapt to many kinds of systems.
|
\`configure' configures python 3.10 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
|
@ -1469,7 +1469,7 @@ fi
|
||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of python 3.9:";;
|
short | recursive ) echo "Configuration of python 3.10:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
|
@ -1673,7 +1673,7 @@ fi
|
||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
python configure 3.9
|
python configure 3.10
|
||||||
generated by GNU Autoconf 2.69
|
generated by GNU Autoconf 2.69
|
||||||
|
|
||||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||||
|
@ -2382,7 +2382,7 @@ cat >config.log <<_ACEOF
|
||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by python $as_me 3.9, which was
|
It was created by python $as_me 3.10, which was
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
$ $0 $@
|
$ $0 $@
|
||||||
|
@ -3002,7 +3002,7 @@ rm confdefs.h
|
||||||
mv confdefs.h.new confdefs.h
|
mv confdefs.h.new confdefs.h
|
||||||
|
|
||||||
|
|
||||||
VERSION=3.9
|
VERSION=3.10
|
||||||
|
|
||||||
# Version number of Python's own shared library file.
|
# Version number of Python's own shared library file.
|
||||||
|
|
||||||
|
@ -18118,7 +18118,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by python $as_me 3.9, which was
|
This file was extended by python $as_me 3.10, which was
|
||||||
generated by GNU Autoconf 2.69. Invocation command line was
|
generated by GNU Autoconf 2.69. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
|
@ -18180,7 +18180,7 @@ _ACEOF
|
||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
python config.status 3.9
|
python config.status 3.10
|
||||||
configured by $0, generated by GNU Autoconf 2.69,
|
configured by $0, generated by GNU Autoconf 2.69,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ dnl * Please run autoreconf to test your changes! *
|
||||||
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.9)
|
m4_define(PYTHON_VERSION, 3.10)
|
||||||
|
|
||||||
AC_PREREQ([2.69])
|
AC_PREREQ([2.69])
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue