Update NEWS, docs, and patchlevel for 3.7.0b1
This commit is contained in:
parent
1ca2ffdc53
commit
6e41cd95b5
|
@ -19,11 +19,11 @@
|
||||||
#define PY_MAJOR_VERSION 3
|
#define PY_MAJOR_VERSION 3
|
||||||
#define PY_MINOR_VERSION 7
|
#define PY_MINOR_VERSION 7
|
||||||
#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_BETA
|
||||||
#define PY_RELEASE_SERIAL 4
|
#define PY_RELEASE_SERIAL 1
|
||||||
|
|
||||||
/* Version as a string */
|
/* Version as a string */
|
||||||
#define PY_VERSION "3.7.0a4+"
|
#define PY_VERSION "3.7.0b1"
|
||||||
/*--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.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# Autogenerated by Sphinx on Mon Jan 8 21:23:03 2018
|
# Autogenerated by Sphinx on Tue Jan 30 18:36:07 2018
|
||||||
topics = {'assert': 'The "assert" statement\n'
|
topics = {'assert': 'The "assert" statement\n'
|
||||||
'**********************\n'
|
'**********************\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -629,6 +629,18 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'dictionary) is\n'
|
'dictionary) is\n'
|
||||||
' unaffected.\n'
|
' unaffected.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
'Changed in version 3.5: "__class__" module attribute is '
|
||||||
|
'now writable.\n'
|
||||||
|
'\n'
|
||||||
|
'New in version 3.7: "__getattr__" and "__dir__" module '
|
||||||
|
'attributes.\n'
|
||||||
|
'\n'
|
||||||
|
'See also:\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 562** - Module __getattr__ and __dir__\n'
|
||||||
|
' Describes the "__getattr__" and "__dir__" functions '
|
||||||
|
'on modules.\n'
|
||||||
|
'\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Implementing Descriptors\n'
|
'Implementing Descriptors\n'
|
||||||
'========================\n'
|
'========================\n'
|
||||||
|
@ -2512,17 +2524,23 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'have\n'
|
'have\n'
|
||||||
'"return" annotation of the form ""-> expression"" after the '
|
'"return" annotation of the form ""-> expression"" after the '
|
||||||
'parameter\n'
|
'parameter\n'
|
||||||
'list. These annotations can be any valid Python expression and '
|
'list. These annotations can be any valid Python expression. '
|
||||||
'are\n'
|
'The\n'
|
||||||
'evaluated when the function definition is executed. Annotations '
|
'presence of annotations does not change the semantics of a '
|
||||||
'may\n'
|
'function.\n'
|
||||||
'be evaluated in a different order than they appear in the source '
|
'The annotation values are available as values of a dictionary '
|
||||||
'code.\n'
|
'keyed by\n'
|
||||||
'The presence of annotations does not change the semantics of a\n'
|
'the parameters\' names in the "__annotations__" attribute of '
|
||||||
'function. The annotation values are available as values of a\n'
|
'the\n'
|
||||||
"dictionary keyed by the parameters' names in the "
|
'function object. If the "annotations" import from "__future__" '
|
||||||
'"__annotations__"\n'
|
'is\n'
|
||||||
'attribute of the function object.\n'
|
'used, annotations are preserved as strings at runtime which '
|
||||||
|
'enables\n'
|
||||||
|
'postponed evaluation. Otherwise, they are evaluated when the '
|
||||||
|
'function\n'
|
||||||
|
'definition is executed. In this case annotations may be '
|
||||||
|
'evaluated in\n'
|
||||||
|
'a different order than they appear in the source code.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'It is also possible to create anonymous functions (functions not '
|
'It is also possible to create anonymous functions (functions not '
|
||||||
'bound\n'
|
'bound\n'
|
||||||
|
@ -2554,6 +2572,21 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' **PEP 3107** - Function Annotations\n'
|
' **PEP 3107** - Function Annotations\n'
|
||||||
' The original specification for function annotations.\n'
|
' The original specification for function annotations.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
' **PEP 484** - Type Hints\n'
|
||||||
|
' Definition of a standard meaning for annotations: type '
|
||||||
|
'hints.\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 526** - Syntax for Variable Annotations\n'
|
||||||
|
' Ability to type hint variable declarations, including '
|
||||||
|
'class\n'
|
||||||
|
' variables and instance variables\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 563** - Postponed Evaluation of Annotations\n'
|
||||||
|
' Support for forward references within annotations by '
|
||||||
|
'preserving\n'
|
||||||
|
' annotations in a string form at runtime instead of eager\n'
|
||||||
|
' evaluation.\n'
|
||||||
|
'\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Class definitions\n'
|
'Class definitions\n'
|
||||||
'=================\n'
|
'=================\n'
|
||||||
|
@ -3748,33 +3781,30 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' (com) end\n'
|
' (com) end\n'
|
||||||
' (Pdb)\n'
|
' (Pdb)\n'
|
||||||
'\n'
|
'\n'
|
||||||
' To remove all commands from a breakpoint, type commands and '
|
' To remove all commands from a breakpoint, type "commands" '
|
||||||
'follow\n'
|
'and\n'
|
||||||
' it immediately with "end"; that is, give no commands.\n'
|
' follow it immediately with "end"; that is, give no commands.\n'
|
||||||
'\n'
|
'\n'
|
||||||
' With no *bpnumber* argument, commands refers to the last '
|
' With no *bpnumber* argument, "commands" refers to the last\n'
|
||||||
'breakpoint\n'
|
' breakpoint set.\n'
|
||||||
' set.\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
' You can use breakpoint commands to start your program up '
|
' You can use breakpoint commands to start your program up '
|
||||||
'again.\n'
|
'again.\n'
|
||||||
' Simply use the continue command, or step, or any other '
|
' Simply use the "continue" command, or "step", or any other '
|
||||||
'command that\n'
|
'command\n'
|
||||||
' resumes execution.\n'
|
' that resumes execution.\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Specifying any command resuming execution (currently '
|
' Specifying any command resuming execution (currently '
|
||||||
'continue,\n'
|
'"continue",\n'
|
||||||
' step, next, return, jump, quit and their abbreviations) '
|
' "step", "next", "return", "jump", "quit" and their '
|
||||||
'terminates\n'
|
'abbreviations)\n'
|
||||||
' the command list (as if that command was immediately followed '
|
' terminates the command "list" (as if that command was '
|
||||||
'by\n'
|
'immediately\n'
|
||||||
' end). This is because any time you resume execution (even '
|
' followed by end). This is because any time you resume '
|
||||||
'with a\n'
|
'execution\n'
|
||||||
' simple next or step), you may encounter another '
|
' (even with a simple next or step), you may encounter another\n'
|
||||||
'breakpoint—which\n'
|
' breakpoint—which could have its own command list, leading to\n'
|
||||||
' could have its own command list, leading to ambiguities about '
|
' ambiguities about which list to execute.\n'
|
||||||
'which\n'
|
|
||||||
' list to execute.\n'
|
|
||||||
'\n'
|
'\n'
|
||||||
" If you use the 'silent' command in the command list, the "
|
" If you use the 'silent' command in the command list, the "
|
||||||
'usual\n'
|
'usual\n'
|
||||||
|
@ -5506,17 +5536,23 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'have\n'
|
'have\n'
|
||||||
'"return" annotation of the form ""-> expression"" after the '
|
'"return" annotation of the form ""-> expression"" after the '
|
||||||
'parameter\n'
|
'parameter\n'
|
||||||
'list. These annotations can be any valid Python expression and '
|
'list. These annotations can be any valid Python expression. '
|
||||||
'are\n'
|
'The\n'
|
||||||
'evaluated when the function definition is executed. Annotations '
|
'presence of annotations does not change the semantics of a '
|
||||||
'may\n'
|
'function.\n'
|
||||||
'be evaluated in a different order than they appear in the source '
|
'The annotation values are available as values of a dictionary '
|
||||||
'code.\n'
|
'keyed by\n'
|
||||||
'The presence of annotations does not change the semantics of a\n'
|
'the parameters\' names in the "__annotations__" attribute of '
|
||||||
'function. The annotation values are available as values of a\n'
|
'the\n'
|
||||||
"dictionary keyed by the parameters' names in the "
|
'function object. If the "annotations" import from "__future__" '
|
||||||
'"__annotations__"\n'
|
'is\n'
|
||||||
'attribute of the function object.\n'
|
'used, annotations are preserved as strings at runtime which '
|
||||||
|
'enables\n'
|
||||||
|
'postponed evaluation. Otherwise, they are evaluated when the '
|
||||||
|
'function\n'
|
||||||
|
'definition is executed. In this case annotations may be '
|
||||||
|
'evaluated in\n'
|
||||||
|
'a different order than they appear in the source code.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'It is also possible to create anonymous functions (functions not '
|
'It is also possible to create anonymous functions (functions not '
|
||||||
'bound\n'
|
'bound\n'
|
||||||
|
@ -5546,7 +5582,22 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'See also:\n'
|
'See also:\n'
|
||||||
'\n'
|
'\n'
|
||||||
' **PEP 3107** - Function Annotations\n'
|
' **PEP 3107** - Function Annotations\n'
|
||||||
' The original specification for function annotations.\n',
|
' The original specification for function annotations.\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 484** - Type Hints\n'
|
||||||
|
' Definition of a standard meaning for annotations: type '
|
||||||
|
'hints.\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 526** - Syntax for Variable Annotations\n'
|
||||||
|
' Ability to type hint variable declarations, including '
|
||||||
|
'class\n'
|
||||||
|
' variables and instance variables\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 563** - Postponed Evaluation of Annotations\n'
|
||||||
|
' Support for forward references within annotations by '
|
||||||
|
'preserving\n'
|
||||||
|
' annotations in a string form at runtime instead of eager\n'
|
||||||
|
' evaluation.\n',
|
||||||
'global': 'The "global" statement\n'
|
'global': 'The "global" statement\n'
|
||||||
'**********************\n'
|
'**********************\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
@ -6019,11 +6070,16 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'\n'
|
'\n'
|
||||||
'* other future statements.\n'
|
'* other future statements.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'The features recognized by Python 3.0 are "absolute_import",\n'
|
'The only feature in Python 3.7 that requires using the future\n'
|
||||||
'"division", "generators", "unicode_literals", "print_function",\n'
|
'statement is "annotations".\n'
|
||||||
'"nested_scopes" and "with_statement". They are all redundant '
|
'\n'
|
||||||
'because\n'
|
'All historical features enabled by the future statement are still\n'
|
||||||
'they are always enabled, and only kept for backwards '
|
'recognized by Python 3. The list includes "absolute_import",\n'
|
||||||
|
'"division", "generators", "generator_stop", "unicode_literals",\n'
|
||||||
|
'"print_function", "nested_scopes" and "with_statement". They are '
|
||||||
|
'all\n'
|
||||||
|
'redundant because they are always enabled, and only kept for '
|
||||||
|
'backwards\n'
|
||||||
'compatibility.\n'
|
'compatibility.\n'
|
||||||
'\n'
|
'\n'
|
||||||
'A future statement is recognized and treated specially at compile\n'
|
'A future statement is recognized and treated specially at compile\n'
|
||||||
|
@ -8146,6 +8202,18 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'dictionary) is\n'
|
'dictionary) is\n'
|
||||||
' unaffected.\n'
|
' unaffected.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
'Changed in version 3.5: "__class__" module attribute is now '
|
||||||
|
'writable.\n'
|
||||||
|
'\n'
|
||||||
|
'New in version 3.7: "__getattr__" and "__dir__" module '
|
||||||
|
'attributes.\n'
|
||||||
|
'\n'
|
||||||
|
'See also:\n'
|
||||||
|
'\n'
|
||||||
|
' **PEP 562** - Module __getattr__ and __dir__\n'
|
||||||
|
' Describes the "__getattr__" and "__dir__" functions on '
|
||||||
|
'modules.\n'
|
||||||
|
'\n'
|
||||||
'\n'
|
'\n'
|
||||||
'Implementing Descriptors\n'
|
'Implementing Descriptors\n'
|
||||||
'------------------------\n'
|
'------------------------\n'
|
||||||
|
@ -9547,6 +9615,27 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
' formatting options that can be specified in format '
|
' formatting options that can be specified in format '
|
||||||
'strings.\n'
|
'strings.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
' Note: When formatting a number ("int", "float", "float" '
|
||||||
|
'and\n'
|
||||||
|
' subclasses) with the "n" type (ex: '
|
||||||
|
'"\'{:n}\'.format(1234)"), the\n'
|
||||||
|
' function sets temporarily the "LC_CTYPE" locale to '
|
||||||
|
'the\n'
|
||||||
|
' "LC_NUMERIC" locale to decode "decimal_point" and '
|
||||||
|
'"thousands_sep"\n'
|
||||||
|
' fields of "localeconv()" if they are non-ASCII or '
|
||||||
|
'longer than 1\n'
|
||||||
|
' byte, and the "LC_NUMERIC" locale is different than '
|
||||||
|
'the\n'
|
||||||
|
' "LC_CTYPE" locale. This temporary change affects '
|
||||||
|
'other threads.\n'
|
||||||
|
'\n'
|
||||||
|
' Changed in version 3.7: When formatting a number with '
|
||||||
|
'the "n" type,\n'
|
||||||
|
' the function sets temporarily the "LC_CTYPE" locale to '
|
||||||
|
'the\n'
|
||||||
|
' "LC_NUMERIC" locale in some cases.\n'
|
||||||
|
'\n'
|
||||||
'str.format_map(mapping)\n'
|
'str.format_map(mapping)\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Similar to "str.format(**mapping)", except that '
|
' Similar to "str.format(**mapping)", except that '
|
||||||
|
@ -9598,6 +9687,16 @@ topics = {'assert': 'The "assert" statement\n'
|
||||||
'Unicode\n'
|
'Unicode\n'
|
||||||
' Standard.\n'
|
' Standard.\n'
|
||||||
'\n'
|
'\n'
|
||||||
|
'str.isascii()\n'
|
||||||
|
'\n'
|
||||||
|
' Return true if the string is empty or all characters in '
|
||||||
|
'the string\n'
|
||||||
|
' are ASCII, false otherwise. ASCII characters have code '
|
||||||
|
'points in\n'
|
||||||
|
' the range U+0000-U+007F.\n'
|
||||||
|
'\n'
|
||||||
|
' New in version 3.7.\n'
|
||||||
|
'\n'
|
||||||
'str.isdecimal()\n'
|
'str.isdecimal()\n'
|
||||||
'\n'
|
'\n'
|
||||||
' Return true if all characters in the string are decimal '
|
' Return true if all characters in the string are decimal '
|
||||||
|
|
|
@ -0,0 +1,888 @@
|
||||||
|
.. bpo: 32703
|
||||||
|
.. date: 2018-01-29-01-15-17
|
||||||
|
.. nonce: mwrF4-
|
||||||
|
.. release date: 2018-01-30
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Fix coroutine's ResourceWarning when there's an active error set when it's
|
||||||
|
being finalized.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32650
|
||||||
|
.. date: 2018-01-28-23-01-39
|
||||||
|
.. nonce: Bbi7ek
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Pdb and other debuggers dependent on bdb.py will correctly step over (next
|
||||||
|
command) native coroutines. Patch by Pablo Galindo.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 28685
|
||||||
|
.. date: 2018-01-28-15-09-33
|
||||||
|
.. nonce: cHThLM
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Optimize list.sort() and sorted() by using type specialized comparisons when
|
||||||
|
possible.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32685
|
||||||
|
.. date: 2018-01-28-12-25-06
|
||||||
|
.. nonce: nGctze
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Improve suggestion when the Python 2 form of print statement is either
|
||||||
|
present on the same line as the header of a compound statement or else
|
||||||
|
terminated by a semi-colon instead of a newline. Patch by Nitish Chandra.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32697
|
||||||
|
.. date: 2018-01-28-09-52-12
|
||||||
|
.. nonce: RHlu6k
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Python now explicitly preserves the definition order of keyword-only
|
||||||
|
parameters. It's always preserved their order, but this behavior was never
|
||||||
|
guaranteed before; this behavior is now guaranteed and tested.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32690
|
||||||
|
.. date: 2018-01-28-09-26-07
|
||||||
|
.. nonce: 8i9g5P
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
The locals() dictionary now displays in the lexical order that variables
|
||||||
|
were defined. Previously, the order was reversed.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32677
|
||||||
|
.. date: 2018-01-26-20-11-09
|
||||||
|
.. nonce: xTGfCq
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Add ``.isascii()`` method to ``str``, ``bytes`` and ``bytearray``. It can be
|
||||||
|
used to test that string contains only ASCII characters.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32670
|
||||||
|
.. date: 2018-01-25-17-03-46
|
||||||
|
.. nonce: YsqJUC
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Enforce :pep:`479` for all code.
|
||||||
|
|
||||||
|
This means that manually raising a StopIteration exception from a generator
|
||||||
|
is prohibited for all code, regardless of whether 'from __future__ import
|
||||||
|
generator_stop' was used or not.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32591
|
||||||
|
.. date: 2018-01-20-00-50-33
|
||||||
|
.. nonce: 666kl6
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Added built-in support for tracking the origin of coroutine objects; see
|
||||||
|
sys.set_coroutine_origin_tracking_depth and CoroutineType.cr_origin. This
|
||||||
|
replaces the asyncio debug mode's use of coroutine wrapping for native
|
||||||
|
coroutine objects.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31368
|
||||||
|
.. date: 2018-01-19-01-54-22
|
||||||
|
.. nonce: kzKqUR
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Expose preadv and pwritev system calls in the os module. Patch by Pablo
|
||||||
|
Galindo
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32544
|
||||||
|
.. date: 2018-01-16-18-51-58
|
||||||
|
.. nonce: ga-cFE
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
``hasattr(obj, name)`` and ``getattr(obj, name, default)`` are about 4 times
|
||||||
|
faster than before when ``name`` is not found and ``obj`` doesn't override
|
||||||
|
``__getattr__`` or ``__getattribute__``.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 26163
|
||||||
|
.. date: 2018-01-14-20-32-47
|
||||||
|
.. nonce: xv9Iuv
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Improved frozenset() hash to create more distinct hash values when faced
|
||||||
|
with datasets containing many similar values.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32550
|
||||||
|
.. date: 2018-01-14-12-42-17
|
||||||
|
.. nonce: k0EK-4
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Remove the STORE_ANNOTATION bytecode.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 20104
|
||||||
|
.. date: 2018-01-06-01-14-53
|
||||||
|
.. nonce: 9DkKb8
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Expose posix_spawn as a low level API in the os module.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 24340
|
||||||
|
.. date: 2018-01-01-21-59-31
|
||||||
|
.. nonce: hmKBvg
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Fixed estimation of the code stack size.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32436
|
||||||
|
.. date: 2017-12-28-00-20-42
|
||||||
|
.. nonce: H159Jv
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Implement :pep:`567` Context Variables.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 18533
|
||||||
|
.. date: 2017-12-13-16-46-23
|
||||||
|
.. nonce: Dlk8d7
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
``repr()`` on a dict containing its own ``values()`` or ``items()`` no
|
||||||
|
longer raises ``RecursionError``; OrderedDict similarly. Instead, use
|
||||||
|
``...``, as for other recursive structures. Patch by Ben North.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 20891
|
||||||
|
.. date: 2017-12-04-18-34-11
|
||||||
|
.. nonce: C2TsfR
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Py_Initialize() now creates the GIL. The GIL is no longer created "on
|
||||||
|
demand" to fix a race condition when PyGILState_Ensure() is called in a non-
|
||||||
|
Python thread.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32028
|
||||||
|
.. date: 2017-12-03-22-29-13
|
||||||
|
.. nonce: KC2w4Q
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Leading whitespace is now correctly ignored when generating suggestions for
|
||||||
|
converting Py2 print statements to Py3 builtin print function calls. Patch
|
||||||
|
by Sanyam Khurana.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31356
|
||||||
|
.. date: 2017-11-02-00-34-42
|
||||||
|
.. nonce: 54Lb8U
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Add a new contextmanager to the gc module that temporarily disables the GC
|
||||||
|
and restores the previous state. The implementation is done in C to assure
|
||||||
|
atomicity and speed.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31179
|
||||||
|
.. date: 2017-08-10-17-32-48
|
||||||
|
.. nonce: XcgLYI
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Make dict.copy() up to 5.5 times faster.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31113
|
||||||
|
.. date: 2017-08-07-16-46-56
|
||||||
|
.. nonce: XgNEFg
|
||||||
|
.. section: Core and Builtins
|
||||||
|
|
||||||
|
Get rid of recursion in the compiler for normal control flow.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 25988
|
||||||
|
.. date: 2018-01-28-23-48-45
|
||||||
|
.. nonce: I9uBct
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Deprecate exposing the contents of collections.abc in the regular
|
||||||
|
collections module.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31429
|
||||||
|
.. date: 2018-01-28-22-40-05
|
||||||
|
.. nonce: qNt8rQ
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The default cipher suite selection of the ssl module now uses a blacklist
|
||||||
|
approach rather than a hard-coded whitelist. Python no longer re-enables
|
||||||
|
ciphers that have been blocked by OpenSSL security update. Default cipher
|
||||||
|
suite selection can be configured on compile time.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 30306
|
||||||
|
.. date: 2018-01-28-14-10-51
|
||||||
|
.. nonce: TmKMXi
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
contextlib.contextmanager now releases the arguments passed to the
|
||||||
|
underlying generator as soon as the context manager is entered. Previously
|
||||||
|
it would keep them alive for as long as the context manager was alive, even
|
||||||
|
when not being used as a function decorator. Patch by Martin Teichmann.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 21417
|
||||||
|
.. date: 2018-01-28-07-55-10
|
||||||
|
.. nonce: JFnV99
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Added support for setting the compression level for zipfile.ZipFile.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32251
|
||||||
|
.. date: 2018-01-28-01-21-47
|
||||||
|
.. nonce: fOA5qB
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Implement asyncio.BufferedProtocol (provisional API).
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32513
|
||||||
|
.. date: 2018-01-27-11-20-16
|
||||||
|
.. nonce: ak-iD2
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
In dataclasses, allow easier overriding of dunder methods without specifying
|
||||||
|
decorator parameters.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32660
|
||||||
|
.. date: 2018-01-26-01-26-00
|
||||||
|
.. nonce: tVJIWV
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
:mod:`termios` makes available ``FIONREAD``, ``FIONCLEX``, ``FIOCLEX``,
|
||||||
|
``FIOASYNC`` and ``FIONBIO`` also under Solaris/derivatives.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 27931
|
||||||
|
.. date: 2018-01-25-21-04-11
|
||||||
|
.. nonce: e4r52t
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Fix email address header parsing error when the username is an empty quoted
|
||||||
|
string. Patch by Xiang Zhang.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32659
|
||||||
|
.. date: 2018-01-25-03-46-00
|
||||||
|
.. nonce: VHYoON
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Under Solaris and derivatives, :class:`os.stat_result` provides a st_fstype
|
||||||
|
attribute.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32662
|
||||||
|
.. date: 2018-01-25-01-45-30
|
||||||
|
.. nonce: oabhd8
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Implement Server.start_serving(), Server.serve_forever(), and
|
||||||
|
Server.is_serving() methods. Add 'start_serving' keyword parameter to
|
||||||
|
loop.create_server() and loop.create_unix_server().
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32391
|
||||||
|
.. date: 2018-01-24-15-20-12
|
||||||
|
.. nonce: 0f8MY9
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Implement :meth:`asyncio.StreamWriter.wait_closed` and
|
||||||
|
:meth:`asyncio.StreamWriter.is_closing` methods
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32643
|
||||||
|
.. date: 2018-01-24-00-32-58
|
||||||
|
.. nonce: VWipsW
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Make Task._step, Task._wakeup and Future._schedule_callbacks methods
|
||||||
|
private.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32630
|
||||||
|
.. date: 2018-01-23-01-57-36
|
||||||
|
.. nonce: 6KRHBs
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Refactor decimal module to use contextvars to store decimal context.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32622
|
||||||
|
.. date: 2018-01-22-18-18-44
|
||||||
|
.. nonce: A1D6FP
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add :meth:`asyncio.AbstractEventLoop.sendfile` method.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32304
|
||||||
|
.. date: 2018-01-21-16-33-53
|
||||||
|
.. nonce: TItrNv
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
distutils' upload command no longer corrupts tar files ending with a CR
|
||||||
|
byte, and no longer tries to convert CR to CRLF in any of the upload text
|
||||||
|
fields.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32502
|
||||||
|
.. date: 2018-01-20-17-15-34
|
||||||
|
.. nonce: OXJfn7
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
uuid.uuid1 no longer raises an exception if a 64-bit hardware address is
|
||||||
|
encountered.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32596
|
||||||
|
.. date: 2018-01-19-19-57-45
|
||||||
|
.. nonce: 4aVIie
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
``concurrent.futures`` imports ``ThreadPoolExecutor`` and
|
||||||
|
``ProcessPoolExecutor`` lazily (using :pep:`562`). It makes ``import
|
||||||
|
asyncio`` about 15% faster because asyncio uses only ``ThreadPoolExecutor``
|
||||||
|
by default.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31801
|
||||||
|
.. date: 2018-01-18-13-47-40
|
||||||
|
.. nonce: 3UGH1h
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add ``_ignore_`` to ``Enum`` so temporary variables can be used during class
|
||||||
|
construction without being turned into members.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32576
|
||||||
|
.. date: 2018-01-17-13-04-16
|
||||||
|
.. nonce: iDL09t
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Use queue.SimpleQueue() in places where it can be invoked from a weakref
|
||||||
|
callback.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32574
|
||||||
|
.. date: 2018-01-16-20-37-28
|
||||||
|
.. nonce: ru8eZ9
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Fix memory leak in asyncio.Queue, when the queue has limited size and it is
|
||||||
|
full, the cancelation of queue.put() can cause a memory leak. Patch by: José
|
||||||
|
Melero.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32521
|
||||||
|
.. date: 2018-01-15-12-53-13
|
||||||
|
.. nonce: IxX4Ba
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The nis module is now compatible with new libnsl and headers location.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32467
|
||||||
|
.. date: 2018-01-11-00-33-42
|
||||||
|
.. nonce: YVEOv6
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
collections.abc.ValuesView now inherits from collections.abc.Collection.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32473
|
||||||
|
.. date: 2018-01-10-20-37-59
|
||||||
|
.. nonce: mP_yJG
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Improve ABCMeta._dump_registry() output readability
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32102
|
||||||
|
.. date: 2018-01-10-18-04-21
|
||||||
|
.. nonce: 9-CZgD
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
New argument ``capture_output`` for subprocess.run
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32521
|
||||||
|
.. date: 2018-01-08-18-02-33
|
||||||
|
.. nonce: Kh-KoN
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
glibc has removed Sun RPC. Use replacement libtirpc headers and library in
|
||||||
|
nis module.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32493
|
||||||
|
.. date: 2018-01-08-15-53-37
|
||||||
|
.. nonce: vTXxGN
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
UUID module fixes build for FreeBSD/OpenBSD
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32503
|
||||||
|
.. date: 2018-01-07-09-22-26
|
||||||
|
.. nonce: ViMxpD
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Pickling with protocol 4 no longer creates too small frames.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 29237
|
||||||
|
.. date: 2018-01-04-14-45-33
|
||||||
|
.. nonce: zenYA6
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Create enum for pstats sorting options
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32454
|
||||||
|
.. date: 2017-12-30-10-38-05
|
||||||
|
.. nonce: wsZnl-
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add close(fd) function to the socket module.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 25942
|
||||||
|
.. date: 2017-12-27-20-15-51
|
||||||
|
.. nonce: Giyr8v
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The subprocess module is now more graceful when handling a Ctrl-C
|
||||||
|
KeyboardInterrupt during subprocess.call, subprocess.run, or a Popen context
|
||||||
|
manager. It now waits a short amount of time for the child (presumed to
|
||||||
|
have also gotten the SIGINT) to exit, before continuing the
|
||||||
|
KeyboardInterrupt exception handling. This still includes a SIGKILL in the
|
||||||
|
call() and run() APIs, but at least the child had a chance first.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32433
|
||||||
|
.. date: 2017-12-27-20-09-27
|
||||||
|
.. nonce: vmxsVI
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The hmac module now has hmac.digest(), which provides an optimized HMAC
|
||||||
|
digest.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 28134
|
||||||
|
.. date: 2017-12-24-20-01-09
|
||||||
|
.. nonce: HJ8Beb
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Sockets now auto-detect family, type and protocol from file descriptor by
|
||||||
|
default.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32404
|
||||||
|
.. date: 2017-12-23-14-54-05
|
||||||
|
.. nonce: yJqtlJ
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Fix bug where :meth:`datetime.datetime.fromtimestamp` did not call __new__
|
||||||
|
in :class:`datetime.datetime` subclasses.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32403
|
||||||
|
.. date: 2017-12-23-14-51-46
|
||||||
|
.. nonce: CVFapH
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Improved speed of :class:`datetime.date` and :class:`datetime.datetime`
|
||||||
|
alternate constructors.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32228
|
||||||
|
.. date: 2017-12-22-16-47-41
|
||||||
|
.. nonce: waPx3q
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Ensure that ``truncate()`` preserves the file position (as reported by
|
||||||
|
``tell()``) after writes longer than the buffer size.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32410
|
||||||
|
.. date: 2017-12-22-16-05-01
|
||||||
|
.. nonce: 8JzhvH
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Implement ``loop.sock_sendfile`` for asyncio event loop.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 22908
|
||||||
|
.. date: 2017-12-21-22-00-11
|
||||||
|
.. nonce: cVm89I
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Added seek and tell to the ZipExtFile class. This only works if the file
|
||||||
|
object used to open the zipfile is seekable.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32373
|
||||||
|
.. date: 2017-12-19-09-23-46
|
||||||
|
.. nonce: 8qAkoW
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add socket.getblocking() method.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32248
|
||||||
|
.. date: 2017-12-15-15-34-12
|
||||||
|
.. nonce: zmO8G2
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add :mod:`importlib.resources` and :class:`importlib.abc.ResourceReader` as
|
||||||
|
the unified API for reading resources contained within packages. Loaders
|
||||||
|
wishing to support resource reading must implement the
|
||||||
|
:meth:`get_resource_reader()` method. File-based and zipimport-based
|
||||||
|
loaders both implement these APIs. :class:`importlib.abc.ResourceLoader` is
|
||||||
|
deprecated in favor of these new APIs.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32320
|
||||||
|
.. date: 2017-12-14-01-36-25
|
||||||
|
.. nonce: jwOZlr
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
collections.namedtuple() now supports default values.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 29302
|
||||||
|
.. date: 2017-12-11-15-14-55
|
||||||
|
.. nonce: Nczj9l
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add contextlib.AsyncExitStack. Patch by Alexander Mohr and Ilya Kulakov.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31961
|
||||||
|
.. date: 2017-11-08-03-38-20
|
||||||
|
.. nonce: x5Sv0R
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The *args* argument of subprocess.Popen can now be a :term:`path-like
|
||||||
|
object`. If *args* is given as a sequence, it's first element can now be a
|
||||||
|
:term:`path-like object` as well.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31900
|
||||||
|
.. date: 2017-10-30-15-55-32
|
||||||
|
.. nonce: -S9xc4
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The :func:`locale.localeconv` function now sets temporarily the ``LC_CTYPE``
|
||||||
|
locale to the ``LC_NUMERIC`` locale to decode ``decimal_point`` and
|
||||||
|
``thousands_sep`` byte strings if they are non-ASCII or longer than 1 byte,
|
||||||
|
and the ``LC_NUMERIC`` locale is different than the ``LC_CTYPE`` locale.
|
||||||
|
This temporary change affects other threads.
|
||||||
|
|
||||||
|
Same change for the :meth:`str.format` method when formatting a number
|
||||||
|
(:class:`int`, :class:`float`, :class:`float` and subclasses) with the ``n``
|
||||||
|
type (ex: ``'{:n}'.format(1234)``).
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31853
|
||||||
|
.. date: 2017-10-23-22-55-51
|
||||||
|
.. nonce: h5fjrP
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Use super().method instead of socket.method in SSLSocket. They were there
|
||||||
|
most likely for legacy reasons.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 31399
|
||||||
|
.. date: 2017-09-08-14-05-33
|
||||||
|
.. nonce: FtBrrt
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
The ssl module now uses OpenSSL's X509_VERIFY_PARAM_set1_host() and
|
||||||
|
X509_VERIFY_PARAM_set1_ip() API to verify hostname and IP addresses. Subject
|
||||||
|
common name fallback can be disabled with
|
||||||
|
SSLContext.hostname_checks_common_name.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 14976
|
||||||
|
.. date: 2017-09-07-19-12-47
|
||||||
|
.. nonce: dx0Zxb
|
||||||
|
.. section: Library
|
||||||
|
|
||||||
|
Add a queue.SimpleQueue class, an unbounded FIFO queue with a reentrant C
|
||||||
|
implementation of put().
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32724
|
||||||
|
.. date: 2018-01-30-09-00-19
|
||||||
|
.. nonce: qPIaM-
|
||||||
|
.. section: Documentation
|
||||||
|
|
||||||
|
Add references to some commands in the documentation of Pdb. Patch by
|
||||||
|
Stéphane Wirtel
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32649
|
||||||
|
.. date: 2018-01-27-23-36-31
|
||||||
|
.. nonce: o7qOjF
|
||||||
|
.. section: Documentation
|
||||||
|
|
||||||
|
Complete the C API documentation, profiling and tracing part with the newly
|
||||||
|
added per-opcode events.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 17799
|
||||||
|
.. date: 2018-01-22-21-13-46
|
||||||
|
.. nonce: rdZ-Vk
|
||||||
|
.. section: Documentation
|
||||||
|
|
||||||
|
Explain real behaviour of sys.settrace and sys.setprofile and their C-API
|
||||||
|
counterparts regarding which type of events are received in each function.
|
||||||
|
Patch by Pablo Galindo Salgado.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32721
|
||||||
|
.. date: 2018-01-29-21-30-44
|
||||||
|
.. nonce: 2Bebm1
|
||||||
|
.. section: Tests
|
||||||
|
|
||||||
|
Fix test_hashlib to not fail if the _md5 module is not built.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 28414
|
||||||
|
.. date: 2018-01-28-21-19-13
|
||||||
|
.. nonce: a6Onzt
|
||||||
|
.. section: Tests
|
||||||
|
|
||||||
|
Add test cases for IDNA 2003 and 2008 host names. IDNA 2003
|
||||||
|
internationalized host names are working since bpo-31399 has landed. IDNA
|
||||||
|
2008 are still broken.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32604
|
||||||
|
.. date: 2018-01-26-21-29-09
|
||||||
|
.. nonce: 7iazNx
|
||||||
|
.. section: Tests
|
||||||
|
|
||||||
|
Add a new "_xxsubinterpreters" extension module that exposes the existing
|
||||||
|
subinterpreter C-API and a new cross-interpreter data sharing mechanism. The
|
||||||
|
module is primarily intended for more thorough testing of the existing
|
||||||
|
subinterpreter support.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32602
|
||||||
|
.. date: 2018-01-19-20-47-11
|
||||||
|
.. nonce: dz41pq
|
||||||
|
.. section: Tests
|
||||||
|
|
||||||
|
Add test certs and test for ECDSA cert and EC/RSA dual mode.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32549
|
||||||
|
.. date: 2018-01-14-11-40-22
|
||||||
|
.. nonce: fLwbVA
|
||||||
|
.. section: Tests
|
||||||
|
|
||||||
|
On Travis CI, Python now Compiles and uses a local copy of OpenSSL 1.1.0g
|
||||||
|
for testing.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32635
|
||||||
|
.. date: 2018-01-23-15-33-40
|
||||||
|
.. nonce: qHwIZy
|
||||||
|
.. section: Build
|
||||||
|
|
||||||
|
Fix segfault of the crypt module when libxcrypt is provided instead of
|
||||||
|
libcrypt at the system.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32598
|
||||||
|
.. date: 2018-01-19-14-50-19
|
||||||
|
.. nonce: hP7bMV
|
||||||
|
.. section: Build
|
||||||
|
|
||||||
|
Use autoconf to detect OpenSSL libs, headers and supported features. The
|
||||||
|
ax_check_openssl M4 macro uses pkg-config to locate OpenSSL and falls back
|
||||||
|
to manual search.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32593
|
||||||
|
.. date: 2018-01-18-11-10-52
|
||||||
|
.. nonce: XIrf3v
|
||||||
|
.. section: Build
|
||||||
|
|
||||||
|
Drop support of FreeBSD 9 and older.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 29708
|
||||||
|
.. date: 2018-01-16-08-32-49
|
||||||
|
.. nonce: YCaHEx
|
||||||
|
.. section: Build
|
||||||
|
|
||||||
|
If the :envvar:`SOURCE_DATE_EPOCH` environment variable is set,
|
||||||
|
:mod:`py_compile` will always create hash-based ``.pyc`` files.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32588
|
||||||
|
.. date: 2018-01-18-14-56-45
|
||||||
|
.. nonce: vHww6F
|
||||||
|
.. section: Windows
|
||||||
|
|
||||||
|
Create standalone _distutils_findvs module and add missing _queue module to
|
||||||
|
installer.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 29911
|
||||||
|
.. date: 2018-01-07-12-33-21
|
||||||
|
.. nonce: ewSJKb
|
||||||
|
.. section: Windows
|
||||||
|
|
||||||
|
Ensure separate Modify and Uninstall buttons are displayed.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32507
|
||||||
|
.. date: 2018-01-07-12-32-49
|
||||||
|
.. nonce: vB4gxk
|
||||||
|
.. section: Windows
|
||||||
|
|
||||||
|
Use app-local UCRT install rather than the proper update for old versions of
|
||||||
|
Windows.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32726
|
||||||
|
.. date: 2018-01-30-07-13-10
|
||||||
|
.. nonce: tcARLK
|
||||||
|
.. section: macOS
|
||||||
|
|
||||||
|
Provide an additional, more modern macOS installer variant that supports
|
||||||
|
macOS 10.9+ systems in 64-bit mode only. Upgrade the supplied third-party
|
||||||
|
libraries to OpenSSL 1.1.0g and to SQLite 3.22.0. The 10.9+ installer now
|
||||||
|
links with and supplies its own copy of Tcl/Tk 8.6.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 28440
|
||||||
|
.. date: 2018-01-30-04-40-12
|
||||||
|
.. nonce: W_BUWU
|
||||||
|
.. section: macOS
|
||||||
|
|
||||||
|
No longer add /Library/Python/3.x/site-packages to sys.path for macOS
|
||||||
|
framework builds to avoid future conflicts.
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 32681
|
||||||
|
.. date: 2018-01-26-17-29-29
|
||||||
|
.. nonce: N1ruWa
|
||||||
|
.. section: C API
|
||||||
|
|
||||||
|
Fix uninitialized variable 'res' in the C implementation of os.dup2. Patch
|
||||||
|
by Stéphane Wirtel
|
||||||
|
|
||||||
|
..
|
||||||
|
|
||||||
|
.. bpo: 10381
|
||||||
|
.. date: 2017-12-28-15-22-05
|
||||||
|
.. nonce: a1E6aF
|
||||||
|
.. section: C API
|
||||||
|
|
||||||
|
Add C API access to the ``datetime.timezone`` constructor and
|
||||||
|
``datetime.timzone.UTC`` singleton.
|
|
@ -1,2 +0,0 @@
|
||||||
If the :envvar:`SOURCE_DATE_EPOCH` environment variable is set,
|
|
||||||
:mod:`py_compile` will always create hash-based ``.pyc`` files.
|
|
|
@ -1 +0,0 @@
|
||||||
Drop support of FreeBSD 9 and older.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Use autoconf to detect OpenSSL libs, headers and supported features. The
|
|
||||||
ax_check_openssl M4 macro uses pkg-config to locate OpenSSL and falls back
|
|
||||||
to manual search.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix segfault of the crypt module when libxcrypt is provided instead of
|
|
||||||
libcrypt at the system.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add C API access to the ``datetime.timezone`` constructor and
|
|
||||||
``datetime.timzone.UTC`` singleton.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix uninitialized variable 'res' in the C implementation of os.dup2. Patch
|
|
||||||
by Stéphane Wirtel
|
|
|
@ -1 +0,0 @@
|
||||||
Get rid of recursion in the compiler for normal control flow.
|
|
|
@ -1 +0,0 @@
|
||||||
Make dict.copy() up to 5.5 times faster.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add a new contextmanager to the gc module that temporarily disables the GC
|
|
||||||
and restores the previous state. The implementation is done in C to assure
|
|
||||||
atomicity and speed.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Leading whitespace is now correctly ignored when generating suggestions
|
|
||||||
for converting Py2 print statements to Py3 builtin print function calls.
|
|
||||||
Patch by Sanyam Khurana.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Py_Initialize() now creates the GIL. The GIL is no longer created "on demand"
|
|
||||||
to fix a race condition when PyGILState_Ensure() is called in a non-Python
|
|
||||||
thread.
|
|
|
@ -1,3 +0,0 @@
|
||||||
``repr()`` on a dict containing its own ``values()`` or ``items()`` no
|
|
||||||
longer raises ``RecursionError``; OrderedDict similarly. Instead, use
|
|
||||||
``...``, as for other recursive structures. Patch by Ben North.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement PEP 567
|
|
|
@ -1 +0,0 @@
|
||||||
Fixed estimation of the code stack size.
|
|
|
@ -1 +0,0 @@
|
||||||
Expose posix_spawn as a low level API in the os module.
|
|
|
@ -1 +0,0 @@
|
||||||
Remove the STORE_ANNOTATION bytecode.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Improved frozenset() hash to create more distinct hash values when faced
|
|
||||||
with datasets containing many similar values.
|
|
|
@ -1,3 +0,0 @@
|
||||||
``hasattr(obj, name)`` and ``getattr(obj, name, default)`` are about 4 times
|
|
||||||
faster than before when ``name`` is not found and ``obj`` doesn't override
|
|
||||||
``__getattr__`` or ``__getattribute__``.
|
|
|
@ -1 +0,0 @@
|
||||||
Expose preadv and pwritev system calls in the os module. Patch by Pablo Galindo
|
|
|
@ -1,4 +0,0 @@
|
||||||
Added built-in support for tracking the origin of coroutine objects; see
|
|
||||||
sys.set_coroutine_origin_tracking_depth and CoroutineType.cr_origin. This
|
|
||||||
replaces the asyncio debug mode's use of coroutine wrapping for native
|
|
||||||
coroutine objects.
|
|
|
@ -1,5 +0,0 @@
|
||||||
Enforce PEP 479 for all code.
|
|
||||||
|
|
||||||
This means that manually raising a StopIteration exception from a generator
|
|
||||||
is prohibited for all code, regardless of whether 'from __future__ import
|
|
||||||
generator_stop' was used or not.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add ``.isascii()`` method to ``str``, ``bytes`` and ``bytearray``.
|
|
||||||
It can be used to test that string contains only ASCII characters.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The locals() dictionary now displays in the lexical order that variables
|
|
||||||
were defined. Previously, the order was reversed.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Python now explicitly preserves the definition order of keyword-only
|
|
||||||
parameters. It's always preserved their order, but this behavior was never
|
|
||||||
guaranteed before; this behavior is now guaranteed and tested.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Improve suggestion when the Python 2 form of print statement is either
|
|
||||||
present on the same line as the header of a compound statement or else
|
|
||||||
terminated by a semi-colon instead of a newline. Patch by Nitish Chandra.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Optimize list.sort() and sorted() by using type specialized comparisons when
|
|
||||||
possible.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Pdb and other debuggers dependent on bdb.py will correctly step over (next
|
|
||||||
command) native coroutines. Patch by Pablo Galindo.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix coroutine's ResourceWarning when there's an active error set when it's
|
|
||||||
being finalized.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Explain real behaviour of sys.settrace and sys.setprofile and their C-API counterparts
|
|
||||||
regarding which type of events are received in each function. Patch by Pablo Galindo Salgado.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Complete the C API documentation, profiling and tracing part with the newly
|
|
||||||
added per-opcode events.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add references to some commands in the documentation of Pdb. Patch by
|
|
||||||
Stéphane Wirtel
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add a queue.SimpleQueue class, an unbounded FIFO queue with a reentrant C
|
|
||||||
implementation of put().
|
|
|
@ -1,4 +0,0 @@
|
||||||
The ssl module now uses OpenSSL's X509_VERIFY_PARAM_set1_host() and
|
|
||||||
X509_VERIFY_PARAM_set1_ip() API to verify hostname and IP addresses. Subject
|
|
||||||
common name fallback can be disabled with
|
|
||||||
SSLContext.hostname_checks_common_name.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Use super().method instead of socket.method in SSLSocket. They were
|
|
||||||
there most likely for legacy reasons.
|
|
|
@ -1,9 +0,0 @@
|
||||||
The :func:`locale.localeconv` function now sets temporarily the ``LC_CTYPE``
|
|
||||||
locale to the ``LC_NUMERIC`` locale to decode ``decimal_point`` and
|
|
||||||
``thousands_sep`` byte strings if they are non-ASCII or longer than 1 byte, and
|
|
||||||
the ``LC_NUMERIC`` locale is different than the ``LC_CTYPE`` locale. This
|
|
||||||
temporary change affects other threads.
|
|
||||||
|
|
||||||
Same change for the :meth:`str.format` method when formatting a number
|
|
||||||
(:class:`int`, :class:`float`, :class:`float` and subclasses) with the ``n``
|
|
||||||
type (ex: ``'{:n}'.format(1234)``).
|
|
|
@ -1,4 +0,0 @@
|
||||||
The *args* argument of subprocess.Popen can now be a
|
|
||||||
:term:`path-like object`. If *args* is given as a
|
|
||||||
sequence, it's first element can now be a
|
|
||||||
:term:`path-like object` as well.
|
|
|
@ -1 +0,0 @@
|
||||||
Add contextlib.AsyncExitStack. Patch by Alexander Mohr and Ilya Kulakov.
|
|
|
@ -1 +0,0 @@
|
||||||
collections.namedtuple() now supports default values.
|
|
|
@ -1,6 +0,0 @@
|
||||||
Add :mod:`importlib.resources` and :class:`importlib.abc.ResourceReader` as
|
|
||||||
the unified API for reading resources contained within packages. Loaders
|
|
||||||
wishing to support resource reading must implement the
|
|
||||||
:meth:`get_resource_reader()` method. File-based and zipimport-based loaders
|
|
||||||
both implement these APIs. :class:`importlib.abc.ResourceLoader` is
|
|
||||||
deprecated in favor of these new APIs.
|
|
|
@ -1 +0,0 @@
|
||||||
Add socket.getblocking() method.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Added seek and tell to the ZipExtFile class. This only works if the file
|
|
||||||
object used to open the zipfile is seekable.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement ``loop.sock_sendfile`` for asyncio event loop.
|
|
|
@ -1 +0,0 @@
|
||||||
Ensure that ``truncate()`` preserves the file position (as reported by ``tell()``) after writes longer than the buffer size.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Improved speed of :class:`datetime.date` and :class:`datetime.datetime`
|
|
||||||
alternate constructors.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Fix bug where :meth:`datetime.datetime.fromtimestamp` did not call __new__
|
|
||||||
in :class:`datetime.datetime` subclasses.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Sockets now auto-detect family, type and protocol from file descriptor by
|
|
||||||
default.
|
|
|
@ -1,2 +0,0 @@
|
||||||
The hmac module now has hmac.digest(), which provides an optimized HMAC
|
|
||||||
digest.
|
|
|
@ -1,6 +0,0 @@
|
||||||
The subprocess module is now more graceful when handling a Ctrl-C
|
|
||||||
KeyboardInterrupt during subprocess.call, subprocess.run, or a Popen context
|
|
||||||
manager. It now waits a short amount of time for the child (presumed to
|
|
||||||
have also gotten the SIGINT) to exit, before continuing the
|
|
||||||
KeyboardInterrupt exception handling. This still includes a SIGKILL in the
|
|
||||||
call() and run() APIs, but at least the child had a chance first.
|
|
|
@ -1 +0,0 @@
|
||||||
Add close(fd) function to the socket module.
|
|
|
@ -1 +0,0 @@
|
||||||
Create enum for pstats sorting options
|
|
|
@ -1 +0,0 @@
|
||||||
Pickling with protocol 4 no longer creates too small frames.
|
|
|
@ -1 +0,0 @@
|
||||||
UUID module fixes build for FreeBSD/OpenBSD
|
|
|
@ -1,2 +0,0 @@
|
||||||
glibc has removed Sun RPC. Use replacement libtirpc headers and library in
|
|
||||||
nis module.
|
|
|
@ -1 +0,0 @@
|
||||||
New argument ``capture_output`` for subprocess.run
|
|
|
@ -1 +0,0 @@
|
||||||
Improve ABCMeta._dump_registry() output readability
|
|
|
@ -1 +0,0 @@
|
||||||
collections.abc.ValuesView now inherits from collections.abc.Collection.
|
|
|
@ -1 +0,0 @@
|
||||||
The nis module is now compatible with new libnsl and headers location.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Fix memory leak in asyncio.Queue, when the queue has limited size and it is
|
|
||||||
full, the cancelation of queue.put() can cause a memory leak. Patch by: José
|
|
||||||
Melero.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Use queue.SimpleQueue() in places where it can be invoked from a weakref
|
|
||||||
callback.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Add ``_ignore_`` to ``Enum`` so temporary variables can be used during class
|
|
||||||
construction without being turned into members.
|
|
|
@ -1,4 +0,0 @@
|
||||||
``concurrent.futures`` imports ``ThreadPoolExecutor`` and
|
|
||||||
``ProcessPoolExecutor`` lazily (using :pep:`562`).
|
|
||||||
It makes ``import asyncio`` about 15% faster because asyncio
|
|
||||||
uses only ``ThreadPoolExecutor`` by default.
|
|
|
@ -1,2 +0,0 @@
|
||||||
uuid.uuid1 no longer raises an exception if a 64-bit hardware address is
|
|
||||||
encountered.
|
|
|
@ -1,2 +0,0 @@
|
||||||
distutils' upload command no longer corrupts tar files ending with a CR byte,
|
|
||||||
and no longer tries to convert CR to CRLF in any of the upload text fields.
|
|
|
@ -1 +0,0 @@
|
||||||
Add :meth:`asyncio.AbstractEventLoop.sendfile` method.
|
|
|
@ -1 +0,0 @@
|
||||||
Refactor decimal module to use contextvars to store decimal context.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Make Task._step, Task._wakeup and Future._schedule_callbacks methods
|
|
||||||
private.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement :meth:`asyncio.StreamWriter.wait_closed` and :meth:`asyncio.StreamWriter.is_closing` methods
|
|
|
@ -1,3 +0,0 @@
|
||||||
Implement Server.start_serving(), Server.serve_forever(), and
|
|
||||||
Server.is_serving() methods. Add 'start_serving' keyword parameter to
|
|
||||||
loop.create_server() and loop.create_unix_server().
|
|
|
@ -1 +0,0 @@
|
||||||
Under Solaris and derivatives, :class:`os.stat_result` provides a st_fstype attribute.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix email address header parsing error when the username is an empty quoted string. Patch by Xiang Zhang.
|
|
|
@ -1,2 +0,0 @@
|
||||||
:mod:`termios` makes available ``FIONREAD``, ``FIONCLEX``, ``FIOCLEX``,
|
|
||||||
``FIOASYNC`` and ``FIONBIO`` also under Solaris/derivatives.
|
|
|
@ -1,2 +0,0 @@
|
||||||
In dataclasses, allow easier overriding of dunder methods without specifying
|
|
||||||
decorator parameters.
|
|
|
@ -1 +0,0 @@
|
||||||
Implement asyncio.BufferedProtocol (provisional API).
|
|
|
@ -1 +0,0 @@
|
||||||
Added support for setting the compression level for zipfile.ZipFile.
|
|
|
@ -1,4 +0,0 @@
|
||||||
contextlib.contextmanager now releases the arguments passed to the
|
|
||||||
underlying generator as soon as the context manager is entered. Previously
|
|
||||||
it would keep them alive for as long as the context manager was alive, even
|
|
||||||
when not being used as a function decorator. Patch by Martin Teichmann.
|
|
|
@ -1,4 +0,0 @@
|
||||||
The default cipher suite selection of the ssl module now uses a blacklist
|
|
||||||
approach rather than a hard-coded whitelist. Python no longer re-enables
|
|
||||||
ciphers that have been blocked by OpenSSL security update. Default cipher
|
|
||||||
suite selection can be configured on compile time.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Deprecate exposing the contents of collections.abc in the regular
|
|
||||||
collections module.
|
|
|
@ -1 +0,0 @@
|
||||||
On Travis CI, Python now Compiles and uses a local copy of OpenSSL 1.1.0g for testing.
|
|
|
@ -1 +0,0 @@
|
||||||
Add test certs and test for ECDSA cert and EC/RSA dual mode.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Add a new "_xxsubinterpreters" extension module that exposes the existing
|
|
||||||
subinterpreter C-API and a new cross-interpreter data sharing mechanism. The
|
|
||||||
module is primarily intended for more thorough testing of the existing
|
|
||||||
subinterpreter support.
|
|
|
@ -1,3 +0,0 @@
|
||||||
Add test cases for IDNA 2003 and 2008 host names. IDNA 2003
|
|
||||||
internationalized host names are working since bpo-31399 has landed. IDNA
|
|
||||||
2008 are still broken.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix test_hashlib to not fail if the _md5 module is not built.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Use app-local UCRT install rather than the proper update for old versions of
|
|
||||||
Windows.
|
|
|
@ -1 +0,0 @@
|
||||||
Ensure separate Modify and Uninstall buttons are displayed.
|
|
|
@ -1,2 +0,0 @@
|
||||||
Create standalone _distutils_findvs module and add missing _queue module to
|
|
||||||
installer.
|
|
|
@ -1,2 +0,0 @@
|
||||||
No longer add /Library/Python/3.x/site-packages to sys.path for macOS
|
|
||||||
framework builds to avoid future conflicts.
|
|
|
@ -1,4 +0,0 @@
|
||||||
Provide an additional, more modern macOS installer variant that supports
|
|
||||||
macOS 10.9+ systems in 64-bit mode only. Upgrade the supplied third-party
|
|
||||||
libraries to OpenSSL 1.1.0g and to SQLite 3.22.0. The 10.9+ installer now
|
|
||||||
links with and supplies its own copy of Tcl/Tk 8.6.
|
|
|
@ -1,5 +1,5 @@
|
||||||
This is Python version 3.7.0 alpha 4+
|
This is Python version 3.7.0 beta 1
|
||||||
=====================================
|
===================================
|
||||||
|
|
||||||
.. 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
|
||||||
|
|
Loading…
Reference in New Issue