Python 3.11.1

This commit is contained in:
Pablo Galindo 2022-12-06 19:04:38 +00:00
parent 2182a71eed
commit a7a450f84a
154 changed files with 1632 additions and 370 deletions

View file

@ -18,12 +18,12 @@
/*--start constants--*/
#define PY_MAJOR_VERSION 3
#define PY_MINOR_VERSION 11
#define PY_MICRO_VERSION 0
#define PY_MICRO_VERSION 1
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
#define PY_RELEASE_SERIAL 0
/* Version as a string */
#define PY_VERSION "3.11.0+"
#define PY_VERSION "3.11.1"
/*--end constants--*/
/* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.

View file

@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
# Autogenerated by Sphinx on Mon Oct 24 18:35:07 2022
# Autogenerated by Sphinx on Tue Dec 6 19:05:00 2022
topics = {'assert': 'The "assert" statement\n'
'**********************\n'
'\n'
@ -358,7 +358,7 @@ topics = {'assert': 'The "assert" statement\n'
'yield_expression)]\n'
'\n'
'The difference from normal Assignment statements is that only '
'single\n'
'a single\n'
'target is allowed.\n'
'\n'
'For simple names as assignment targets, if in class or module '
@ -408,12 +408,13 @@ topics = {'assert': 'The "assert" statement\n'
'analysis\n'
' tools and IDEs.\n'
'\n'
'Changed in version 3.8: Now annotated assignments allow same\n'
'expressions in the right hand side as the regular '
'assignments.\n'
'Previously, some expressions (like un-parenthesized tuple '
'expressions)\n'
'caused a syntax error.\n',
'Changed in version 3.8: Now annotated assignments allow the '
'same\n'
'expressions in the right hand side as regular assignments. '
'Previously,\n'
'some expressions (like un-parenthesized tuple expressions) '
'caused a\n'
'syntax error.\n',
'async': 'Coroutines\n'
'**********\n'
'\n'
@ -2551,12 +2552,13 @@ topics = {'assert': 'The "assert" statement\n'
'that\n'
'multiple "except*" clauses can execute, each handling part of '
'the\n'
'exception group. Each clause executes once and handles an '
'exception\n'
'group of all matching exceptions. Each exception in the group '
'is\n'
'handled by at most one "except*" clause, the first that matches '
'it.\n'
'exception group. Each clause executes at most once and handles '
'an\n'
'exception group of all matching exceptions. Each exception in '
'the\n'
'group is handled by at most one "except*" clause, the first '
'that\n'
'matches it.\n'
'\n'
' >>> try:\n'
' ... raise ExceptionGroup("eg",\n'
@ -2579,21 +2581,32 @@ topics = {'assert': 'The "assert" statement\n'
' | ValueError: 1\n'
' +------------------------------------\n'
'\n'
' Any remaining exceptions that were not handled by any '
':keyword:`!except*`\n'
' clause are re-raised at the end, combined into an exception '
'group along with\n'
' all exceptions that were raised from within '
':keyword:`!except*` clauses.\n'
'Any remaining exceptions that were not handled by any "except*" '
'clause\n'
'are re-raised at the end, combined into an exception group along '
'with\n'
'all exceptions that were raised from within "except*" clauses.\n'
'\n'
' An :keyword:`!except*` clause must have a matching type,\n'
' and this type cannot be a subclass of '
':exc:`BaseExceptionGroup`.\n'
' It is not possible to mix :keyword:`except` and '
':keyword:`!except*`\n'
' in the same :keyword:`try`.\n'
' :keyword:`break`, :keyword:`continue` and :keyword:`return`\n'
' cannot appear in an :keyword:`!except*` clause.\n'
'If the raised exception is not an exception group and its type '
'matches\n'
'one of the "except*" clauses, it is caught and wrapped by an '
'exception\n'
'group with an empty message string.\n'
'\n'
' >>> try:\n'
' ... raise BlockingIOError\n'
' ... except* BlockingIOError as e:\n'
' ... print(repr(e))\n'
' ...\n'
" ExceptionGroup('', (BlockingIOError()))\n"
'\n'
'An "except*" clause must have a matching type, and this type '
'cannot be\n'
'a subclass of "BaseExceptionGroup". It is not possible to mix '
'"except"\n'
'and "except*" in the same "try". "break", "continue" and '
'"return"\n'
'cannot appear in an "except*" clause.\n'
'\n'
'\n'
'"else" clause\n'
@ -7308,7 +7321,7 @@ topics = {'assert': 'The "assert" statement\n'
'the clauses had been separated out into individual import '
'statements.\n'
'\n'
'The details of the first step, finding and loading modules are\n'
'The details of the first step, finding and loading modules, are\n'
'described in greater detail in the section on the import system, '
'which\n'
'also describes the various types of packages and modules that can '
@ -11096,8 +11109,9 @@ topics = {'assert': 'The "assert" statement\n'
'y)" is\n'
'typically invalid without special support in "MyClass". To '
'be able to\n'
'use that kind of patterns, the class needs to define a\n'
'*__match_args__* attribute.\n'
'use that kind of pattern, the class needs to define a '
'*__match_args__*\n'
'attribute.\n'
'\n'
'object.__match_args__\n'
'\n'
@ -11302,6 +11316,10 @@ topics = {'assert': 'The "assert" statement\n'
'*start* and\n'
' *end* are interpreted as in slice notation.\n'
'\n'
' If *sub* is empty, returns the number of empty strings '
'between\n'
' characters which is the length of the string plus one.\n'
'\n'
"str.encode(encoding='utf-8', errors='strict')\n"
'\n'
' Return an encoded version of the string as a bytes '
@ -11808,7 +11826,7 @@ topics = {'assert': 'The "assert" statement\n'
'followed by\n'
' the string itself.\n'
'\n'
'str.rsplit(sep=None, maxsplit=- 1)\n'
'str.rsplit(sep=None, maxsplit=-1)\n'
'\n'
' Return a list of the words in the string, using *sep* '
'as the\n'
@ -11849,7 +11867,7 @@ topics = {'assert': 'The "assert" statement\n'
" >>> 'Monty Python'.removesuffix(' Python')\n"
" 'Monty'\n"
'\n'
'str.split(sep=None, maxsplit=- 1)\n'
'str.split(sep=None, maxsplit=-1)\n'
'\n'
' Return a list of the words in the string, using *sep* '
'as the\n'
@ -12650,9 +12668,10 @@ topics = {'assert': 'The "assert" statement\n'
'the type matches some of the exceptions in the group. This means '
'that\n'
'multiple "except*" clauses can execute, each handling part of the\n'
'exception group. Each clause executes once and handles an exception\n'
'group of all matching exceptions. Each exception in the group is\n'
'handled by at most one "except*" clause, the first that matches it.\n'
'exception group. Each clause executes at most once and handles an\n'
'exception group of all matching exceptions. Each exception in the\n'
'group is handled by at most one "except*" clause, the first that\n'
'matches it.\n'
'\n'
' >>> try:\n'
' ... raise ExceptionGroup("eg",\n'
@ -12673,20 +12692,31 @@ topics = {'assert': 'The "assert" statement\n'
' | ValueError: 1\n'
' +------------------------------------\n'
'\n'
' Any remaining exceptions that were not handled by any '
':keyword:`!except*`\n'
' clause are re-raised at the end, combined into an exception group '
'along with\n'
' all exceptions that were raised from within :keyword:`!except*` '
'clauses.\n'
'Any remaining exceptions that were not handled by any "except*" '
'clause\n'
'are re-raised at the end, combined into an exception group along '
'with\n'
'all exceptions that were raised from within "except*" clauses.\n'
'\n'
' An :keyword:`!except*` clause must have a matching type,\n'
' and this type cannot be a subclass of :exc:`BaseExceptionGroup`.\n'
' It is not possible to mix :keyword:`except` and '
':keyword:`!except*`\n'
' in the same :keyword:`try`.\n'
' :keyword:`break`, :keyword:`continue` and :keyword:`return`\n'
' cannot appear in an :keyword:`!except*` clause.\n'
'If the raised exception is not an exception group and its type '
'matches\n'
'one of the "except*" clauses, it is caught and wrapped by an '
'exception\n'
'group with an empty message string.\n'
'\n'
' >>> try:\n'
' ... raise BlockingIOError\n'
' ... except* BlockingIOError as e:\n'
' ... print(repr(e))\n'
' ...\n'
" ExceptionGroup('', (BlockingIOError()))\n"
'\n'
'An "except*" clause must have a matching type, and this type cannot '
'be\n'
'a subclass of "BaseExceptionGroup". It is not possible to mix '
'"except"\n'
'and "except*" in the same "try". "break", "continue" and "return"\n'
'cannot appear in an "except*" clause.\n'
'\n'
'\n'
'"else" clause\n'
@ -13947,17 +13977,11 @@ topics = {'assert': 'The "assert" statement\n'
'dictionaries or\n'
'other mutable types (that are compared by value rather than '
'by object\n'
'identity) may not be used as keys. Numeric types used for '
'keys obey\n'
'the normal rules for numeric comparison: if two numbers '
'compare equal\n'
'(such as "1" and "1.0") then they can be used '
'interchangeably to index\n'
'the same dictionary entry. (Note however, that since '
'computers store\n'
'floating-point numbers as approximations it is usually '
'unwise to use\n'
'them as dictionary keys.)\n'
'identity) may not be used as keys. Values that compare equal '
'(such as\n'
'"1", "1.0", and "True") can be used interchangeably to index '
'the same\n'
'dictionary entry.\n'
'\n'
'class dict(**kwargs)\n'
'class dict(mapping, **kwargs)\n'

1545
Misc/NEWS.d/3.11.1.rst Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,3 +0,0 @@
Updated pegen regeneration script on Windows to find and use Python 3.9 or
higher. Prior to this, pegen regeneration already required 3.9 or higher,
but the script may have used lower versions of Python.

View file

@ -1,3 +0,0 @@
``wasm32-emscripten`` platform no longer builds :mod:`resource` module,
:func:`~os.getresuid`, :func:`~os.getresgid`, and their setters. The APIs
are stubs and not functional.

View file

@ -1,2 +0,0 @@
``wasm32-emscripten`` builds for browsers now include
:mod:`concurrent.futures` for :mod:`asyncio` and :mod:`unittest.mock`.

View file

@ -1,2 +0,0 @@
Fix the build process of clang compiler for :program:`_bootstrap_python` if
LTO optimization is applied. Patch by Matthias Görgens and Dong-hee Na.

View file

@ -1,4 +0,0 @@
Don't use vendored ``libmpdec`` headers if :option:`--with-system-libmpdec`
is passed to :program:`configure`.
Don't use vendored ``libexpat`` headers if :option:`--with-system-expat`
is passed to :program:`!configure`.

View file

@ -1,2 +0,0 @@
Specify the full path to the source location for ``make docclean`` (needed for
cross-builds).

View file

@ -1 +0,0 @@
Fix build with ``PYTHON_FOR_REGEN=python3.8``.

View file

@ -1 +0,0 @@
Fix a possible fd leak in ``Programs/_freeze_module.c`` introduced in Python 3.11.

View file

@ -1 +0,0 @@
Fix ``-Wimplicit-int`` compiler warning in :program:`configure` check for ``PTHREAD_SCOPE_SYSTEM``.

View file

@ -1 +0,0 @@
Fix a compilation issue with GCC 12 on macOS.

View file

@ -1 +0,0 @@
Fix ``-Wimplicit-int``, ``-Wstrict-prototypes``, and ``-Wimplicit-function-declaration`` compiler warnings in :program:`configure` checks.

View file

@ -1,4 +0,0 @@
``Py_InitializeEx`` now correctly calls ``PyConfig_Clear`` after initializing
the interpreter (the omission didn't cause a memory leak only because none
of the dynamically allocated config fields are populated by the wrapper
function)

View file

@ -1,3 +0,0 @@
Fix use-after-free in ``Py_SetPythonHome(NULL)``,
``Py_SetProgramName(NULL)`` and ``_Py_SetProgramFullPath(NULL)`` function
calls. Issue reported by Benedikt Reinartz. Patch by Victor Stinner.

View file

@ -1,3 +0,0 @@
``PyBUF_*`` constants were marked as part of Limited API of Python 3.11+.
These were available in 3.11.0 with :c:macro:`Py_LIMITED_API` defined for
3.11, and are necessary to use the buffer API.

View file

@ -1,2 +0,0 @@
Fix a possible assertion failure in :class:`io.FileIO` when the opener
returns an invalid file descriptor.

View file

@ -1,3 +0,0 @@
Raise :exc:`ValueError` instead of :exc:`SystemError` when methods of
uninitialized :class:`io.IncrementalNewlineDecoder` objects are called.
Patch by Oren Milman.

View file

@ -1 +0,0 @@
Allow :mod:`pdb` to locate source for frozen modules in the standard library.

View file

@ -1,4 +0,0 @@
On WASI :data:`~errno.ENOTCAPABLE` is now mapped to :exc:`PermissionError`.
The :mod:`errno` modules exposes the new error number. ``getpath.py`` now
ignores :exc:`PermissionError` when it cannot open landmark files
``pybuilddir.txt`` and ``pyenv.cfg``.

View file

@ -1 +0,0 @@
Disable incorrect pickling of the C implemented classmethod descriptors.

View file

@ -1,3 +0,0 @@
Make sure that all frame objects created are created from valid interpreter
frames. Prevents the possibility of invalid frames in backtraces and signal
handlers.

View file

@ -1 +0,0 @@
Fix undefined behaviour in C code of null pointer arithmetic.

View file

@ -1,2 +0,0 @@
Fix a possible assertion failure, fatal error, or :exc:`SystemError` if a
line tracing event raises an exception while opcode tracing is enabled.

View file

@ -1,5 +0,0 @@
At Python exit, sometimes a thread holding the GIL can wait forever for a
thread (usually a daemon thread) which requested to drop the GIL, whereas
the thread already exited. To fix the race condition, the thread which
requested the GIL drop now resets its request before exiting. Issue
discovered and analyzed by Mingliang ZHAO. Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
Fix overly-broad source position information for chained comparisons used as
branching conditions.

View file

@ -1,4 +0,0 @@
Fix the Python path configuration used to initialized :data:`sys.path` at
Python startup. Paths are no longer encoded to UTF-8/strict to avoid encoding
errors if it contains surrogate characters (bytes paths are decoded with the
surrogateescape error handler). Patch by Victor Stinner.

View file

@ -1,2 +0,0 @@
Fixed a missing incref/decref pair in ``Exception.__setstate__()``.
Patch by Ofey Chan.

View file

@ -1 +0,0 @@
Ensure that all Python frame objects are backed by "complete" frames.

View file

@ -1,2 +0,0 @@
Bugfix: :func:`PyFunction_GetAnnotations` should return a borrowed
reference. It was returning a new reference.

View file

@ -1,2 +0,0 @@
Fix an issue that could delay the specialization of :opcode:`PRECALL`
instructions.

View file

@ -1,2 +0,0 @@
:func:`os.sched_yield` now release the GIL while calling sched_yield(2).
Patch by Dong-hee Na.

View file

@ -1,2 +0,0 @@
Print exception class name instead of its string representation when raising
errors from :mod:`ctypes` calls.

View file

@ -1 +0,0 @@
Fix detection of MAC addresses for :mod:`uuid` on certain OSs. Patch by Chaim Sanders

View file

@ -1,2 +0,0 @@
Suppress ImportError for invalid query for help() command. Patch by Dong-hee
Na.

View file

@ -1,3 +0,0 @@
Fix an issue where member descriptors (such as those for
:attr:`~object.__slots__`) could behave incorrectly or crash instead of
raising a :exc:`TypeError` when accessed via an instance of an invalid type.

View file

@ -1,2 +0,0 @@
Fix multiple crashes in debug mode when ``str`` subclasses
are used instead of ``str`` itself.

View file

@ -1,2 +0,0 @@
Lower the recursion depth for marshal on WASI to support
wasmtime 2.0/main.

View file

@ -1,4 +0,0 @@
Fix subscription of type aliases containing bare generic types or types like
:class:`~typing.TypeVar`: for example ``tuple[A, T][int]`` and
``tuple[TypeVar, T][int]``, where ``A`` is a generic type, and ``T`` is a
type variable.

View file

@ -1,2 +0,0 @@
Fix the error reporting positions of specialized traceback anchors when the
source line contains Unicode characters.

View file

@ -1 +0,0 @@
Fix location of :exc:`SyntaxError` for a :keyword:`try` block with both :keyword:`except` and :keyword:`except* <except_star>`.

View file

@ -1,2 +0,0 @@
Update :mod:`faulthandler` to emit an error message with the proper
unexpected signal number. Patch by Dong-hee Na.

View file

@ -1,4 +0,0 @@
Fix calculation of :data:`sys._base_executable` when inside a POSIX virtual
environment using copies of the python binary when the base installation does
not provide the executable name used by the venv. Calculation will fall back to
alternative names ("python<MAJOR>", "python<MAJOR>.<MINOR>").

View file

@ -1 +0,0 @@
Fix failure in :keyword:`except* <except_star>` with unhashable exceptions.

View file

@ -1,2 +0,0 @@
Fix an issue that prevented :c:type:`PyThreadState` and
:c:type:`PyInterpreterState` memory from being freed properly.

View file

@ -1,2 +0,0 @@
Fix an issue that could potentially cause incorrect error handling for some
bytecode instructions.

View file

@ -1,2 +0,0 @@
Fix zip path for venv created from a non-installed python on POSIX
platforms.

View file

@ -1,2 +0,0 @@
Fix bug where an :exc:`ExceptionGroup` subclass can wrap a
:exc:`BaseException`.

View file

@ -1,3 +0,0 @@
Fixed a bug that was causing a buffer overflow if the tokenizer copies a
line missing the newline caracter from a file that is as long as the
available tokenizer buffer. Patch by Pablo galindo

View file

@ -1,3 +0,0 @@
Fix a reference bug in :func:`_imp.create_builtin()` after the creation of the
first sub-interpreter for modules ``builtins`` and ``sys``. Patch by Victor
Stinner.

View file

@ -1,3 +0,0 @@
Fix an issue that could cause frames to be visible to Python code as they
are being torn down, possibly leading to memory corruption or hard crashes
of the interpreter.

View file

@ -1,3 +0,0 @@
Fix a bug in the tokenizer that could cause infinite recursion when showing
syntax warnings that happen in the first line of the source. Patch by Pablo
Galindo

View file

@ -1 +0,0 @@
Fix a crash when an object which does not have a dictionary frees its instance values.

View file

@ -1,3 +0,0 @@
Restructured the documentation for the :func:`os.wait* <os.wait>` family of functions,
and improved the docs for :func:`os.waitid` with more explanation of the
possible argument constants.

View file

@ -1,6 +0,0 @@
Clarified the conflicting advice given in the :mod:`ast` documentation about
:func:`ast.literal_eval` being "safe" for use on untrusted input while at
the same time warning that it can crash the process. The latter statement is
true and is deemed unfixable without a large amount of work unsuitable for a
bugfix. So we keep the warning and no longer claim that ``literal_eval`` is
safe.

View file

@ -1 +0,0 @@
Document that calling variadic functions with ctypes requires special care on macOS/arm64 (and possibly other platforms).

View file

@ -1,3 +0,0 @@
Fix a bug in the previous bugfix that caused IDLE to not start when run with
3.10.8, 3.12.0a1, and at least Microsoft Python 3.10.2288.0 installed
without the Lib/test package. 3.11.0 was never affected.

View file

@ -1 +0,0 @@
Fix IndexError in :class:`argparse.ArgumentParser` when a ``store_true`` action is given an explicit argument.

View file

@ -1,2 +0,0 @@
:func:`shutil.copytree` now applies the *ignore_dangling_symlinks* argument
recursively.

View file

@ -1 +0,0 @@
Restrict use of sockets instead of pipes for stdin of subprocesses created by :mod:`asyncio` to AIX platform only.

View file

@ -1,2 +0,0 @@
Document the optional *callback* parameter of :class:`WeakMethod`. Patch by
Géry Ogam.

View file

@ -1 +0,0 @@
:meth:`TarFile.next` now returns ``None`` when called on an empty tarfile.

View file

@ -1 +0,0 @@
Prevent error when activating venv in nested fish instances.

View file

@ -1 +0,0 @@
Fix :mod:`asyncio` subprocess transport to kill process cleanly when process is blocked and avoid ``RuntimeError`` when loop is closed. Patch by Kumar Aditya.

View file

@ -1 +0,0 @@
Fixed flickering of the turtle window when the tracer is turned off. Patch by Shin-myoung-serp.

View file

@ -1,3 +0,0 @@
To avoid apparent memory leaks when :func:`asyncio.open_connection` raises,
break reference cycles generated by local exception and future instances
(which has exception instance as its member var). Patch by Dong Uk, Kang.

View file

@ -1,4 +0,0 @@
Fix handling compiler warnings (SyntaxWarning and DeprecationWarning) in
:func:`codeop.compile_command` when checking for incomplete input.
Previously it emitted warnings and raised a SyntaxError. Now it always
returns ``None`` for incomplete input without emitting any warnings.

View file

@ -1 +0,0 @@
Fix handling of ``bytes`` :term:`path-like objects <path-like object>` in :func:`os.ismount()`.

View file

@ -1 +0,0 @@
In :mod:`inspect`, fix overeager replacement of "``typing.``" in formatting annotations.

View file

@ -1,2 +0,0 @@
Work around missing socket functions in :class:`~socket.socket`'s
``__repr__``.

View file

@ -1 +0,0 @@
Fix ``repr`` of ``Any`` subclasses.

View file

@ -1 +0,0 @@
Corrected type annotation for dataclass attribute ``pstats.FunctionProfile.ncalls`` to be ``str``.

View file

@ -1 +0,0 @@
Fixed check in :mod:`multiprocessing.resource_tracker` that guarantees that the length of a write to a pipe is not greater than ``PIPE_BUF``.

View file

@ -1 +0,0 @@
Fix race condition in :mod:`asyncio` where :meth:`~asyncio.SubprocessProtocol.process_exited` called before the :meth:`~asyncio.SubprocessProtocol.pipe_data_received` leading to inconsistent output. Patch by Kumar Aditya.

View file

@ -1 +0,0 @@
Update bundled libexpat to 2.4.9

View file

@ -1,4 +0,0 @@
Fix generation of the default name of :class:`tkinter.Checkbutton`.
Previously, checkbuttons in different parent widgets could have the same
short name and share the same state if arguments "name" and "variable" are
not specified. Now they are globally unique.

View file

@ -1 +0,0 @@
Remove ``tokenize.NL`` check from :mod:`tabnanny`.

View file

@ -1 +0,0 @@
Avoid a crash in the C version of :meth:`asyncio.Future.remove_done_callback` when an evil argument is passed.

View file

@ -1 +0,0 @@
Avoid spurious tracebacks from :mod:`asyncio` when default executor cleanup is delayed until after the event loop is closed (e.g. as the result of a keyboard interrupt).

View file

@ -1 +0,0 @@
Fix :attr:`~ipaddress.IPv4Address.is_private` properties in the :mod:`ipaddress` module. Previously non-private networks (0.0.0.0/0) would return True from this method; now they correctly return False.

View file

@ -1 +0,0 @@
Fixes :exc:`AttributeError` when :meth:`subprocess.check_output` is used with argument ``input=None`` and either of the arguments *encoding* or *errors* are used.

View file

@ -1,7 +0,0 @@
Change deprecate warning message in :mod:`unittest` from
``It is deprecated to return a value!=None``
to
``It is deprecated to return a value that is not None from a test case``

View file

@ -1 +0,0 @@
Earlier in 3.11 we deprecated ``asyncio.Task.cancel("message")``. We realized we were too harsh, and have undeprecated it.

View file

@ -1 +0,0 @@
Make sure ``patch.dict()`` can be applied on async functions.

View file

@ -1,3 +0,0 @@
Wrap network errors consistently in urllib FTP support, so the test suite
doesn't fail when a network is available but the public internet is not
reachable.

View file

@ -1 +0,0 @@
Allow ``BUILTINS`` to be a valid field name for frozen dataclasses.

View file

@ -1,4 +0,0 @@
On macOS, fix a crash in :func:`syslog.syslog` in multi-threaded applications.
On macOS, the libc ``syslog()`` function is not thread-safe, so
:func:`syslog.syslog` no longer releases the GIL to call it. Patch by Victor
Stinner.

View file

@ -1,2 +0,0 @@
Allow :mod:`venv` to pass along :envvar:`PYTHON*` variables to ``ensurepip`` and ``pip`` when
they do not impact path resolution

View file

@ -1,3 +0,0 @@
Fix bug in :func:`urllib.parse.urlparse` that causes certain port numbers
containing whitespace, underscores, plus and minus signs, or non-ASCII digits to be
incorrectly accepted.

View file

@ -1,2 +0,0 @@
A :meth:`~logging.handlers.SysLogHandler.createSocket` method was added to
:class:`~logging.handlers.SysLogHandler`.

View file

@ -1,2 +0,0 @@
On ``uname_result``, restored expectation that ``_fields`` and ``_asdict``
would include all six properties including ``processor``.

View file

@ -1,2 +0,0 @@
:meth:`tkinter.Text.count` raises now an exception for options starting with
"-" instead of silently ignoring them.

View file

@ -1 +0,0 @@
Fix infinite loop in unittest when a self-referencing chained exception is raised

View file

@ -1 +0,0 @@
Fix hang on Windows in ``subprocess.wait_closed()`` in :mod:`asyncio` with :class:`~asyncio.ProactorEventLoop`. Patch by Kumar Aditya.

View file

@ -1,2 +0,0 @@
Add a mutex to unittest.mock.NonCallableMock to protect concurrent access
to mock attributes.

View file

@ -1,2 +0,0 @@
Fix :meth:`asyncio.StreamWriter.drain` to call ``protocol.connection_lost``
callback only once on Windows.

View file

@ -1,3 +0,0 @@
Fix internal error in the :mod:`re` module which in very rare circumstances
prevented compilation of a regular expression containing a :ref:`conditional
expression <re-conditional-expression>` without the "else" branch.

View file

@ -1,2 +0,0 @@
Prevent crashing in :mod:`traceback` when retrieving the byte-offset for
some source files that contain certain unicode characters.

Some files were not shown because too many files have changed in this diff Show more