Back to Cpython

3.8.0a1

Misc/NEWS.d/3.8.0a1.rst

3.15.0a8182.7 KB
Original Source

.. bpo: 35746 .. date: 2019-01-15-18-16-05 .. nonce: nMSd0j .. release date: 2019-02-03 .. section: Security

:cve:2019-5010: Fix a NULL pointer deref in ssl module. The cert parser did not handle CRL distribution points with empty DP or URI correctly. A malicious or buggy certificate can result into segfault. Vulnerability (TALOS-2018-0758) reported by Colin Read and Nicolas Edet of Cisco.

..

.. bpo: 34812 .. date: 2018-11-23-15-00-23 .. nonce: 84VQnb .. section: Security

The :option:-I command line option (run Python in isolated mode) is now also copied by the :mod:multiprocessing and distutils modules when spawning child processes. Previously, only :option:-E and :option:-s options (enabled by :option:-I) were copied.

..

.. bpo: 34791 .. date: 2018-09-24-18-49-25 .. nonce: 78GmIG .. section: Security

The xml.sax and xml.dom.domreg no longer use environment variables to override parser implementations when sys.flags.ignore_environment is set by -E or -I arguments.

..

.. bpo: 17239 .. date: 2018-09-11-18-30-55 .. nonce: kOpwK2 .. section: Security

The xml.sax and xml.dom.minidom parsers no longer processes external entities by default. External DTD and ENTITY declarations no longer load files or create network connections.

..

.. bpo: 34623 .. date: 2018-09-10-16-05-39 .. nonce: Ua9jMv .. section: Security

:cve:2018-14647: The C accelerated _elementtree module now initializes hash randomization salt from _Py_HashSecret instead of libexpat's default CSPRNG.

..

.. bpo: 34405 .. date: 2018-08-15-12-12-47 .. nonce: qbHTH_ .. section: Security

Updated to OpenSSL 1.1.0i for Windows builds.

..

.. bpo: 33871 .. date: 2018-06-26-19-35-33 .. nonce: S4HR9n .. section: Security

Fixed sending the part of the file in :func:os.sendfile on macOS. Using the trailers argument could cause sending more bytes from the input file than was specified.

..

.. bpo: 32533 .. date: 2018-05-28-08-55-30 .. nonce: IzwkBI .. section: Security

Fixed thread-safety of error handling in _ssl.

..

.. bpo: 33136 .. date: 2018-03-25-12-05-43 .. nonce: TzSN4x .. section: Security

Harden ssl module against LibreSSL :cve:2018-8970. X509_VERIFY_PARAM_set1_host() is called with an explicit namelen. A new test ensures that NULL bytes are not allowed.

..

.. bpo: 33001 .. date: 2018-03-05-10-09-51 .. nonce: elj4Aa .. section: Security

Minimal fix to prevent buffer overrun in os.symlink on Windows

..

.. bpo: 32981 .. date: 2018-03-02-10-24-52 .. nonce: O_qDyj .. section: Security

Regexes in difflib and poplib were vulnerable to catastrophic backtracking. These regexes formed potential DOS vectors (REDOS). They have been refactored. This resolves :cve:2018-1060 and :cve:2018-1061. Patch by Jamie Davis.

..

.. bpo: 28414 .. date: 2017-08-06-14-43-45 .. nonce: mzZ6vD .. section: Security

The ssl module now allows users to perform their own IDN en/decoding when using SNI.

..

.. bpo: 35877 .. date: 2019-02-01-22-38-11 .. nonce: Jrse8f .. section: Core and Builtins

Make parenthesis optional for named expressions in while statement. Patch by Karthikeyan Singaravelan.

..

.. bpo: 35814 .. date: 2019-01-24-13-25-21 .. nonce: r_MjA6 .. section: Core and Builtins

Allow same right hand side expressions in annotated assignments as in normal ones. In particular, x: Tuple[int, int] = 1, 2 (without parentheses on the right) is now allowed.

..

.. bpo: 35766 .. date: 2019-01-22-19-17-27 .. nonce: gh1tHZ .. section: Core and Builtins

Add the option to parse PEP 484 type comments in the ast module. (Off by default.) This is merging the key functionality of the third party fork thereof, typed_ast.

..

.. bpo: 35713 .. date: 2019-01-22-18-50-21 .. nonce: bTeUsa .. section: Core and Builtins

Reorganize Python initialization to get working exceptions and sys.stderr earlier.

..

.. bpo: 33416 .. date: 2019-01-19-19-41-53 .. nonce: VDeOU5 .. section: Core and Builtins

Add end line and end column position information to the Python AST nodes. This is a C-level backwards incompatible change.

..

.. bpo: 35720 .. date: 2019-01-12-23-33-04 .. nonce: LELKQx .. section: Core and Builtins

Fixed a minor memory leak in pymain_parse_cmdline_impl function in Modules/main.c

..

.. bpo: 35634 .. date: 2019-01-05-18-39-49 .. nonce: nVP_gs .. section: Core and Builtins

func(**kwargs) will now raise an error when kwargs is a mapping containing multiple entries with the same key. An error was already raised when other keyword arguments are passed before **kwargs since Python 3.6.

..

.. bpo: 35623 .. date: 2018-12-31-02-37-20 .. nonce: 24AQhY .. section: Core and Builtins

Fix a crash when sorting very long lists. Patch by Stephan Hohe.

..

.. bpo: 35214 .. date: 2018-12-30-15-36-23 .. nonce: GWDQcv .. section: Core and Builtins

clang Memory Sanitizer build instrumentation was added to work around false positives from posix, socket, time, test_io, and test_faulthandler.

..

.. bpo: 35560 .. date: 2018-12-22-22-19-51 .. nonce: 9vMWSP .. section: Core and Builtins

Fix an assertion error in :func:format in debug build for floating-point formatting with "n" format, zero padding and small width. Release build is not impacted. Patch by Karthikeyan Singaravelan.

..

.. bpo: 35552 .. date: 2018-12-21-13-29-30 .. nonce: 1DzQQc .. section: Core and Builtins

Format characters %s and %V in :c:func:PyUnicode_FromFormat and %s in :c:func:PyBytes_FromFormat no longer read memory past the limit if precision is specified.

..

.. bpo: 35504 .. date: 2018-12-15-14-01-45 .. nonce: JtKczP .. section: Core and Builtins

Fix segfaults and :exc:SystemError\ s when deleting certain attributes. Patch by Zackery Spytz.

..

.. bpo: 35504 .. date: 2018-12-15-00-47-41 .. nonce: 9gVuen .. section: Core and Builtins

Fixed a SystemError when delete the characters_written attribute of an OSError.

..

.. bpo: 35494 .. date: 2018-12-14-18-02-34 .. nonce: IWOPtb .. section: Core and Builtins

Improved syntax error messages for unbalanced parentheses in f-string.

..

.. bpo: 35444 .. date: 2018-12-09-13-09-39 .. nonce: 9kYn4V .. section: Core and Builtins

Fixed error handling in pickling methods when fail to look up builtin "getattr". Sped up pickling iterators.

..

.. bpo: 35436 .. date: 2018-12-07-02-38-01 .. nonce: 0VW7p9 .. section: Core and Builtins

Fix various issues with memory allocation error handling. Patch by Zackery Spytz.

..

.. bpo: 35423 .. date: 2018-12-05-16-24-05 .. nonce: UIie_O .. section: Core and Builtins

Separate the signal handling trigger in the eval loop from the "pending calls" machinery. There is no semantic change and the difference in performance is insignificant.

..

.. bpo: 35357 .. date: 2018-12-03-21-20-24 .. nonce: rhhoiC .. section: Core and Builtins

Internal attributes' names of unittest.mock._Call and unittest.mock.MagicProxy (name, parent & from_kall) are now prefixed with mock in order to prevent clashes with widely used object attributes. Fixed minor typo in test function name.

..

.. bpo: 35372 .. date: 2018-12-01-19-20-53 .. nonce: RwVJjZ .. section: Core and Builtins

Fixed the code page decoder for input longer than 2 GiB containing undecodable bytes.

..

.. bpo: 35336 .. date: 2018-11-29-23-59-52 .. nonce: 8LOz4F .. section: Core and Builtins

Fix PYTHONCOERCECLOCALE=1 environment variable: only coerce the C locale if the LC_CTYPE locale is "C".

..

.. bpo: 31241 .. date: 2018-11-21-14-05-51 .. nonce: Kin10- .. section: Core and Builtins

The lineno and col_offset attributes of AST nodes for list comprehensions, generator expressions and tuples are now point to the opening parenthesis or square brace. For tuples without parenthesis they point to the position of the first item.

..

.. bpo: 33954 .. date: 2018-11-20-22-33-38 .. nonce: RzSngM .. section: Core and Builtins

For :meth:str.format, :meth:float.__format__ and :meth:complex.__format__ methods for non-ASCII decimal point when using the "n" formatter.

..

.. bpo: 35269 .. date: 2018-11-17-10-18-29 .. nonce: gjm1LO .. section: Core and Builtins

Fix a possible segfault involving a newly created coroutine. Patch by Zackery Spytz.

..

.. bpo: 35224 .. date: 2018-11-13-14-26-54 .. nonce: F0B6UQ .. section: Core and Builtins

Implement :pep:572 (assignment expressions). Patch by Emily Morehouse.

..

.. bpo: 32492 .. date: 2018-11-13-01-03-10 .. nonce: voIdcp .. section: Core and Builtins

Speed up :func:namedtuple attribute access by 1.6x using a C fast-path for the name descriptors. Patch by Pablo Galindo.

..

.. bpo: 35214 .. date: 2018-11-13-00-40-35 .. nonce: OQBjph .. section: Core and Builtins

Fixed an out of bounds memory access when parsing a truncated unicode escape sequence at the end of a string such as '\N'. It would read one byte beyond the end of the memory allocation.

..

.. bpo: 35214 .. date: 2018-11-12-11-38-06 .. nonce: PCHKbX .. section: Core and Builtins

The interpreter and extension modules have had annotations added so that they work properly under clang's Memory Sanitizer. A new configure flag --with-memory-sanitizer has been added to make test builds of this nature easier to perform.

..

.. bpo: 35193 .. date: 2018-11-08-15-00-58 .. nonce: HzPS6R .. section: Core and Builtins

Fix an off by one error in the bytecode peephole optimizer where it could read bytes beyond the end of bounds of an array when removing unreachable code. This bug was present in every release of Python 3.6 and 3.7 until now.

..

.. bpo: 35169 .. date: 2018-11-05-21-19-05 .. nonce: _FyPI2 .. section: Core and Builtins

Improved error messages for forbidden assignments.

..

.. bpo: 34022 .. date: 2018-11-04-18-13-40 .. nonce: U3btVj .. section: Core and Builtins

Fix handling of hash-based bytecode files in :mod:zipimport. Patch by Elvis Pranskevichus.

..

.. bpo: 28401 .. date: 2018-11-03-10-37-29 .. nonce: RprDIg .. section: Core and Builtins

Debug builds will no longer to attempt to import extension modules built for the ABI as they were never compatible to begin with. Patch by Stefano Rivera.

..

.. bpo: 29341 .. date: 2018-10-25-20-53-32 .. nonce: jH-AMF .. section: Core and Builtins

Clarify in the docstrings of :mod:os methods that path-like objects are also accepted as input parameters.

..

.. bpo: 35050 .. date: 2018-10-23-15-03-53 .. nonce: 49wraS .. section: Core and Builtins

:mod:socket: Fix off-by-one bug in length check for AF_ALG name and type.

..

.. bpo: 29743 .. date: 2018-10-21-17-43-48 .. nonce: aeCcKR .. section: Core and Builtins

Raise :exc:ValueError instead of :exc:OverflowError in case of a negative _length_ in a :class:ctypes.Array subclass. Also raise :exc:TypeError instead of :exc:AttributeError for non-integer _length_. Original patch by Oren Milman.

..

.. bpo: 16806 .. date: 2018-10-20-18-05-58 .. nonce: zr3A9N .. section: Core and Builtins

Fix lineno and col_offset for multi-line string tokens.

..

.. bpo: 35029 .. date: 2018-10-20-10-26-15 .. nonce: t4tZcQ .. section: Core and Builtins

:exc:SyntaxWarning raised as an exception at code generation time will be now replaced with a :exc:SyntaxError for better error reporting.

..

.. bpo: 34983 .. date: 2018-10-14-17-26-41 .. nonce: l8XaZd .. section: Core and Builtins

Expose :meth:symtable.Symbol.is_nonlocal in the symtable module. Patch by Pablo Galindo.

..

.. bpo: 34974 .. date: 2018-10-13-22-24-19 .. nonce: 7LgTc2 .. section: Core and Builtins

:class:bytes and :class:bytearray constructors no longer convert unexpected exceptions (e.g. :exc:MemoryError and :exc:KeyboardInterrupt) to :exc:TypeError.

..

.. bpo: 34939 .. date: 2018-10-13-17-40-15 .. nonce: 0gpxlJ .. section: Core and Builtins

Allow annotated names in module namespace that are declared global before the annotation happens. Patch by Pablo Galindo.

..

.. bpo: 34973 .. date: 2018-10-13-16-42-03 .. nonce: B5M-3g .. section: Core and Builtins

Fixed crash in :func:bytes when the :class:list argument is mutated while it is iterated.

..

.. bpo: 34876 .. date: 2018-10-06-14-02-51 .. nonce: oBKBA4 .. section: Core and Builtins

The lineno and col_offset attributes of the AST for decorated function and class refer now to the position of the corresponding def, async def and class instead of the position of the first decorator. This leads to more correct line reporting in tracing. This is the only case when the position of child AST nodes can precede the position of the parent AST node.

..

.. bpo: 34879 .. date: 2018-10-02-22-55-11 .. nonce: 7VNH2a .. section: Core and Builtins

Fix a possible null pointer dereference in bytesobject.c. Patch by Zackery Spytz.

..

.. bpo: 34784 .. date: 2018-10-02-09-10-47 .. nonce: 07hdgD .. section: Core and Builtins

Fix the implementation of PyStructSequence_NewType in order to create heap allocated StructSequences.

..

.. bpo: 32912 .. date: 2018-10-01-10-41-53 .. nonce: JeIOdM .. section: Core and Builtins

A :exc:SyntaxWarning is now emitted instead of a :exc:DeprecationWarning for invalid escape sequences in string and bytes literals.

..

.. bpo: 34854 .. date: 2018-09-30-19-27-13 .. nonce: 6TKTcB .. section: Core and Builtins

Fixed a crash in compiling string annotations containing a lambda with a keyword-only argument that doesn't have a default value.

..

.. bpo: 34850 .. date: 2018-09-30-11-19-55 .. nonce: CbgDwb .. section: Core and Builtins

The compiler now produces a :exc:SyntaxWarning when identity checks (is and is not) are used with certain types of literals (e.g. strings, ints). These can often work by accident in CPython, but are not guaranteed by the language spec. The warning advises users to use equality tests (== and !=) instead.

..

.. bpo: 34824 .. date: 2018-09-27-11-10-02 .. nonce: VLlCaU .. section: Core and Builtins

Fix a possible null pointer dereference in Modules/_ssl.c. Patch by Zackery Spytz.

..

.. bpo: 30156 .. date: 2018-09-24-17-51-15 .. nonce: pH0j5j .. section: Core and Builtins

The C function property_descr_get() uses a "cached" tuple to optimize function calls. But this tuple can be discovered in debug mode with :func:sys.getobjects. Remove the optimization, it's not really worth it and it causes 3 different crashes last years.

..

.. bpo: 34762 .. date: 2018-09-21-11-06-56 .. nonce: 1nN53m .. section: Core and Builtins

Fix contextvars C API to use PyObject* pointer types.

..

.. bpo: 34751 .. date: 2018-09-20-15-41-58 .. nonce: Yiv0pV .. section: Core and Builtins

The hash function for tuples is now based on xxHash which gives better collision results on (formerly) pathological cases. Additionally, on 64-bit systems it improves tuple hashes in general. Patch by Jeroen Demeyer with substantial contributions by Tim Peters.

..

.. bpo: 34735 .. date: 2018-09-19-06-57-34 .. nonce: -3mrSJ .. section: Core and Builtins

Fix a memory leak in Modules/timemodule.c. Patch by Zackery Spytz.

..

.. bpo: 34683 .. date: 2018-09-15-19-32-34 .. nonce: msCiQE .. section: Core and Builtins

Fixed a bug where some SyntaxError error pointed to locations that were off-by-one.

..

.. bpo: 34651 .. date: 2018-09-13-12-21-08 .. nonce: v-bUeV .. section: Core and Builtins

Only allow the main interpreter to fork. The avoids the possibility of affecting the main interpreter, which is critical to operation of the runtime.

..

.. bpo: 34653 .. date: 2018-09-13-12-06-09 .. nonce: z8NE-i .. section: Core and Builtins

Remove unused function PyParser_SimpleParseStringFilename.

..

.. bpo: 32236 .. date: 2018-09-11-23-50-40 .. nonce: 3RupnN .. section: Core and Builtins

Warn that line buffering is not supported if :func:open is called with binary mode and buffering=1.

..

.. bpo: 34641 .. date: 2018-09-11-23-12-33 .. nonce: gFBCc9 .. section: Core and Builtins

Further restrict the syntax of the left-hand side of keyword arguments in function calls. In particular, f((keyword)=arg) is now disallowed.

..

.. bpo: 34637 .. date: 2018-09-11-17-25-44 .. nonce: HSLqY4 .. section: Core and Builtins

Make the start argument to sum() visible as a keyword argument.

..

.. bpo: 1621 .. date: 2018-09-11-15-19-37 .. nonce: 7o19yG .. section: Core and Builtins

Do not assume signed integer overflow behavior (C undefined behavior) when performing set hash table resizing.

..

.. bpo: 34588 .. date: 2018-09-05-22-56-52 .. nonce: UIuPmL .. section: Core and Builtins

Fix an off-by-one in the recursive call pruning feature of traceback formatting.

..

.. bpo: 34485 .. date: 2018-08-29-11-04-19 .. nonce: c2AFdp .. section: Core and Builtins

On Windows, the LC_CTYPE is now set to the user preferred locale at startup. Previously, the LC_CTYPE locale was "C" at startup, but changed when calling setlocale(LC_CTYPE, "") or setlocale(LC_ALL, "").

..

.. bpo: 34485 .. date: 2018-08-29-09-27-47 .. nonce: 5aJCmw .. section: Core and Builtins

Standard streams like sys.stdout now use the "surrogateescape" error handler, instead of "strict", on the POSIX locale (when the C locale is not coerced and the UTF-8 Mode is disabled).

..

.. bpo: 34485 .. date: 2018-08-28-23-01-14 .. nonce: dq1Kqk .. section: Core and Builtins

Fix the error handler of standard streams like sys.stdout: PYTHONIOENCODING=":" is now ignored instead of setting the error handler to "strict".

..

.. bpo: 34485 .. date: 2018-08-28-17-48-40 .. nonce: aFwck2 .. section: Core and Builtins

Python now gets the locale encoding with C code to initialize the encoding of standard streams like sys.stdout. Moreover, the encoding is now initialized to the Python codec name to get a normalized encoding name and to ensure that the codec is loaded. The change avoids importing _bootlocale and _locale modules at startup by default.

..

.. bpo: 34527 .. date: 2018-08-28-11-53-39 .. nonce: aBEX9b .. section: Core and Builtins

On FreeBSD, Py_DecodeLocale() and Py_EncodeLocale() now also forces the ASCII encoding if the LC_CTYPE locale is "POSIX", not only if the LC_CTYPE locale is "C".

..

.. bpo: 34527 .. date: 2018-08-28-11-52-13 .. nonce: sh5MQJ .. section: Core and Builtins

The UTF-8 Mode is now also enabled by the "POSIX" locale, not only by the "C" locale.

..

.. bpo: 34403 .. date: 2018-08-28-10-49-55 .. nonce: 4Q3LzP .. section: Core and Builtins

On HP-UX with C or POSIX locale, sys.getfilesystemencoding() now returns "ascii" instead of "roman8" (when the UTF-8 Mode is disabled and the C locale is not coerced).

..

.. bpo: 34523 .. date: 2018-08-28-01-45-01 .. nonce: aUUkc3 .. section: Core and Builtins

The Python filesystem encoding is now read earlier during the Python initialization.

..

.. bpo: 12458 .. date: 2018-08-15-20-46-49 .. nonce: ApHbx5 .. section: Core and Builtins

Tracebacks show now correct line number for subexpressions in multiline expressions. Tracebacks show now the line number of the first line for multiline expressions instead of the line number of the last subexpression.

..

.. bpo: 34408 .. date: 2018-08-14-22-35-19 .. nonce: aomWYW .. section: Core and Builtins

Prevent a null pointer dereference and resource leakage in PyInterpreterState_New().

..

.. bpo: 34400 .. date: 2018-08-14-03-52-43 .. nonce: AJD0bz .. section: Core and Builtins

Fix undefined behavior in parsetok.c. Patch by Zackery Spytz.

..

.. bpo: 33073 .. date: 2018-08-12-16-03-58 .. nonce: XWu1Jh .. section: Core and Builtins

Added as_integer_ratio to ints to make them more interoperable with floats.

..

.. bpo: 34377 .. date: 2018-08-10-15-05-00 .. nonce: EJMMY4 .. section: Core and Builtins

Update valgrind suppression list to use _PyObject_Free/_PyObject_Realloc instead of PyObject_Free/PyObject_Realloc.

..

.. bpo: 34353 .. date: 2018-08-09-18-42-49 .. nonce: GIOm_8 .. section: Core and Builtins

Added the "socket" option in the stat.filemode() Python implementation to match the C implementation.

..

.. bpo: 34320 .. date: 2018-08-02-22-34-59 .. nonce: hNshAA .. section: Core and Builtins

Fix dict(od) didn't copy iteration order of OrderedDict.

..

.. bpo: 34113 .. date: 2018-07-28-10-34-00 .. nonce: eZ5FWV .. section: Core and Builtins

Fixed crash on debug builds when opcode stack was adjusted with negative numbers. Patch by Constantin Petrisor.

..

.. bpo: 34100 .. date: 2018-07-27-20-04-52 .. nonce: ypJQX1 .. section: Core and Builtins

Compiler now merges constants in tuples and frozensets recursively. Code attributes like co_names are merged too.

..

.. bpo: 34151 .. date: 2018-07-25-20-26-02 .. nonce: Q2pK9Q .. section: Core and Builtins

Performance of list concatenation, repetition and slicing operations is slightly improved. Patch by Sergey Fedoseev.

..

.. bpo: 34170 .. date: 2018-07-25-19-23-33 .. nonce: v1h_H2 .. section: Core and Builtins

-X dev: it is now possible to override the memory allocator using PYTHONMALLOC even if the developer mode is enabled.

..

.. bpo: 33237 .. date: 2018-07-24-12-54-57 .. nonce: O95mps .. section: Core and Builtins

Improved :exc:AttributeError message for partially initialized module.

..

.. bpo: 34149 .. date: 2018-07-23-21-49-05 .. nonce: WSV-_g .. section: Core and Builtins

Fix min and max functions to get default behavior when key is None.

..

.. bpo: 34125 .. date: 2018-07-23-16-34-03 .. nonce: jCl2Q2 .. section: Core and Builtins

Profiling of unbound built-in methods now works when **kwargs is given.

..

.. bpo: 34141 .. date: 2018-07-18-08-36-58 .. nonce: Fo7Q5r .. section: Core and Builtins

Optimized pickling atomic types (None, bool, int, float, bytes, str).

..

.. bpo: 34126 .. date: 2018-07-16-20-55-29 .. nonce: mBVmgc .. section: Core and Builtins

Fix crashes when profiling certain invalid calls of unbound methods. Patch by Jeroen Demeyer.

..

.. bpo: 24618 .. date: 2018-07-14-14-01-37 .. nonce: iTKjD_ .. section: Core and Builtins

Fixed reading invalid memory when create the code object with too small varnames tuple or too large argument counts.

..

.. bpo: 34068 .. date: 2018-07-14-08-58-46 .. nonce: 9xfM55 .. section: Core and Builtins

In :meth:io.IOBase.close, ensure that the :attr:~io.IOBase.closed attribute is not set with a live exception. Patch by Zackery Spytz and Serhiy Storchaka.

..

.. bpo: 34087 .. date: 2018-07-13-22-09-55 .. nonce: I1Bxfc .. section: Core and Builtins

Fix buffer overflow while converting unicode to numeric values.

..

.. bpo: 34080 .. date: 2018-07-10-11-24-16 .. nonce: 8t7PtO .. section: Core and Builtins

Fixed a memory leak in the compiler when it raised some uncommon errors during tokenizing.

..

.. bpo: 34066 .. date: 2018-07-07-20-15-34 .. nonce: y9vs6s .. section: Core and Builtins

Disabled interruption by Ctrl-C between calling open() and entering a with block in with open().

..

.. bpo: 34042 .. date: 2018-07-05-15-51-29 .. nonce: Gr9XUH .. section: Core and Builtins

Fix dict.copy() to maintain correct total refcount (as reported by sys.gettotalrefcount()).

..

.. bpo: 33418 .. date: 2018-07-03-19-00-10 .. nonce: cfGm3n .. section: Core and Builtins

Fix potential memory leak in function object when it creates reference cycle.

..

.. bpo: 33985 .. date: 2018-06-27-18-56-41 .. nonce: ILJ3Af .. section: Core and Builtins

Implement contextvars.ContextVar.name attribute.

..

.. bpo: 33956 .. date: 2018-06-25-20-42-44 .. nonce: 1qoTwD .. section: Core and Builtins

Update vendored Expat library copy to version 2.2.5.

..

.. bpo: 24596 .. date: 2018-06-25-16-54-05 .. nonce: Rkwova .. section: Core and Builtins

Decref the module object in :c:func:PyRun_SimpleFileExFlags before calling :c:func:PyErr_Print(). Patch by Zackery Spytz.

..

.. bpo: 33451 .. date: 2018-06-23-15-32-02 .. nonce: sWN-1l .. section: Core and Builtins

Close directly executed pyc files before calling PyEval_EvalCode().

..

.. bpo: 1617161 .. date: 2018-06-21-21-42-15 .. nonce: tSo2yM .. section: Core and Builtins

The hash of :class:BuiltinMethodType instances (methods of built-in classes) now depends on the hash of the identity of self instead of its value. The hash and equality of :class:ModuleType and :class:MethodWrapperType instances (methods of user-defined classes and some methods of built-in classes like str.__add__) now depend on the hash and equality of the identity of self instead of its value. :class:MethodWrapperType instances no longer support ordering.

..

.. bpo: 33824 .. date: 2018-06-15-19-39-06 .. nonce: DfWHT3 .. section: Core and Builtins

Fix "LC_ALL=C python3.7 -V": reset properly the command line parser when the encoding changes after reading the Python configuration.

..

.. bpo: 33803 .. date: 2018-06-07-20-18-38 .. nonce: n-Nq6_ .. section: Core and Builtins

Fix a crash in hamt.c caused by enabling GC tracking for an object that hadn't all of its fields set to NULL.

..

.. bpo: 33738 .. date: 2018-06-07-18-34-19 .. nonce: ODZS7a .. section: Core and Builtins

Seven macro incompatibilities with the Limited API were fixed, and the macros :c:func:PyIter_Check, :c:func:PyIndex_Check and :c:func:PyExceptionClass_Name were added as functions. A script for automatic macro checks was added.

..

.. bpo: 33786 .. date: 2018-06-06-23-24-40 .. nonce: lBvT8z .. section: Core and Builtins

Fix asynchronous generators to handle GeneratorExit in athrow() correctly

..

.. bpo: 30167 .. date: 2018-06-05-15-49-02 .. nonce: e956hA .. section: Core and Builtins

PyRun_SimpleFileExFlags removes __cached__ from module in addition to __file__.

..

.. bpo: 33706 .. date: 2018-05-31-14-50-04 .. nonce: ztlH04 .. section: Core and Builtins

Fix a crash in Python initialization when parsing the command line options. Thanks Christoph Gohlke for the bug report and the fix!

..

.. bpo: 33597 .. date: 2018-05-28-21-17-31 .. nonce: r0ToM4 .. section: Core and Builtins

Reduce PyGC_Head size from 3 words to 2 words.

..

.. bpo: 30654 .. date: 2018-05-28-12-28-53 .. nonce: 9fDJye .. section: Core and Builtins

Fixed reset of the SIGINT handler to SIG_DFL on interpreter shutdown even when there was a custom handler set previously. Patch by Philipp Kerling.

..

.. bpo: 33622 .. date: 2018-05-23-20-46-14 .. nonce: xPucO9 .. section: Core and Builtins

Fixed a leak when the garbage collector fails to add an object with the __del__ method or referenced by it into the :data:gc.garbage list. :c:func:PyGC_Collect can now be called when an exception is set and preserves it.

..

.. bpo: 33462 .. date: 2018-05-23-17-18-02 .. nonce: gurbpbrhe .. section: Core and Builtins

Make dict and dict views reversible. Patch by Rémi Lapeyre.

..

.. bpo: 23722 .. date: 2018-05-17-13-06-36 .. nonce: xisqZk .. section: Core and Builtins

A :exc:RuntimeError is now raised when the custom metaclass doesn't provide the __classcell__ entry in the namespace passed to type.__new__. A :exc:DeprecationWarning was emitted in Python 3.6--3.7.

..

.. bpo: 33499 .. date: 2018-05-15-10-48-47 .. nonce: uBEc06 .. section: Core and Builtins

Add :envvar:PYTHONPYCACHEPREFIX environment variable and :option:-X pycache_prefix command-line option to set an alternate root directory for writing module bytecode cache files.

..

.. bpo: 25711 .. date: 2018-05-14-18-54-03 .. nonce: 9xfq-v .. section: Core and Builtins

The :mod:zipimport module has been rewritten in pure Python.

..

.. bpo: 33509 .. date: 2018-05-14-17-31-02 .. nonce: pIUfTd .. section: Core and Builtins

Fix module_globals parameter of warnings.warn_explicit(): don't crash if module_globals is not a dict.

..

.. bpo: 31849 .. date: 2018-05-14-11-00-00 .. nonce: EmHaH4 .. section: Core and Builtins

Fix signed/unsigned comparison warning in pyhash.c.

..

.. bpo: 33475 .. date: 2018-05-13-01-26-18 .. nonce: rI0y1U .. section: Core and Builtins

Fixed miscellaneous bugs in converting annotations to strings and optimized parentheses in the string representation.

..

.. bpo: 20104 .. date: 2018-05-05-23-26-58 .. nonce: tDBciE .. section: Core and Builtins

Added support for the setpgroup, resetids, setsigmask, setsigdef and scheduler parameters of posix_spawn. Patch by Pablo Galindo.

..

.. bpo: 33391 .. date: 2018-05-02-08-36-03 .. nonce: z4a7rb .. section: Core and Builtins

Fix a leak in set_symmetric_difference().

..

.. bpo: 33363 .. date: 2018-04-26-22-48-28 .. nonce: 8RCnN2 .. section: Core and Builtins

Raise a SyntaxError for async with and async for statements outside of async functions.

..

.. bpo: 28055 .. date: 2018-04-25-20-44-42 .. nonce: f49kfC .. section: Core and Builtins

Fix unaligned accesses in siphash24(). Patch by Rolf Eike Beer.

..

.. bpo: 33128 .. date: 2018-04-24-22-31-04 .. nonce: g2yLuf .. section: Core and Builtins

Fix a bug that causes PathFinder to appear twice on sys.meta_path. Patch by Pablo Galindo Salgado.

..

.. bpo: 33331 .. date: 2018-04-22-13-41-59 .. nonce: s_DxdL .. section: Core and Builtins

Modules imported last are now cleared first at interpreter shutdown.

..

.. bpo: 33312 .. date: 2018-04-19-08-30-07 .. nonce: mDe2iL .. section: Core and Builtins

Fixed clang ubsan (undefined behavior sanitizer) warnings in dictobject.c by adjusting how the internal struct _dictkeysobject shared keys structure is declared.

..

.. bpo: 33305 .. date: 2018-04-18-14-17-44 .. nonce: 9z3dDH .. section: Core and Builtins

Improved syntax error messages for invalid numerical literals.

..

.. bpo: 33306 .. date: 2018-04-18-12-23-30 .. nonce: tSM3cp .. section: Core and Builtins

Improved syntax error messages for unbalanced parentheses.

..

.. bpo: 33234 .. date: 2018-04-17-01-24-51 .. nonce: l9IDtp .. section: Core and Builtins

The list constructor will pre-size and not over-allocate when the input length is known.

..

.. bpo: 33270 .. date: 2018-04-14-13-12-50 .. nonce: UmVV6i .. section: Core and Builtins

Intern the names for all anonymous code objects. Patch by Zackery Spytz.

..

.. bpo: 30455 .. date: 2018-04-14-11-02-57 .. nonce: ANRwjo .. section: Core and Builtins

The C and Python code and the documentation related to tokens are now generated from a single source file :file:Grammar/Tokens.

..

.. bpo: 33176 .. date: 2018-04-13-22-31-09 .. nonce: PB9com .. section: Core and Builtins

Add a toreadonly() method to memoryviews.

..

.. bpo: 33231 .. date: 2018-04-05-22-20-44 .. nonce: 3Jmo0q .. section: Core and Builtins

Fix potential memory leak in normalizestring().

..

.. bpo: 33205 .. date: 2018-04-03-00-58-41 .. nonce: lk2F3r .. section: Core and Builtins

Change dict growth function from round_up_to_power_2(used*2+hashtable_size/2) to round_up_to_power_2(used*3). Previously, dict is shrunk only when used == 0. Now dict has more chance to be shrunk.

..

.. bpo: 29922 .. date: 2018-04-03-00-30-25 .. nonce: CdLuMl .. section: Core and Builtins

Improved error messages in 'async with' when __aenter__() or __aexit__() return non-awaitable object.

..

.. bpo: 33199 .. date: 2018-04-02-09-32-40 .. nonce: TPnxQu .. section: Core and Builtins

Fix ma_version_tag in dict implementation is uninitialized when copying from key-sharing dict.

..

.. bpo: 33053 .. date: 2018-03-25-19-49-06 .. nonce: V3xlsH .. section: Core and Builtins

When using the -m switch, sys.path[0] is now explicitly expanded as the starting working directory, rather than being left as the empty path (which allows imports from the current working directory at the time of the import)

..

.. bpo: 33138 .. date: 2018-03-25-19-25-14 .. nonce: aSqudH .. section: Core and Builtins

Changed standard error message for non-pickleable and non-copyable types. It now says "cannot pickle" instead of "can't pickle" or "cannot serialize".

..

.. bpo: 33018 .. date: 2018-03-22-23-09-06 .. nonce: 0ncEJV .. section: Core and Builtins

Improve consistency of errors raised by issubclass() when called with a non-class and an abstract base class as the first and second arguments, respectively. Patch by Josh Bronson.

..

.. bpo: 33083 .. date: 2018-03-19-00-59-20 .. nonce: Htztjl .. section: Core and Builtins

math.factorial no longer accepts arguments that are not int-like. Patch by Pablo Galindo.

..

.. bpo: 33041 .. date: 2018-03-18-13-56-14 .. nonce: XwPhI2 .. section: Core and Builtins

Added new opcode :opcode:END_ASYNC_FOR and fixes the following issues:

  • Setting global :exc:StopAsyncIteration no longer breaks async for loops.
  • Jumping into an async for loop is now disabled.
  • Jumping out of an async for loop no longer corrupts the stack.

..

.. bpo: 25750 .. date: 2018-03-14-21-42-17 .. nonce: lxgkQz .. section: Core and Builtins

Fix rare Python crash due to bad refcounting in type_getattro() if a descriptor deletes itself from the class. Patch by Jeroen Demeyer.

..

.. bpo: 33041 .. date: 2018-03-10-15-16-40 .. nonce: -ak5Fk .. section: Core and Builtins

Fixed bytecode generation for "async for" with a complex target. A StopAsyncIteration raised on assigning or unpacking will be now propagated instead of stopping the iteration.

..

.. bpo: 33026 .. date: 2018-03-08-09-48-38 .. nonce: QZA3Ba .. section: Core and Builtins

Fixed jumping out of "with" block by setting f_lineno.

..

.. bpo: 33005 .. date: 2018-03-06-12-19-19 .. nonce: LP-V2U .. section: Core and Builtins

Fix a crash on fork when using a custom memory allocator (ex: using PYTHONMALLOC env var). _PyGILState_Reinit() and _PyInterpreterState_Enable() now use the default RAW memory allocator to allocate a new interpreters mutex on fork.

..

.. bpo: 32911 .. date: 2018-02-27-20-57-00 .. nonce: cmKfco .. section: Core and Builtins

Due to unexpected compatibility issues discovered during downstream beta testing, reverted :issue:29463. docstring field is removed from Module, ClassDef, FunctionDef, and AsyncFunctionDef ast nodes which was added in 3.7a1. Docstring expression is restored as a first statement in their body. Based on patch by Inada Naoki.

..

.. bpo: 17288 .. date: 2018-02-27-13-36-21 .. nonce: Gdj24S .. section: Core and Builtins

Prevent jumps from 'return' and 'exception' trace events.

..

.. bpo: 32946 .. date: 2018-02-25-10-52-40 .. nonce: Lo09rG .. section: Core and Builtins

Importing names from already imported module with "from ... import ..." is now 30% faster if the module is not a package.

..

.. bpo: 32932 .. date: 2018-02-24-21-51-42 .. nonce: 2cz31L .. section: Core and Builtins

Make error message more revealing when there are non-str objects in __all__.

..

.. bpo: 32925 .. date: 2018-02-24-00-07-05 .. nonce: e-7Ufh .. section: Core and Builtins

Optimized iterating and containing test for literal lists consisting of non-constants: x in [a, b] and for x in [a, b]. The case of all constant elements already was optimized.

..

.. bpo: 32889 .. date: 2018-02-20-21-53-48 .. nonce: J6eWy5 .. section: Core and Builtins

Update Valgrind suppression list to account for the rename of Py_ADDRESS_IN_RANG to address_in_range.

..

.. bpo: 32836 .. date: 2018-02-14-12-35-47 .. nonce: bThJnx .. section: Core and Builtins

Don't use temporary variables in cases of list/dict/set comprehensions

..

.. bpo: 31356 .. date: 2018-02-02-08-50-46 .. nonce: MNwUOQ .. section: Core and Builtins

Remove the new API added in bpo-31356 (gc.ensure_disabled() context manager).

..

.. bpo: 32305 .. date: 2018-02-01-10-56-41 .. nonce: dkU9Qa .. section: Core and Builtins

For namespace packages, ensure that both __file__ and __spec__.origin are set to None.

..

.. bpo: 32303 .. date: 2018-02-01-10-16-28 .. nonce: VsvhSl .. section: Core and Builtins

Make sure __spec__.loader matches __loader__ for namespace packages.

..

.. bpo: 32711 .. date: 2018-01-29-14-36-37 .. nonce: 8hQFJP .. section: Core and Builtins

Fix the warning messages for Python/ast_unparse.c. Patch by Stéphane Wirtel

..

.. bpo: 32583 .. date: 2018-01-26-21-20-21 .. nonce: Fh3fau .. section: Core and Builtins

Fix possible crashing in builtin Unicode decoders caused by write out-of-bound errors when using customized decode error handlers.

..

.. bpo: 32489 .. date: 2018-01-03-23-12-43 .. nonce: SDEPHB .. section: Core and Builtins

A :keyword:continue statement is now allowed in the :keyword:finally clause.

..

.. bpo: 17611 .. date: 2017-12-24-19-48-59 .. nonce: P85kWL .. section: Core and Builtins

Simplified the interpreter loop by moving the logic of unrolling the stack of blocks into the compiler. The compiler emits now explicit instructions for adjusting the stack of values and calling the cleaning up code for :keyword:break, :keyword:continue and :keyword:return.

Removed opcodes :opcode:BREAK_LOOP, :opcode:CONTINUE_LOOP, :opcode:SETUP_LOOP and :opcode:SETUP_EXCEPT. Added new opcodes :opcode:ROT_FOUR, :opcode:BEGIN_FINALLY and :opcode:CALL_FINALLY and :opcode:POP_FINALLY. Changed the behavior of :opcode:END_FINALLY and :opcode:WITH_CLEANUP_START.

..

.. bpo: 32285 .. date: 2017-12-12-13-43-13 .. nonce: LzKSwz .. section: Core and Builtins

New function unicodedata.is_normalized, which can check whether a string is in a specific normal form.

..

.. bpo: 10544 .. date: 2017-11-26-00-59-22 .. nonce: fHOM3V .. section: Core and Builtins

Yield expressions are now disallowed in comprehensions and generator expressions except the expression for the outermost iterable.

..

.. bpo: 32117 .. date: 2017-11-22-15-43-14 .. nonce: -vloh8 .. section: Core and Builtins

Iterable unpacking is now allowed without parentheses in yield and return statements, e.g. yield 1, 2, 3, *rest. Thanks to David Cuthbert for the change and Jordan Chapman for added tests.

..

.. bpo: 31902 .. date: 2017-10-30-12-44-50 .. nonce: a07fa57 .. section: Core and Builtins

Fix the col_offset attribute for ast nodes ast.AsyncFor, ast.AsyncFunctionDef, and ast.AsyncWith. Previously, col_offset pointed to the keyword after async.

..

.. bpo: 25862 .. date: 2017-10-07-10-13-15 .. nonce: FPYBA5 .. section: Core and Builtins

Fix assertion failures in the tell() method of io.TextIOWrapper. Patch by Zackery Spytz.

..

.. bpo: 21983 .. date: 2017-10-02-21-02-14 .. nonce: UoC319 .. section: Core and Builtins

Fix a crash in ctypes.cast() in case the type argument is a ctypes structured data type. Patch by Eryk Sun and Oren Milman.

..

.. bpo: 31577 .. date: 2017-09-25-20-36-24 .. nonce: jgYsSA .. section: Core and Builtins

Fix a crash in os.utime() in case of a bad ns argument. Patch by Oren Milman.

..

.. bpo: 29832 .. date: 2017-09-12-08-11-01 .. nonce: Kuf2M7 .. section: Core and Builtins

Remove references to 'getsockaddrarg' from various socket error messages. Patch by Oren Milman.

..

.. bpo: 35845 .. date: 2019-02-02-00-04-01 .. nonce: 1jx2wk .. section: Library

Add 'order' parameter to memoryview.tobytes().

..

.. bpo: 35864 .. date: 2019-01-30-20-22-36 .. nonce: ig9KnG .. section: Library

The _asdict() method for collections.namedtuple now returns a regular dict instead of an OrderedDict.

..

.. bpo: 35537 .. date: 2019-01-29-17-24-52 .. nonce: Q0ktFC .. section: Library

An ExitStack is now used internally within subprocess.Popen to clean up pipe file handles. No behavior change in normal operation. But if closing one handle were ever to cause an exception, the others will now be closed instead of leaked. (patch by Giampaolo Rodola)

..

.. bpo: 35847 .. date: 2019-01-29-09-11-09 .. nonce: eiSi4t .. section: Library

RISC-V needed the CTYPES_PASS_BY_REF_HACK. Fixes ctypes Structure test_pass_by_value.

..

.. bpo: 35813 .. date: 2019-01-23-22-44-37 .. nonce: Yobj-Y .. section: Library

Shared memory submodule added to multiprocessing to avoid need for serialization between processes

..

.. bpo: 35780 .. date: 2019-01-19-17-01-43 .. nonce: CLf7fT .. section: Library

Fix lru_cache() errors arising in recursive, reentrant, or multi-threaded code. These errors could result in orphan links and in the cache being trapped in a state with fewer than the specified maximum number of links. Fix handling of negative maxsize which should have been treated as zero. Fix errors in toggling the "full" status flag. Fix misordering of links when errors are encountered. Sync-up the C code and pure Python code for the space saving path in functions with a single positional argument. In this common case, the space overhead of an lru cache entry is reduced by almost half. Fix counting of cache misses. In error cases, the miss count was out of sync with the actual number of times the underlying user function was called.

..

.. bpo: 35537 .. date: 2019-01-18-13-44-13 .. nonce: R1lbTl .. section: Library

:func:os.posix_spawn and :func:os.posix_spawnp now have a setsid parameter.

..

.. bpo: 23846 .. date: 2019-01-15-13-31-30 .. nonce: LT_qL8 .. section: Library

:class:asyncio.ProactorEventLoop now catches and logs send errors when the self-pipe is full.

..

.. bpo: 34323 .. date: 2019-01-14-17-34-36 .. nonce: CRErrt .. section: Library

:mod:asyncio: Enhance IocpProactor.close() log: wait 1 second before the first log, then log every second. Log also the number of seconds since close() was called.

..

.. bpo: 35674 .. date: 2019-01-14-14-13-08 .. nonce: kamWqz .. section: Library

Add a new :func:os.posix_spawnp function. Patch by Joannah Nanjekye.

..

.. bpo: 35733 .. date: 2019-01-13-18-42-41 .. nonce: eFfLiv .. section: Library

ast.Constant(boolean) no longer an instance of :class:ast.Num. Patch by Anthony Sottile.

..

.. bpo: 35726 .. date: 2019-01-13-01-33-00 .. nonce: dasdas .. section: Library

QueueHandler.prepare() now makes a copy of the record before modifying and enqueueing it, to avoid affecting other handlers in the chain.

..

.. bpo: 35719 .. date: 2019-01-11-20-21-59 .. nonce: qyRcpE .. section: Library

Sped up multi-argument :mod:math functions atan2(), copysign(), remainder() and hypot() by 1.3--2.5 times.

..

.. bpo: 35717 .. date: 2019-01-11-17-56-15 .. nonce: 6TDTB_ .. section: Library

Fix KeyError exception raised when using enums and compile. Patch contributed by Rémi Lapeyre.

..

.. bpo: 35699 .. date: 2019-01-11-07-09-25 .. nonce: VDiENF .. section: Library

Fixed detection of Visual Studio Build Tools 2017 in distutils

..

.. bpo: 32710 .. date: 2019-01-10-15-55-10 .. nonce: KwECPu .. section: Library

Fix memory leaks in asyncio ProactorEventLoop on overlapped operation failure.

..

.. bpo: 35702 .. date: 2019-01-10-14-03-12 .. nonce: _ct_0H .. section: Library

The :const:time.CLOCK_UPTIME_RAW constant is now available for macOS 10.12.

..

.. bpo: 32710 .. date: 2019-01-08-14-00-52 .. nonce: Sn5Ujj .. section: Library

Fix a memory leak in asyncio in the ProactorEventLoop when ReadFile() or WSASend() overlapped operation fail immediately: release the internal buffer.

..

.. bpo: 35682 .. date: 2019-01-08-01-54-02 .. nonce: KDM9lk .. section: Library

Fix asyncio.ProactorEventLoop.sendfile(): don't attempt to set the result of an internal future if it's already done.

..

.. bpo: 35283 .. date: 2019-01-07-17-17-16 .. nonce: WClosC .. section: Library

Add a deprecated warning for the :meth:threading.Thread.isAlive method. Patch by Donghee Na.

..

.. bpo: 35664 .. date: 2019-01-04-22-18-25 .. nonce: Z-Gyyj .. section: Library

Improve operator.itemgetter() performance by 33% with optimized argument handling and with adding a fast path for the common case of a single non-negative integer index into a tuple (which is the typical use case in the standard library).

..

.. bpo: 35643 .. date: 2019-01-02-20-04-49 .. nonce: DaMiaV .. section: Library

Fixed a SyntaxWarning: invalid escape sequence in Modules/_sha3/cleanup.py. Patch by Mickaël Schoentgen.

..

.. bpo: 35619 .. date: 2018-12-30-19-50-36 .. nonce: ZRXdhy .. section: Library

Improved support of custom data descriptors in :func:help and :mod:pydoc.

..

.. bpo: 28503 .. date: 2018-12-30-14-56-33 .. nonce: V4kNN3 .. section: Library

The crypt module now internally uses the crypt_r() library function instead of crypt() when available.

..

.. bpo: 35614 .. date: 2018-12-30-01-10-50 .. nonce: cnkM4f .. section: Library

Fixed help() on metaclasses. Patch by Sanyam Khurana.

..

.. bpo: 35568 .. date: 2018-12-27-19-23-00 .. nonce: PutiOC .. section: Library

Expose raise(signum) as raise_signal

..

.. bpo: 35588 .. date: 2018-12-26-10-55-59 .. nonce: PSR6Ez .. section: Library

The floor division and modulo operations and the :func:divmod function on :class:fractions.Fraction types are 2--4x faster. Patch by Stefan Behnel.

..

.. bpo: 35585 .. date: 2018-12-26-02-28-00 .. nonce: Lkzd3Z .. section: Library

Speed-up building enums by value, e.g. http.HTTPStatus(200).

..

.. bpo: 30561 .. date: 2018-12-23-22-27-59 .. nonce: PSRQ2w .. section: Library

random.gammavariate(1.0, beta) now computes the same result as random.expovariate(1.0 / beta). This synchronizes the two algorithms and eliminates some idiosyncrasies in the old implementation. It does however produce a difference stream of random variables than it used to.

..

.. bpo: 35537 .. date: 2018-12-20-16-24-51 .. nonce: z4E7aA .. section: Library

The :mod:subprocess module can now use the :func:os.posix_spawn function in some cases for better performance.

..

.. bpo: 35526 .. date: 2018-12-18-21-12-25 .. nonce: fYvo6H .. section: Library

Delaying the 'joke' of barry_as_FLUFL.mandatory to Python version 4.0

..

.. bpo: 35523 .. date: 2018-12-18-13-52-13 .. nonce: SkoMno .. section: Library

Remove :mod:ctypes callback workaround: no longer create a callback at startup. Avoid SELinux alert on import ctypes and import uuid.

..

.. bpo: 31784 .. date: 2018-12-17-11-43-11 .. nonce: W0gDjC .. section: Library

:func:uuid.uuid1 now calls :func:time.time_ns rather than int(time.time() * 1e9).

..

.. bpo: 35513 .. date: 2018-12-16-23-28-49 .. nonce: pn-Zh3 .. section: Library

:class:~unittest.runner.TextTestRunner of :mod:unittest.runner now uses :func:time.perf_counter rather than :func:time.time to measure the execution time of a test: :func:time.time can go backwards, whereas :func:time.perf_counter is monotonic.

..

.. bpo: 35502 .. date: 2018-12-14-23-56-48 .. nonce: gLHuFS .. section: Library

Fixed reference leaks in :class:xml.etree.ElementTree.TreeBuilder in case of unfinished building of the tree (in particular when an error was raised during parsing XML).

..

.. bpo: 35348 .. date: 2018-12-14-13-27-45 .. nonce: u3Y2an .. section: Library

Make :func:platform.architecture parsing of file command output more reliable: add the -b option to the file command to omit the filename, force the usage of the C locale, and search also the "shared object" pattern.

..

.. bpo: 35491 .. date: 2018-12-14-12-12-15 .. nonce: jHsNOU .. section: Library

:mod:multiprocessing: Add Pool.__repr__() and enhance BaseProcess.__repr__() (add pid and parent pid) to ease debugging. Pool state constant values are now strings instead of integers, for example RUN value becomes 'RUN' instead of 0.

..

.. bpo: 35477 .. date: 2018-12-13-00-10-51 .. nonce: hHyy06 .. section: Library

:meth:multiprocessing.Pool.__enter__ now fails if the pool is not running: with pool: fails if used more than once.

..

.. bpo: 31446 .. date: 2018-12-12-22-52-34 .. nonce: l--Fjz .. section: Library

Copy command line that was passed to CreateProcessW since this function can change the content of the input buffer.

..

.. bpo: 35471 .. date: 2018-12-12-16-25-21 .. nonce: SK8jFC .. section: Library

Python 2.4 dropped MacOS 9 support. The macpath module was deprecated in Python 3.7. The module is now removed.

..

.. bpo: 23057 .. date: 2018-12-12-16-24-55 .. nonce: OB4Z1Y .. section: Library

Unblock Proactor event loop when keyboard interrupt is received on Windows

..

.. bpo: 35052 .. date: 2018-12-10-09-48-27 .. nonce: xE1ymg .. section: Library

Fix xml.dom.minidom cloneNode() on a document with an entity: pass the correct arguments to the user data handler of an entity.

..

.. bpo: 20239 .. date: 2018-12-09-21-35-49 .. nonce: V4mWBL .. section: Library

Allow repeated assignment deletion of :class:unittest.mock.Mock attributes. Patch by Pablo Galindo.

..

.. bpo: 17185 .. date: 2018-12-09-17-04-15 .. nonce: SfSCJF .. section: Library

Set __signature__ on mock for :mod:inspect to get signature. Patch by Karthikeyan Singaravelan.

..

.. bpo: 35445 .. date: 2018-12-09-14-35-49 .. nonce: LjvtsC .. section: Library

Memory errors during creating posix.environ no longer ignored.

..

.. bpo: 35415 .. date: 2018-12-06-14-44-21 .. nonce: -HoK3d .. section: Library

Validate fileno= argument to socket.socket().

..

.. bpo: 35424 .. date: 2018-12-06-02-02-28 .. nonce: gXxOJU .. section: Library

:class:multiprocessing.Pool destructor now emits :exc:ResourceWarning if the pool is still running.

..

.. bpo: 35330 .. date: 2018-12-06-00-43-13 .. nonce: abB4BN .. section: Library

When a :class:Mock instance was used to wrap an object, if side_effect is used in one of the mocks of it methods, don't call the original implementation and return the result of using the side effect the same way that it is done with return_value.

..

.. bpo: 35346 .. date: 2018-12-05-22-52-21 .. nonce: Okm9-S .. section: Library

Drop Mac OS 9 and Rhapsody support from the :mod:platform module. Rhapsody last release was in 2000. Mac OS 9 last release was in 2001.

..

.. bpo: 10496 .. date: 2018-12-05-17-42-49 .. nonce: laV_IE .. section: Library

:func:~distutils.utils.check_environ of distutils.utils now catches :exc:KeyError on calling :func:pwd.getpwuid: don't create the HOME environment variable in this case.

..

.. bpo: 10496 .. date: 2018-12-05-13-37-39 .. nonce: VH-1Lp .. section: Library

:func:posixpath.expanduser now returns the input path unchanged if the HOME environment variable is not set and the current user has no home directory (if the current user identifier doesn't exist in the password database). This change fix the :mod:site module if the current user doesn't exist in the password database (if the user has no home directory).

..

.. bpo: 35389 .. date: 2018-12-04-12-46-05 .. nonce: CTZ9iA .. section: Library

:func:platform.libc_ver now uses os.confstr('CS_GNU_LIBC_VERSION') if available and the executable parameter is not set.

..

.. bpo: 35394 .. date: 2018-12-04-12-17-08 .. nonce: fuTVDk .. section: Library

Add empty slots to asyncio abstract protocols.

..

.. bpo: 35310 .. date: 2018-12-03-19-45-00 .. nonce: 9k28gR .. section: Library

Fix a bug in :func:select.select where, in some cases, the file descriptor sequences were returned unmodified after a signal interruption, even though the file descriptors might not be ready yet. :func:select.select will now always return empty lists if a timeout has occurred. Patch by Oran Avraham.

..

.. bpo: 35380 .. date: 2018-12-03-14-41-11 .. nonce: SdRF9l .. section: Library

Enable TCP_NODELAY on Windows for proactor asyncio event loop.

..

.. bpo: 35341 .. date: 2018-12-02-13-50-52 .. nonce: 32E8T_ .. section: Library

Add generic version of collections.OrderedDict to the typing module. Patch by Ismo Toijala.

..

.. bpo: 35371 .. date: 2018-12-01-13-44-12 .. nonce: fTAwlX .. section: Library

Fixed possible crash in os.utime() on Windows when pass incorrect arguments.

..

.. bpo: 35346 .. date: 2018-11-29-12-42-13 .. nonce: OmTY5c .. section: Library

:func:platform.uname now redirects stderr to :data:os.devnull when running external programs like cmd /c ver.

..

.. bpo: 35066 .. date: 2018-11-29-09-38-40 .. nonce: Nwej2s .. section: Library

Previously, calling the strftime() method on a datetime object with a trailing '%' in the format string would result in an exception. However, this only occurred when the datetime C module was being used; the python implementation did not match this behavior. Datetime is now PEP-399 compliant, and will not throw an exception on a trailing '%'.

..

.. bpo: 35345 .. date: 2018-11-29-00-55-33 .. nonce: vepCSJ .. section: Library

The function platform.popen has been removed, it was deprecated since Python 3.3: use :func:os.popen instead.

..

.. bpo: 35344 .. date: 2018-11-29-00-23-25 .. nonce: 4QOPJQ .. section: Library

On macOS, :func:platform.platform now uses :func:platform.mac_ver, if it returns a non-empty release string, to get the macOS version rather than the darwin version.

..

.. bpo: 35312 .. date: 2018-11-25-20-05-33 .. nonce: wbw0zO .. section: Library

Make lib2to3.pgen2.parse.ParseError round-trip pickle-able. Patch by Anthony Sottile.

..

.. bpo: 35308 .. date: 2018-11-24-10-33-42 .. nonce: 9--2iy .. section: Library

Fix regression in webbrowser where default browsers may be preferred over browsers in the BROWSER environment variable.

..

.. bpo: 24746 .. date: 2018-11-22-15-22-56 .. nonce: eSLKBE .. section: Library

Avoid stripping trailing whitespace in doctest fancy diff. Original patch by R. David Murray & Jairo Trad. Enhanced by Sanyam Khurana.

..

.. bpo: 28604 .. date: 2018-11-20-13-34-01 .. nonce: iiih5h .. section: Library

:func:locale.localeconv now sets temporarily the LC_CTYPE locale to the LC_MONETARY locale if the two locales are different and monetary strings are non-ASCII. This temporary change affects other threads.

..

.. bpo: 35277 .. date: 2018-11-19-07-22-04 .. nonce: dsD-2E .. section: Library

Update ensurepip to install pip 18.1 and setuptools 40.6.2.

..

.. bpo: 24209 .. date: 2018-11-18-18-44-40 .. nonce: p3YWOf .. section: Library

Adds IPv6 support when invoking http.server directly.

..

.. bpo: 35226 .. date: 2018-11-15-07-14-32 .. nonce: wJPEEe .. section: Library

Recursively check arguments when testing for equality of :class:unittest.mock.call objects and add note that tracking of parameters used to create ancestors of mocks in mock_calls is not possible.

..

.. bpo: 29564 .. date: 2018-11-12-17-40-04 .. nonce: SFNBT5 .. section: Library

The warnings module now suggests to enable tracemalloc if the source is specified, the tracemalloc module is available, but tracemalloc is not tracing memory allocations.

..

.. bpo: 35189 .. date: 2018-11-09-13-35-36 .. nonce: gog-sl .. section: Library

Modify the following fnctl function to retry if interrupted by a signal (EINTR): flock, lockf, fnctl

..

.. bpo: 30064 .. date: 2018-11-09-01-18-51 .. nonce: IF5mH6 .. section: Library

Use add_done_callback() in sock_* asyncio API to unsubscribe reader/writer early on calcellation.

..

.. bpo: 35186 .. date: 2018-11-08-14-22-29 .. nonce: 5m22Mj .. section: Library

Removed the "built with" comment added when setup.py upload is used with either bdist_rpm or bdist_dumb.

..

.. bpo: 35152 .. date: 2018-11-03-10-12-04 .. nonce: xpqskp .. section: Library

Allow sending more than 2 GB at once on a multiprocessing connection on non-Windows systems.

..

.. bpo: 35062 .. date: 2018-10-29-23-09-24 .. nonce: dQS1ng .. section: Library

Fix incorrect parsing of :class:io.IncrementalNewlineDecoder's translate argument.

..

.. bpo: 35065 .. date: 2018-10-29-10-18-31 .. nonce: CulMN8 .. section: Library

Remove StreamReaderProtocol._untrack_reader. The call to _untrack_reader is currently performed too soon, causing the protocol to forget about the reader before connection_lost can run and feed the EOF to the reader.

..

.. bpo: 34160 .. date: 2018-10-27-21-11-42 .. nonce: UzyPZf .. section: Library

ElementTree and minidom now preserve the attribute order specified by the user.

..

.. bpo: 35079 .. date: 2018-10-26-22-53-16 .. nonce: Tm5jvF .. section: Library

Improve difflib.SequenceManager.get_matching_blocks doc by adding 'non-overlapping' and changing '!=' to '<'.

..

.. bpo: 33710 .. date: 2018-10-26-21-12-55 .. nonce: Q5oXc6 .. section: Library

Deprecated l*gettext() functions and methods in the :mod:gettext module. They return encoded bytes instead of Unicode strings and are artifacts from Python 2 times. Also deprecated functions and methods related to setting the charset for l*gettext() functions and methods.

..

.. bpo: 35017 .. date: 2018-10-26-00-11-21 .. nonce: 6Ez4Cv .. section: Library

:meth:socketserver.BaseServer.serve_forever now exits immediately if it's :meth:~socketserver.BaseServer.shutdown method is called while it is polling for new events.

..

.. bpo: 35024 .. date: 2018-10-25-15-43-32 .. nonce: ltSrtr .. section: Library

importlib no longer logs wrote <bytecode path> redundantly after (created|could not create) <bytecode path> is already logged. Patch by Quentin Agren.

..

.. bpo: 35047 .. date: 2018-10-25-09-59-00 .. nonce: abbaa .. section: Library

unittest.mock now includes mock calls in exception messages if assert_not_called, assert_called_once, or assert_called_once_with fails. Patch by Petter Strandmark.

..

.. bpo: 31047 .. date: 2018-10-25-09-37-03 .. nonce: kBbX8r .. section: Library

Fix ntpath.abspath regression where it didn't remove a trailing separator on Windows. Patch by Tim Graham.

..

.. bpo: 35053 .. date: 2018-10-23-18-58-12 .. nonce: G82qwh .. section: Library

tracemalloc now tries to update the traceback when an object is reused from a "free list" (optimization for faster object creation, used by the builtin list type for example).

..

.. bpo: 31553 .. date: 2018-10-23-14-46-47 .. nonce: JxRkAW .. section: Library

Add the --json-lines option to json.tool. Patch by hongweipeng.

..

.. bpo: 34794 .. date: 2018-10-21-14-53-19 .. nonce: yt3R4- .. section: Library

Fixed a leak in Tkinter when pass the Python wrapper around Tcl_Obj back to Tcl/Tk.

..

.. bpo: 34909 .. date: 2018-10-20-00-29-43 .. nonce: Ew_8DC .. section: Library

Enum: fix grandchildren subclassing when parent mixed with concrete data types.

..

.. bpo: 35022 .. date: 2018-10-18-17-57-28 .. nonce: KeEF4T .. section: Library

:class:unittest.mock.MagicMock now supports the __fspath__ method (from :class:os.PathLike).

..

.. bpo: 35008 .. date: 2018-10-17-11-54-04 .. nonce: dotef_ .. section: Library

Fixed references leaks when call the __setstate__() method of :class:xml.etree.ElementTree.Element in the C implementation for already initialized element.

..

.. bpo: 23420 .. date: 2018-10-17-11-00-00 .. nonce: Lq74Uu .. section: Library

Verify the value for the parameter '-s' of the cProfile CLI. Patch by Robert Kuska

..

.. bpo: 33947 .. date: 2018-10-17-02-15-23 .. nonce: SRuq3T .. section: Library

dataclasses now handle recursive reprs without raising RecursionError.

..

.. bpo: 34890 .. date: 2018-10-15-23-10-41 .. nonce: 77E770 .. section: Library

Make :func:inspect.iscoroutinefunction, :func:inspect.isgeneratorfunction and :func:inspect.isasyncgenfunction work with :func:functools.partial. Patch by Pablo Galindo.

..

.. bpo: 34521 .. date: 2018-10-13-19-15-23 .. nonce: YPaiTK .. section: Library

Use :func:socket.CMSG_SPACE to calculate ancillary data size instead of :func:socket.CMSG_LEN in :func:multiprocessing.reduction.recvfds as :rfc:3542 requires the use of the former for portable applications.

..

.. bpo: 31522 .. date: 2018-10-13-18-16-20 .. nonce: rWBb43 .. section: Library

The mailbox.mbox.get_string function from_ parameter can now successfully be set to a non-default value.

..

.. bpo: 34970 .. date: 2018-10-13-11-14-13 .. nonce: SrJTY7 .. section: Library

Protect tasks weak set manipulation in asyncio.all_tasks()

..

.. bpo: 34969 .. date: 2018-10-13-07-46-50 .. nonce: Mfnhjb .. section: Library

gzip: Add --fast, --best on the gzip CLI, these parameters will be used for the fast compression method (quick) or the best method compress (slower, but smaller file). Also, change the default compression level to 6 (tradeoff).

..

.. bpo: 16965 .. date: 2018-10-12-20-30-42 .. nonce: xo5LAr .. section: Library

The 2to3 execfile fixer now opens the file with mode 'rb'. Patch by Zackery Spytz.

..

.. bpo: 34966 .. date: 2018-10-12-18-57-52 .. nonce: WZeBHO .. section: Library

:mod:pydoc now supports aliases not only to methods defined in the end class, but also to inherited methods. The docstring is not duplicated for aliases.

..

.. bpo: 34926 .. date: 2018-10-10-00-22-57 .. nonce: CA0rqd .. section: Library

:meth:mimetypes.MimeTypes.guess_type now accepts :term:path-like object in addition to url strings. Patch by Mayank Asthana.

..

.. bpo: 23831 .. date: 2018-10-09-15-44-04 .. nonce: 2CL7lL .. section: Library

Add moveto() method to the tkinter.Canvas widget. Patch by Juliette Monsel.

..

.. bpo: 34941 .. date: 2018-10-09-14-42-16 .. nonce: 1Q5QKv .. section: Library

Methods find(), findtext() and findall() of the Element class in the :mod:xml.etree.ElementTree module are now able to find children which are instances of Element subclasses.

..

.. bpo: 32680 .. date: 2018-10-09-14-25-36 .. nonce: z2FbOp .. section: Library

:class:smtplib.SMTP objects now always have a sock attribute present

..

.. bpo: 34769 .. date: 2018-10-09-11-01-16 .. nonce: cSkkZt .. section: Library

Fix for async generators not finalizing when event loop is in debug mode and garbage collector runs in another thread.

..

.. bpo: 34936 .. date: 2018-10-08-21-05-11 .. nonce: 3tRqdq .. section: Library

Fix TclError in tkinter.Spinbox.selection_element(). Patch by Juliette Monsel.

..

.. bpo: 34829 .. date: 2018-10-08-16-04-36 .. nonce: B7v7D0 .. section: Library

Add methods selection_from, selection_range, selection_present and selection_to to the tkinter.Spinbox for consistency with the tkinter.Entry widget. Patch by Juliette Monsel.

..

.. bpo: 34911 .. date: 2018-10-08-15-22-02 .. nonce: hCy0Fv .. section: Library

Added secure_protocols argument to http.cookiejar.DefaultCookiePolicy to allow for tweaking of protocols and also to add support by default for wss, the secure websocket protocol.

..

.. bpo: 34922 .. date: 2018-10-07-21-18-52 .. nonce: 37IdsA .. section: Library

Fixed integer overflow in the :meth:~hashlib.shake.digest and :meth:~hashlib.shake.hexdigest methods for the SHAKE algorithm in the :mod:hashlib module.

..

.. bpo: 34925 .. date: 2018-10-07-20-37-02 .. nonce: KlkZ-Y .. section: Library

25% speedup in argument parsing for the functions in the bisect module.

..

.. bpo: 34900 .. date: 2018-10-05-05-55-53 .. nonce: 8RNiFu .. section: Library

Fixed :meth:unittest.TestCase.debug when used to call test methods with subtests. Patch by Bruno Oliveira.

..

.. bpo: 34844 .. date: 2018-10-04-20-44-45 .. nonce: Hnuxav .. section: Library

logging.Formatter enhancement - Ensure styles and fmt matches in logging.Formatter - Added validate method in each format style class: StrFormatStyle, PercentStyle, StringTemplateStyle. - This method is called in the constructor of logging.Formatter class - Also re-raise the KeyError in the format method of each style class, so it would a bit clear that it's an error with the invalid format fields.

..

.. bpo: 34897 .. date: 2018-10-04-20-25-35 .. nonce: rNE2Cy .. section: Library

Adjust test.support.missing_compiler_executable check so that a nominal command name of "" is ignored. Patch by Michael Felt.

..

.. bpo: 34871 .. date: 2018-10-04-18-46-54 .. nonce: t3X-dB .. section: Library

Fix inspect module polluted sys.modules when parsing __text_signature__ of callable.

..

.. bpo: 34898 .. date: 2018-10-04-17-23-43 .. nonce: Wo2PoJ .. section: Library

Add mtime argument to gzip.compress for reproducible output. Patch by Guo Ci Teo.

..

.. bpo: 28441 .. date: 2018-10-04-15-53-14 .. nonce: 2sQENe .. section: Library

On Cygwin and MinGW, ensure that sys.executable always includes the full filename in the path, including the .exe suffix (unless it is a symbolic link).

..

.. bpo: 34866 .. date: 2018-10-03-11-07-28 .. nonce: ML6KpJ .. section: Library

Adding max_num_fields to cgi.FieldStorage to make DOS attacks harder by limiting the number of MiniFieldStorage objects created by FieldStorage.

..

.. bpo: 34711 .. date: 2018-10-03-09-25-02 .. nonce: HeOmKR .. section: Library

http.server ensures it reports HTTPStatus.NOT_FOUND when the local path ends with "/" and is not a directory, even if the underlying OS (e.g. AIX) accepts such paths as a valid file reference. Patch by Michael Felt.

..

.. bpo: 34872 .. date: 2018-10-02-19-36-34 .. nonce: yWZRhI .. section: Library

Fix self-cancellation in C implementation of asyncio.Task

..

.. bpo: 34849 .. date: 2018-09-30-08-08-14 .. nonce: NXK9Ff .. section: Library

Don't log waiting for selector.select in asyncio loop iteration. The waiting is pretty normal for any asyncio program, logging its time just adds a noise to logs without any useful information provided.

..

.. bpo: 34022 .. date: 2018-09-27-13-14-15 .. nonce: E2cl0r .. section: Library

The :envvar:SOURCE_DATE_EPOCH environment variable no longer overrides the value of the invalidation_mode argument to :func:py_compile.compile, and determines its default value instead.

..

.. bpo: 34819 .. date: 2018-09-27-09-45-00 .. nonce: 9ZaFyO .. section: Library

Use a monotonic clock to compute timeouts in :meth:Executor.map and :func:as_completed, in order to prevent timeouts from deviating when the system clock is adjusted.

..

.. bpo: 34758 .. date: 2018-09-26-14-09-34 .. nonce: bRBfAi .. section: Library

Add .wasm -> application/wasm to list of recognized file types and content type headers

..

.. bpo: 34789 .. date: 2018-09-25-15-48-50 .. nonce: rPOEj5 .. section: Library

:func:xml.sax.make_parser now accepts any iterable as its parser_list argument. Patch by Andrés Delfino.

..

.. bpo: 34334 .. date: 2018-09-25-08-42-34 .. nonce: rSPBW9 .. section: Library

In :class:QueueHandler, clear exc_text from :class:LogRecord to prevent traceback from being written twice.

..

.. bpo: 34687 .. date: 2018-09-24-17-14-57 .. nonce: Fku_8S .. section: Library

On Windows, asyncio now uses ProactorEventLoop, instead of SelectorEventLoop, by default.

..

.. bpo: 5950 .. date: 2018-09-24-14-21-58 .. nonce: xH0ekQ .. section: Library

Support reading zip files with archive comments in :mod:zipimport.

..

.. bpo: 32892 .. date: 2018-09-20-17-35-05 .. nonce: TOUBdg .. section: Library

The parser now represents all constants as :class:ast.Constant instead of using specific constant AST types (Num, Str, Bytes, NameConstant and Ellipsis). These classes are considered deprecated and will be removed in future Python versions.

..

.. bpo: 34728 .. date: 2018-09-20-16-55-43 .. nonce: CUE8LU .. section: Library

Add deprecation warning when loop is used in methods: asyncio.sleep, asyncio.wait and asyncio.wait_for.

..

.. bpo: 34738 .. date: 2018-09-19-16-51-04 .. nonce: Pr3-iG .. section: Library

ZIP files created by distutils will now include entries for directories.

..

.. bpo: 34659 .. date: 2018-09-16-17-04-16 .. nonce: CWemzH .. section: Library

Add an optional initial argument to itertools.accumulate().

..

.. bpo: 29577 .. date: 2018-09-14-20-00-47 .. nonce: RzwKFD .. section: Library

Support multiple mixin classes when creating Enums.

..

.. bpo: 34670 .. date: 2018-09-14-14-29-45 .. nonce: 17XwGB .. section: Library

Add SSLContext.post_handshake_auth and SSLSocket.verify_client_post_handshake for TLS 1.3's post handshake authentication feature.

..

.. bpo: 32718 .. date: 2018-09-14-12-38-49 .. nonce: ICYQbt .. section: Library

The Activate.ps1 script from venv works with PowerShell Core 6.1 and is now available under all operating systems.

..

.. bpo: 31177 .. date: 2018-09-14-10-38-18 .. nonce: Sv91TN .. section: Library

Fix bug that prevented using :meth:reset_mock <unittest.mock.Mock.reset_mock> on mock instances with deleted attributes

..

.. bpo: 34672 .. date: 2018-09-13-21-04-23 .. nonce: BYuKKS .. section: Library

Add a workaround, so the 'Z' :func:time.strftime specifier on the musl C library can work in some cases.

..

.. bpo: 34666 .. date: 2018-09-13-11-49-52 .. nonce: 3uLtWv .. section: Library

Implement asyncio.StreamWriter.awrite and asyncio.StreamWriter.aclose() coroutines. Methods are needed for providing a consistent stream API with control flow switched on by default.

..

.. bpo: 6721 .. date: 2018-09-13-10-09-19 .. nonce: ZUL_F3 .. section: Library

Acquire the logging module's commonly used internal locks while fork()ing to avoid deadlocks in the child process.

..

.. bpo: 34658 .. date: 2018-09-13-03-59-43 .. nonce: ykZ-ia .. section: Library

Fix a rare interpreter unhandled exception state SystemError only seen when using subprocess with a preexec_fn while an after_parent handler has been registered with os.register_at_fork and the fork system call fails.

..

.. bpo: 34652 .. date: 2018-09-12-14-46-51 .. nonce: Rt1m1b .. section: Library

Ensure :func:os.lchmod is never defined on Linux.

..

.. bpo: 34638 .. date: 2018-09-12-10-33-44 .. nonce: xaeZX5 .. section: Library

Store a weak reference to stream reader to break strong references loop between reader and protocol. It allows to detect and close the socket if the stream is deleted (garbage collected) without close() call.

..

.. bpo: 34536 .. date: 2018-09-11-15-49-09 .. nonce: 3IPIH5 .. section: Library

Enum._missing_: raise ValueError if None returned and TypeError if non-member is returned.

..

.. bpo: 34636 .. date: 2018-09-11-15-04-05 .. nonce: capCmt .. section: Library

Speed up re scanning of many non-matching characters for \s \w and \d within bytes objects. (microoptimization)

..

.. bpo: 24412 .. date: 2018-09-11-10-51-16 .. nonce: i-F_E5 .. section: Library

Add :func:~unittest.addModuleCleanup and :meth:~unittest.TestCase.addClassCleanup to unittest to support cleanups for :func:~unittest.setUpModule and :meth:~unittest.TestCase.setUpClass. Patch by Lisa Roach.

..

.. bpo: 34630 .. date: 2018-09-11-10-00-53 .. nonce: YbqUS6 .. section: Library

Don't log SSL certificate errors in asyncio code (connection error logging is skipped already).

..

.. bpo: 32490 .. date: 2018-09-11-01-25-35 .. nonce: ROIDO1 .. section: Library

Prevent filename duplication in :mod:subprocess exception messages. Patch by Zackery Spytz.

..

.. bpo: 34363 .. date: 2018-09-10-21-09-34 .. nonce: YuSb0T .. section: Library

dataclasses.asdict() and .astuple() now handle namedtuples correctly.

..

.. bpo: 34625 .. date: 2018-09-10-17-46-51 .. nonce: D2YfDz .. section: Library

Update vendorized expat library version to 2.2.6.

..

.. bpo: 32270 .. date: 2018-09-10-14-15-53 .. nonce: wSJjuD .. section: Library

The subprocess module no longer mistakenly closes redirected fds even when they were in pass_fds when outside of the default {0, 1, 2} set.

..

.. bpo: 34622 .. date: 2018-09-10-13-04-40 .. nonce: tpv_rN .. section: Library

Create a dedicated asyncio.CancelledError, asyncio.InvalidStateError and asyncio.TimeoutError exception classes. Inherit them from corresponding exceptions from concurrent.futures package. Extract asyncio exceptions into a separate file.

..

.. bpo: 34610 .. date: 2018-09-08-12-57-07 .. nonce: wmoP5j .. section: Library

Fixed iterator of :class:multiprocessing.managers.DictProxy.

..

.. bpo: 34421 .. date: 2018-09-07-10-57-00 .. nonce: AKJISD .. section: Library

Fix distutils logging for non-ASCII strings. This caused installation issues on Windows.

..

.. bpo: 34604 .. date: 2018-09-07-10-16-34 .. nonce: xL7-kG .. section: Library

Fix possible mojibake in the error message of pwd.getpwnam and grp.getgrnam using string representation because of invisible characters or trailing whitespaces. Patch by William Grzybowski.

..

.. bpo: 30977 .. date: 2018-09-06-10-07-46 .. nonce: bP661V .. section: Library

Make uuid.UUID use __slots__ to reduce its memory footprint. Based on original patch by Wouter Bolsterlee.

..

.. bpo: 34574 .. date: 2018-09-04-09-32-54 .. nonce: X4RwYI .. section: Library

OrderedDict iterators are not exhausted during pickling anymore. Patch by Sergey Fedoseev.

..

.. bpo: 8110 .. date: 2018-09-03-23-54-35 .. nonce: FExWI_ .. section: Library

Refactored :mod:subprocess to check for Windows-specific modules rather than sys.platform == 'win32'.

..

.. bpo: 34530 .. date: 2018-09-03-23-23-32 .. nonce: h_Xsu7 .. section: Library

distutils.spawn.find_executable() now falls back on :data:os.defpath if the PATH environment variable is not set.

..

.. bpo: 34563 .. date: 2018-09-01-20-43-10 .. nonce: 7NQK7B .. section: Library

On Windows, fix multiprocessing.Connection for very large read: fix _winapi.PeekNamedPipe() and _winapi.ReadFile() for read larger than INT_MAX (usually 2**31-1).

..

.. bpo: 34558 .. date: 2018-08-31-19-26-55 .. nonce: MHv582 .. section: Library

Correct typo in Lib/ctypes/_aix.py

..

.. bpo: 34282 .. date: 2018-08-31-06-28-03 .. nonce: ztyXH8 .. section: Library

Move Enum._convert to EnumMeta._convert_ and fix enum members getting shadowed by parent attributes.

..

.. bpo: 22872 .. date: 2018-08-30-14-44-11 .. nonce: NhIaZ9 .. section: Library

When the queue is closed, :exc:ValueError is now raised by :meth:multiprocessing.Queue.put and :meth:multiprocessing.Queue.get instead of :exc:AssertionError and :exc:OSError, respectively. Patch by Zackery Spytz.

..

.. bpo: 34515 .. date: 2018-08-27-16-01-22 .. nonce: S0Irst .. section: Library

Fix parsing non-ASCII identifiers in :mod:!lib2to3.pgen2.tokenize (:pep:3131).

..

.. bpo: 13312 .. date: 2018-08-24-17-31-27 .. nonce: 6hA5La .. section: Library

Avoids a possible integer underflow (undefined behavior) in the time module's year handling code when passed a very low negative year value.

..

.. bpo: 34472 .. date: 2018-08-23-09-25-08 .. nonce: cGyYrO .. section: Library

Improved compatibility for streamed files in :mod:zipfile. Previously an optional signature was not being written and certain ZIP applications were not supported. Patch by Silas Sewell.

..

.. bpo: 34454 .. date: 2018-08-22-21-59-08 .. nonce: z7uG4b .. section: Library

Fix the .fromisoformat() methods of datetime types crashing when given unicode with non-UTF-8-encodable code points. Specifically, datetime.fromisoformat() now accepts surrogate unicode code points used as the separator. Report and tests by Alexey Izbyshev, patch by Paul Ganssle.

..

.. bpo: 6700 .. date: 2018-08-22-17-43-52 .. nonce: hp7C4B .. section: Library

Fix inspect.getsourcelines for module level frames/tracebacks. Patch by Vladimir Matveev.

..

.. bpo: 34171 .. date: 2018-08-21-00-29-01 .. nonce: 6LkWav .. section: Library

Running the :mod:trace module no longer creates the trace.cover file.

..

.. bpo: 34441 .. date: 2018-08-20-16-48-32 .. nonce: _zx9lU .. section: Library

Fix crash when an ABC-derived class with invalid __subclasses__ is passed as the second argument to :func:issubclass. Patch by Alexey Izbyshev.

..

.. bpo: 34427 .. date: 2018-08-20-13-53-10 .. nonce: tMRQjl .. section: Library

Fix infinite loop in a.extend(a) for MutableSequence subclasses.

..

.. bpo: 34412 .. date: 2018-08-16-19-07-05 .. nonce: NF5Jm2 .. section: Library

Make :func:signal.strsignal work on HP-UX. Patch by Michael Osipov.

..

.. bpo: 20849 .. date: 2018-08-16-16-47-15 .. nonce: YWJECC .. section: Library

shutil.copytree now accepts a new dirs_exist_ok keyword argument. Patch by Josh Bronson.

..

.. bpo: 31715 .. date: 2018-08-15-16-22-30 .. nonce: Iw8jS8 .. section: Library

Associate .mjs file extension with application/javascript MIME Type.

..

.. bpo: 34384 .. date: 2018-08-12-08-43-21 .. nonce: yjofCv .. section: Library

:func:os.readlink now accepts :term:path-like <path-like object> and :class:bytes objects on Windows.

..

.. bpo: 22602 .. date: 2018-08-12-00-14-54 .. nonce: ybG9K8 .. section: Library

The UTF-7 decoder now raises :exc:UnicodeDecodeError for ill-formed sequences starting with "+" (as specified in RFC 2152). Patch by Zackery Spytz.

..

.. bpo: 2122 .. date: 2018-08-06-21-47-03 .. nonce: GWdmrm .. section: Library

The :meth:mmap.flush() <mmap.mmap.flush> method now returns None on success, raises an exception on error under all platforms.

..

.. bpo: 34341 .. date: 2018-08-06-11-01-18 .. nonce: E0b9p2 .. section: Library

Appending to the ZIP archive with the ZIP64 extension no longer grows the size of extra fields of existing entries.

..

.. bpo: 34333 .. date: 2018-08-04-00-06-28 .. nonce: 5NHG93 .. section: Library

Fix %-formatting in :meth:pathlib.PurePath.with_suffix when formatting an error message.

..

.. bpo: 18540 .. date: 2018-08-02-21-28-38 .. nonce: AryoYY .. section: Library

The :class:imaplib.IMAP4 and :class:imaplib.IMAP4_SSL classes now resolve to the local host IP correctly when the default value of host parameter ('') is used.

..

.. bpo: 26502 .. date: 2018-08-02-20-39-32 .. nonce: eGXr_k .. section: Library

Implement traceback.FrameSummary.__len__() method to preserve compatibility with the old tuple API.

..

.. bpo: 34318 .. date: 2018-08-02-14-43-42 .. nonce: GneiXs .. section: Library

:func:~unittest.TestCase.assertRaises, :func:~unittest.TestCase.assertRaisesRegex, :func:~unittest.TestCase.assertWarns and :func:~unittest.TestCase.assertWarnsRegex no longer success if the passed callable is None. They no longer ignore unknown keyword arguments in the context manager mode. A DeprecationWarning was raised in these cases since Python 3.5.

..

.. bpo: 9372 .. date: 2018-08-01-21-26-17 .. nonce: V8Ou3K .. section: Library

Deprecate :meth:~object.__getitem__ methods of :class:xml.dom.pulldom.DOMEventStream, :class:wsgiref.util.FileWrapper and :class:fileinput.FileInput.

..

.. bpo: 33613 .. date: 2018-07-31-23-33-06 .. nonce: Cdnt0i .. section: Library

Fix a race condition in multiprocessing.semaphore_tracker when the tracker receives SIGINT before it can register signal handlers for ignoring it.

..

.. bpo: 34248 .. date: 2018-07-31-23-00-09 .. nonce: 5U6wwc .. section: Library

Report filename in the exception raised when the database file cannot be opened by :func:dbm.gnu.open and :func:dbm.ndbm.open due to OS-related error. Patch by Zsolt Cserna.

..

.. bpo: 33089 .. date: 2018-07-29-21-53-15 .. nonce: hxbp3g .. section: Library

Add math.dist() to compute the Euclidean distance between two points.

..

.. bpo: 34246 .. date: 2018-07-29-15-25-15 .. nonce: xiKq-Q .. section: Library

:meth:smtplib.SMTP.send_message no longer modifies the content of the mail_options argument. Patch by Pablo S. Blum de Aguiar.

..

.. bpo: 31047 .. date: 2018-07-29-14-12-23 .. nonce: FSarLs .. section: Library

Fix ntpath.abspath for invalid paths on windows. Patch by Franz Woellert.

..

.. bpo: 32321 .. date: 2018-07-29-13-50-32 .. nonce: hDoNKC .. section: Library

Add pure Python fallback for functools.reduce. Patch by Robert Wright.

..

.. bpo: 34270 .. date: 2018-07-29-11-32-56 .. nonce: aL6P-3 .. section: Library

The default asyncio task class now always has a name which can be get or set using two new methods (:meth:~asyncio.Task.get_name and :meth:~asyncio.Task.set_name) and is visible in the :func:repr output. An initial name can also be set using the new name keyword argument to :func:asyncio.create_task or the :meth:~asyncio.AbstractEventLoop.create_task method of the event loop. If no initial name is set, the default Task implementation generates a name like Task-1 using a monotonic counter.

..

.. bpo: 34263 .. date: 2018-07-28-17-00-36 .. nonce: zUfRsu .. section: Library

asyncio's event loop will not pass timeouts longer than one day to epoll/select etc.

..

.. bpo: 34035 .. date: 2018-07-28-15-00-31 .. nonce: 75nW0H .. section: Library

Fix several AttributeError in zipfile seek() methods. Patch by Mickaël Schoentgen.

..

.. bpo: 32215 .. date: 2018-07-28-12-08-53 .. nonce: EU68SY .. section: Library

Fix performance regression in :mod:sqlite3 when a DML statement appeared in a different line than the rest of the SQL query.

..

.. bpo: 34075 .. date: 2018-07-28-11-49-21 .. nonce: 9u1bO- .. section: Library

Deprecate passing non-ThreadPoolExecutor instances to :meth:AbstractEventLoop.set_default_executor.

..

.. bpo: 34251 .. date: 2018-07-28-11-47-10 .. nonce: q3elQ6 .. section: Library

Restore msilib.Win64 to preserve backwards compatibility since it's already used by distutils' bdist_msi command.

..

.. bpo: 19891 .. date: 2018-07-26-08-45-49 .. nonce: Y-3IiB .. section: Library

Ignore errors caused by missing / non-writable homedir while writing history during exit of an interactive session. Patch by Anthony Sottile.

..

.. bpo: 33089 .. date: 2018-07-25-22-38-54 .. nonce: C3CB7e .. section: Library

Enhanced math.hypot() to support more than two dimensions.

..

.. bpo: 34228 .. date: 2018-07-25-19-02-39 .. nonce: 0Ibztw .. section: Library

tracemalloc: PYTHONTRACEMALLOC=0 environment variable and -X tracemalloc=0 command line option are now allowed to disable explicitly tracemalloc at startup.

..

.. bpo: 13041 .. date: 2018-07-25-12-08-48 .. nonce: lNmgDz .. section: Library

Use :func:shutil.get_terminal_size to calculate the terminal width correctly in the argparse.HelpFormatter class. Initial patch by Zbyszek Jędrzejewski-Szmek.

..

.. bpo: 34213 .. date: 2018-07-25-00-40-14 .. nonce: O15MgP .. section: Library

Allow frozen dataclasses to have a field named "object". Previously this conflicted with an internal use of "object".

..

.. bpo: 34052 .. date: 2018-07-24-16-37-40 .. nonce: VbbFAE .. section: Library

:meth:sqlite3.Connection.create_aggregate, :meth:sqlite3.Connection.create_function, :meth:sqlite3.Connection.set_authorizer, :meth:sqlite3.Connection.set_progress_handler methods raises TypeError when unhashable objects are passed as callable. These methods now don't pass such objects to SQLite API. Previous behavior could lead to segfaults. Patch by Sergey Fedoseev.

..

.. bpo: 34197 .. date: 2018-07-23-14-12-28 .. nonce: 7yFSP5 .. section: Library

Attributes skipinitialspace, doublequote and strict of the dialect attribute of the :mod:csv reader are now :class:bool instances instead of integers 0 or 1.

..

.. bpo: 32788 .. date: 2018-07-23-12-20-02 .. nonce: R2jSiK .. section: Library

Errors other than :exc:TypeError raised in methods __adapt__() and __conform__() in the :mod:sqlite3 module are now propagated to the user.

..

.. bpo: 21446 .. date: 2018-07-22-09-05-01 .. nonce: w6g7tn .. section: Library

The reload fixer now uses :func:importlib.reload instead of deprecated :func:!imp.reload.

..

.. bpo: 940286 .. date: 2018-07-22-07-59-32 .. nonce: NZTzyc .. section: Library

pydoc's Helper.showtopic() method now prints the cross references of a topic correctly.

..

.. bpo: 34164 .. date: 2018-07-20-18-06-00 .. nonce: fNfT-q .. section: Library

:func:base64.b32decode could raise UnboundLocalError or OverflowError for incorrect padding. Now it always raises :exc:base64.Error in these cases.

..

.. bpo: 33729 .. date: 2018-07-20-09-11-05 .. nonce: sO6iTb .. section: Library

Fixed issues with arguments parsing in :mod:hashlib.

..

.. bpo: 34097 .. date: 2018-07-13-13-42-10 .. nonce: F5Dk5o .. section: Library

ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using a new strict_timestamps parameter at the cost of setting the timestamp to the limit.

..

.. bpo: 34108 .. date: 2018-07-13-08-44-52 .. nonce: RjobUC .. section: Library

Remove extraneous CR in 2to3 refactor.

..

.. bpo: 34070 .. date: 2018-07-11-20-51-20 .. nonce: WpmFAu .. section: Library

Make sure to only check if the handle is a tty, when opening a file with buffering=-1.

..

.. bpo: 27494 .. date: 2018-07-11-10-03-21 .. nonce: 04OWkW .. section: Library

Reverted :issue:27494. 2to3 rejects now a trailing comma in generator expressions.

..

.. bpo: 33967 .. date: 2018-07-08-18-49-41 .. nonce: lhaAez .. section: Library

functools.singledispatch now raises TypeError instead of IndexError when no positional arguments are passed.

..

.. bpo: 34041 .. date: 2018-07-06-15-06-32 .. nonce: 0zrKLh .. section: Library

Add the parameter deterministic to the :meth:sqlite3.Connection.create_function method. Patch by Sergey Fedoseev.

..

.. bpo: 34056 .. date: 2018-07-05-22-45-46 .. nonce: 86isrU .. section: Library

Ensure the loader shim created by imp.load_module always returns bytes from its get_data() function. This fixes using imp.load_module with :pep:552 hash-based pycs.

..

.. bpo: 34054 .. date: 2018-07-05-18-37-05 .. nonce: nWRS6M .. section: Library

The multiprocessing module now uses the monotonic clock :func:time.monotonic instead of the system clock :func:time.time to implement timeout.

..

.. bpo: 34043 .. date: 2018-07-04-21-14-35 .. nonce: 0YJNq9 .. section: Library

Optimize tarfile uncompress performance about 15% when gzip is used.

..

.. bpo: 34044 .. date: 2018-07-04-17-14-26 .. nonce: KWAu4y .. section: Library

subprocess.Popen now copies the startupinfo argument to leave it unchanged: it will modify the copy, so that the same STARTUPINFO object can be used multiple times.

..

.. bpo: 34010 .. date: 2018-07-04-07-36-53 .. nonce: VNDkde .. section: Library

Fixed a performance regression for reading streams with tarfile. The buffered read should use a list, instead of appending to a bytes object.

..

.. bpo: 34019 .. date: 2018-07-02-05-59-11 .. nonce: ZXJIife .. section: Library

webbrowser: Correct the arguments passed to Opera Browser when opening a new URL using the webbrowser module. Patch by Bumsik Kim.

..

.. bpo: 34003 .. date: 2018-06-29-13-05-01 .. nonce: Iu831h .. section: Library

csv.DictReader now creates dicts instead of OrderedDicts. Patch by Michael Selik.

..

.. bpo: 33978 .. date: 2018-06-29-12-23-34 .. nonce: y4csIw .. section: Library

Closed existing logging handlers before reconfiguration via fileConfig and dictConfig. Patch by Karthikeyan Singaravelan.

..

.. bpo: 14117 .. date: 2018-06-29-00-31-36 .. nonce: 3nvDuR .. section: Library

Make minor tweaks to turtledemo. The 'wikipedia' example is now 'rosette', describing what it draws. The 'penrose' print output is reduced. The'1024' output of 'tree' is eliminated.

..

.. bpo: 33974 .. date: 2018-06-28-14-56-44 .. nonce: SA8nNP .. section: Library

Fixed passing lists and tuples of strings containing special characters ", \, {, } and \n as options to :mod:~tkinter.ttk widgets.

..

.. bpo: 27500 .. date: 2018-06-28-13-00-12 .. nonce: _s1gZ5 .. section: Library

Fix getaddrinfo to resolve IPv6 addresses correctly.

..

.. bpo: 24567 .. date: 2018-06-27-00-31-30 .. nonce: FuePyY .. section: Library

Improve random.choices() to handle subnormal input weights that could occasionally trigger an IndexError.

..

.. bpo: 33871 .. date: 2018-06-26-19-03-56 .. nonce: XhlrGU .. section: Library

Fixed integer overflow in :func:os.readv, :func:os.writev, :func:os.preadv and :func:os.pwritev and in :func:os.sendfile with headers or trailers arguments (on BSD-based OSes and macOS).

..

.. bpo: 25007 .. date: 2018-06-26-16-55-59 .. nonce: 6LQWOF .. section: Library

Add :func:copy.copy and :func:copy.deepcopy support to zlib compressors and decompressors. Patch by Zackery Spytz.

..

.. bpo: 33929 .. date: 2018-06-26-02-09-18 .. nonce: OcCLah .. section: Library

multiprocessing: Fix a race condition in Popen of multiprocessing.popen_spawn_win32. The child process now duplicates the read end of pipe instead of "stealing" it. Previously, the read end of pipe was "stolen" by the child process, but it leaked a handle if the child process had been terminated before it could steal the handle from the parent process.

..

.. bpo: 33899 .. date: 2018-06-24-01-57-14 .. nonce: IaOcAr .. section: Library

Tokenize module now implicitly emits a NEWLINE when provided with input that does not have a trailing new line. This behavior now matches what the C tokenizer does internally. Contributed by Ammar Askar.

..

.. bpo: 33897 .. date: 2018-06-23-18-09-28 .. nonce: Hu0yvt .. section: Library

Added a 'force' keyword argument to logging.basicConfig().

..

.. bpo: 33695 .. date: 2018-06-23-12-47-37 .. nonce: seRTxh .. section: Library

:func:shutil.copytree uses :func:os.scandir function and all copy functions depending from it use cached :func:os.stat values. The speedup for copying a directory with 8000 files is around +9% on Linux, +20% on Windows and + 30% on a Windows SMB share. Also the number of :func:os.stat syscalls is reduced by 38% making :func:shutil.copytree especially faster on network filesystems. (Contributed by Giampaolo Rodola' in :issue:33695.)

..

.. bpo: 33916 .. date: 2018-06-21-11-35-47 .. nonce: cZgPCD .. section: Library

bz2 and lzma: When Decompressor.init() is called twice, free the old lock to not leak memory.

..

.. bpo: 32568 .. date: 2018-06-21-09-33-02 .. nonce: f_meGY .. section: Library

Make select.epoll() and its documentation consistent regarding sizehint and flags.

..

.. bpo: 33833 .. date: 2018-06-17-11-46-20 .. nonce: RnEqvM .. section: Library

Fixed bug in asyncio where ProactorSocketTransport logs AssertionError if force closed during write.

..

.. bpo: 33663 .. date: 2018-06-17-10-48-03 .. nonce: sUuGmq .. section: Library

Convert content length to string before putting to header.

..

.. bpo: 33721 .. date: 2018-06-14-17-53-30 .. nonce: 8i9_9A .. section: Library

:mod:os.path functions that return a boolean result like :func:~os.path.exists, :func:~os.path.lexists, :func:~os.path.isdir, :func:~os.path.isfile, :func:~os.path.islink, and :func:~os.path.ismount, and :mod:pathlib.Path methods that return a boolean result like :meth:~pathlib.Path.exists, :meth:~pathlib.Path.is_dir, :meth:~pathlib.Path.is_file, :meth:~pathlib.Path.is_mount, :meth:~pathlib.Path.is_symlink, :meth:~pathlib.Path.is_block_device, :meth:~pathlib.Path.is_char_device, :meth:~pathlib.Path.is_fifo, :meth:~pathlib.Path.is_socket now return False instead of raising :exc:ValueError or its subclasses :exc:UnicodeEncodeError and :exc:UnicodeDecodeError for paths that contain characters or bytes unrepresentable at the OS level.

..

.. bpo: 26544 .. date: 2018-06-13-20-33-29 .. nonce: hQ1oMt .. section: Library

Fixed implementation of :func:platform.libc_ver. It almost always returned version '2.9' for glibc.

..

.. bpo: 33843 .. date: 2018-06-12-18-59-16 .. nonce: qVAK8g .. section: Library

Remove deprecated cgi.escape, cgi.parse_qs and cgi.parse_qsl.

..

.. bpo: 33842 .. date: 2018-06-12-18-34-54 .. nonce: RZXSGu .. section: Library

Remove tarfile.filemode which is deprecated since Python 3.3.

..

.. bpo: 30167 .. date: 2018-06-10-19-29-17 .. nonce: G5EgC5 .. section: Library

Prevent site.main() exception if PYTHONSTARTUP is set. Patch by Steve Weber.

..

.. bpo: 33805 .. date: 2018-06-10-15-14-17 .. nonce: 5LAz5a .. section: Library

Improve error message of dataclasses.replace() when an InitVar is not specified

..

.. bpo: 33687 .. date: 2018-06-10-14-08-52 .. nonce: 1zZdnA .. section: Library

Fix the call to os.chmod() for uu.decode() if a mode is given or decoded. Patch by Timo Furrer.

..

.. bpo: 33812 .. date: 2018-06-10-13-26-02 .. nonce: frGAOr .. section: Library

Datetime instance d with non-None tzinfo, but with d.tzinfo.utcoffset(d) returning None is now treated as naive by the astimezone() method.

..

.. bpo: 32108 .. date: 2018-06-10-12-15-26 .. nonce: iEkvh0 .. section: Library

In configparser, don't clear section when it is assigned to itself.

..

.. bpo: 27397 .. date: 2018-06-10-09-43-54 .. nonce: 0_fFQR .. section: Library

Make email module properly handle invalid-length base64 strings.

..

.. bpo: 33578 .. date: 2018-06-08-23-55-34 .. nonce: 7oSsjG .. section: Library

Implement multibyte encoder/decoder state methods

..

.. bpo: 30805 .. date: 2018-06-08-17-34-16 .. nonce: 3qCWa0 .. section: Library

Avoid race condition with debug logging

..

.. bpo: 33476 .. date: 2018-06-08-00-29-40 .. nonce: R0Bhlj .. section: Library

Fix _header_value_parser.py when address group is missing final ';'. Contributed by Enrique Perez-Terron

..

.. bpo: 33694 .. date: 2018-06-07-23-51-00 .. nonce: F1zIR1 .. section: Library

asyncio: Fix a race condition causing data loss on pause_reading()/resume_reading() when using the ProactorEventLoop.

..

.. bpo: 32493 .. date: 2018-06-07-18-55-35 .. nonce: 1Bte62 .. section: Library

Correct test for uuid_enc_be availability in configure.ac. Patch by Michael Felt.

..

.. bpo: 33792 .. date: 2018-06-07-12-38-12 .. nonce: 3aKG7u .. section: Library

Add asyncio.WindowsSelectorEventLoopPolicy and asyncio.WindowsProactorEventLoopPolicy.

..

.. bpo: 33274 .. date: 2018-06-06-22-01-33 .. nonce: teYqv8 .. section: Library

W3C DOM Level 1 specifies return value of Element.removeAttributeNode() as "The Attr node that was removed." xml.dom.minidom now complies with this requirement.

..

.. bpo: 33778 .. date: 2018-06-05-20-22-30 .. nonce: _tSAS6 .. section: Library

Update unicodedata's database to Unicode version 11.0.0.

..

.. bpo: 33165 .. date: 2018-06-05-12-43-25 .. nonce: 9TIsVf .. section: Library

Added a stacklevel parameter to logging calls to allow use of wrapper/helper functions for logging APIs.

..

.. bpo: 33770 .. date: 2018-06-05-11-29-26 .. nonce: oBhxxw .. section: Library

improve base64 exception message for encoded inputs of invalid length

..

.. bpo: 33769 .. date: 2018-06-04-13-46-39 .. nonce: D_pxYz .. section: Library

asyncio/start_tls: Fix error message; cancel callbacks in case of an unhandled error; mark SSLTransport as closed if it is aborted.

..

.. bpo: 33767 .. date: 2018-06-03-22-41-59 .. nonce: 2e82g3 .. section: Library

The concatenation (+) and repetition (*) sequence operations now raise :exc:TypeError instead of :exc:SystemError when performed on :class:mmap.mmap objects. Patch by Zackery Spytz.

..

.. bpo: 33734 .. date: 2018-06-01-10-55-48 .. nonce: x1W9x0 .. section: Library

asyncio/ssl: Fix AttributeError, increase default handshake timeout

..

.. bpo: 31014 .. date: 2018-05-31-06-48-55 .. nonce: SNY681 .. section: Library

Fixed creating a controller for :mod:webbrowser when a user specifies a path to an entry in the BROWSER environment variable. Based on patch by John Still.

..

.. bpo: 2504 .. date: 2018-05-30-16-00-06 .. nonce: BynUvU .. section: Library

Add gettext.pgettext() and variants.

..

.. bpo: 33197 .. date: 2018-05-30-00-26-05 .. nonce: XkE2kL .. section: Library

Add description property for _ParameterKind

..

.. bpo: 32751 .. date: 2018-05-29-15-32-18 .. nonce: oBTqr7 .. section: Library

When cancelling the task due to a timeout, :meth:asyncio.wait_for will now wait until the cancellation is complete.

..

.. bpo: 32684 .. date: 2018-05-29-12-51-18 .. nonce: ZEIism .. section: Library

Fix gather to propagate cancellation of itself even with return_exceptions.

..

.. bpo: 33654 .. date: 2018-05-29-01-13-39 .. nonce: sa81Si .. section: Library

Support protocol type switching in SSLTransport.set_protocol().

..

.. bpo: 33674 .. date: 2018-05-29-00-37-56 .. nonce: 2IkGhL .. section: Library

Pause the transport as early as possible to further reduce the risk of data_received() being called before connection_made().

..

.. bpo: 33671 .. date: 2018-05-28-23-25-17 .. nonce: GIdKKi .. section: Library

:func:shutil.copyfile, :func:shutil.copy, :func:shutil.copy2, :func:shutil.copytree and :func:shutil.move use platform-specific fast-copy syscalls on Linux and macOS in order to copy the file more efficiently. On Windows :func:shutil.copyfile uses a bigger default buffer size (1 MiB instead of 16 KiB) and a :func:memoryview-based variant of :func:shutil.copyfileobj is used. The speedup for copying a 512MiB file is about +26% on Linux, +50% on macOS and +40% on Windows. Also, much less CPU cycles are consumed. (Contributed by Giampaolo Rodola' in :issue:25427.)

..

.. bpo: 33674 .. date: 2018-05-28-22-49-59 .. nonce: 6LFFj7 .. section: Library

Fix a race condition in SSLProtocol.connection_made() of asyncio.sslproto: start immediately the handshake instead of using call_soon(). Previously, data_received() could be called before the handshake started, causing the handshake to hang or fail.

..

.. bpo: 31647 .. date: 2018-05-28-18-40-26 .. nonce: s4Fad3 .. section: Library

Fixed bug where calling write_eof() on a _SelectorSocketTransport after it's already closed raises AttributeError.

..

.. bpo: 32610 .. date: 2018-05-28-16-40-32 .. nonce: KvUAsL .. section: Library

Make asyncio.all_tasks() return only pending tasks.

..

.. bpo: 32410 .. date: 2018-05-28-16-19-35 .. nonce: Z1DZaF .. section: Library

Avoid blocking on file IO in sendfile fallback code

..

.. bpo: 33469 .. date: 2018-05-28-15-55-12 .. nonce: hmXBpY .. section: Library

Fix RuntimeError after closing loop that used run_in_executor

..

.. bpo: 33672 .. date: 2018-05-28-12-29-54 .. nonce: GM_Xm_ .. section: Library

Fix Task.repr crash with Cython's bogus coroutines

..

.. bpo: 33654 .. date: 2018-05-26-13-09-34 .. nonce: IbYWxA .. section: Library

Fix transport.set_protocol() to support switching between asyncio.Protocol and asyncio.BufferedProtocol. Fix loop.start_tls() to work with asyncio.BufferedProtocols.

..

.. bpo: 33652 .. date: 2018-05-26-10-13-59 .. nonce: humFJ1 .. section: Library

Pickles of type variables and subscripted generics are now future-proof and compatible with older Python versions.

..

.. bpo: 32493 .. date: 2018-05-24-17-41-36 .. nonce: 5tAoAu .. section: Library

Fixed :func:uuid.uuid1 on FreeBSD.

..

.. bpo: 33238 .. date: 2018-05-24-09-15-52 .. nonce: ooDfoo .. section: Library

Add InvalidStateError to :mod:concurrent.futures. Future.set_result and Future.set_exception now raise InvalidStateError if the futures are not pending or running. Patch by Jason Haydaman.

..

.. bpo: 33618 .. date: 2018-05-23-20-14-34 .. nonce: xU39lr .. section: Library

Finalize and document preliminary and experimental TLS 1.3 support with OpenSSL 1.1.1

..

.. bpo: 33625 .. date: 2018-05-23-17-07-54 .. nonce: nzQgD8 .. section: Library

Release GIL on grp.getgrnam, grp.getgrgid, pwd.getpwnam and pwd.getpwuid if reentrant variants of these functions are available. Patch by William Grzybowski.

..

.. bpo: 33623 .. date: 2018-05-23-14-58-05 .. nonce: wAw1cF .. section: Library

Fix possible SIGSGV when asyncio.Future is created in del

..

.. bpo: 11874 .. date: 2018-05-23-00-26-27 .. nonce: glK5iP .. section: Library

Use a better regex when breaking usage into wrappable parts. Avoids bogus assertion errors from custom metavar strings.

..

.. bpo: 30877 .. date: 2018-05-22-13-05-12 .. nonce: JZEGjI .. section: Library

Fixed a bug in the Python implementation of the JSON decoder that prevented the cache of parsed strings from clearing after finishing the decoding. Based on patch by c-fos.

..

.. bpo: 33604 .. date: 2018-05-22-11-55-33 .. nonce: 6V4JcO .. section: Library

Remove HMAC default to md5 marked for removal in 3.8 (removal originally planned in 3.6, bump to 3.8 in PR 7062).

..

.. bpo: 33582 .. date: 2018-05-19-15-58-14 .. nonce: qBZPmF .. section: Library

Emit a deprecation warning for inspect.formatargspec

..

.. bpo: 21145 .. date: 2018-05-18-22-52-34 .. nonce: AiQMDx .. section: Library

Add functools.cached_property decorator, for computed properties cached for the life of the instance.

..

.. bpo: 33570 .. date: 2018-05-18-21-50-47 .. nonce: 7CZy4t .. section: Library

Change TLS 1.3 cipher suite settings for compatibility with OpenSSL 1.1.1-pre6 and newer. OpenSSL 1.1.1 will have TLS 1.3 ciphers enabled by default.

..

.. bpo: 28556 .. date: 2018-05-17-22-53-08 .. nonce: C6Hnd1 .. section: Library

Do not simplify arguments to typing.Union. Now Union[Manager, Employee] is not simplified to Employee at runtime. Such simplification previously caused several bugs and limited possibilities for introspection.

..

.. bpo: 12486 .. date: 2018-05-17-22-14-58 .. nonce: HBeh62 .. section: Library

:func:tokenize.generate_tokens is now documented as a public API to tokenize unicode strings. It was previously present but undocumented.

..

.. bpo: 33540 .. date: 2018-05-16-18-10-38 .. nonce: wy9LRV .. section: Library

Add a new block_on_close class attribute to ForkingMixIn and ThreadingMixIn classes of :mod:socketserver.

..

.. bpo: 33548 .. date: 2018-05-16-17-05-48 .. nonce: xWslmx .. section: Library

tempfile._candidate_tempdir_list should consider common TEMP locations

..

.. bpo: 33109 .. date: 2018-05-16-14-57-58 .. nonce: nPLL_S .. section: Library

argparse subparsers are once again not required by default, reverting the change in behavior introduced by bpo-26510 in 3.7.0a2.

..

.. bpo: 33541 .. date: 2018-05-16-12-32-48 .. nonce: kQORPE .. section: Library

Remove unused private method _strptime.LocaleTime.__pad (a.k.a. _LocaleTime__pad).

..

.. bpo: 33536 .. date: 2018-05-16-10-07-40 .. nonce: _s0TE8 .. section: Library

dataclasses.make_dataclass now checks for invalid field names and duplicate fields. Also, added a check for invalid field specifications.

..

.. bpo: 33542 .. date: 2018-05-16-09-30-27 .. nonce: idNAcs .. section: Library

Prevent uuid.get_node from using a DUID instead of a MAC on Windows. Patch by Zvi Effron

..

.. bpo: 26819 .. date: 2018-05-16-05-24-43 .. nonce: taxbVT .. section: Library

Fix race condition with ReadTransport.resume_reading in Windows proactor event loop.

..

.. bpo: 0 .. date: 2018-05-15-18-02-03 .. nonce: pj2Mbb .. section: Library

Fix failure in typing.get_type_hints() when ClassVar was provided as a string forward reference.

..

.. bpo: 33516 .. date: 2018-05-15-17-06-42 .. nonce: ZzARe4 .. section: Library

:class:unittest.mock.MagicMock now supports the __round__ magic method.

..

.. bpo: 28612 .. date: 2018-05-15-15-03-48 .. nonce: E9dz39 .. section: Library

Added support for Site Maps to urllib's RobotFileParser as :meth:RobotFileParser.site_maps() <urllib.robotparser.RobotFileParser.site_maps>. Patch by Lady Red, based on patch by Peter Wirtz.

..

.. bpo: 28167 .. date: 2018-05-15-13-49-13 .. nonce: p4RdQt .. section: Library

Remove platform.linux_distribution, which was deprecated since 3.5.

..

.. bpo: 33504 .. date: 2018-05-15-12-11-13 .. nonce: czsHFg .. section: Library

Switch the default dictionary implementation for :mod:configparser from :class:collections.OrderedDict to the standard :class:dict type.

..

.. bpo: 33505 .. date: 2018-05-14-18-05-35 .. nonce: L8pAyt .. section: Library

Optimize asyncio.ensure_future() by reordering if checks: 1.17x faster.

..

.. bpo: 33497 .. date: 2018-05-14-17-49-34 .. nonce: wWT6XM .. section: Library

Add errors param to cgi.parse_multipart and make an encoding in FieldStorage use the given errors (needed for Twisted). Patch by Amber Brown.

..

.. bpo: 29235 .. date: 2018-05-14-15-01-55 .. nonce: 47Fzwt .. section: Library

The :class:cProfile.Profile class can now be used as a context manager. Patch by Scott Sanderson.

..

.. bpo: 33495 .. date: 2018-05-14-10-29-03 .. nonce: TeGTQJ .. section: Library

Change dataclasses.Fields repr to use the repr of each of its members, instead of str. This makes it more clear what each field actually represents. This is especially true for the 'type' member.

..

.. bpo: 26103 .. date: 2018-05-14-09-07-14 .. nonce: _zU8E2 .. section: Library

Correct inspect.isdatadescriptor to look for __set__ or __delete__. Patch by Aaron Hall.

..

.. bpo: 29209 .. date: 2018-05-12-13-06-41 .. nonce: h5RxYy .. section: Library

Removed the doctype() method and the html parameter of the constructor of :class:~xml.etree.ElementTree.XMLParser. The doctype() method defined in a subclass will no longer be called. Deprecated methods getchildren() and getiterator() in the :mod:~xml.etree.ElementTree module emit now a :exc:DeprecationWarning instead of :exc:PendingDeprecationWarning.

..

.. bpo: 33453 .. date: 2018-05-12-06-01-02 .. nonce: Fj-jMD .. section: Library

Fix dataclasses to work if using literal string type annotations or if using PEP 563 "Postponed Evaluation of Annotations". Only specific string prefixes are detected for both ClassVar ("ClassVar" and "typing.ClassVar") and InitVar ("InitVar" and "dataclasses.InitVar").

..

.. bpo: 28556 .. date: 2018-05-08-16-43-42 .. nonce: _xr5mp .. section: Library

Minor fixes in typing module: add annotations to NamedTuple.__new__, pass *args and **kwds in Generic.__new__. Original PRs by Paulius Šarka and Chad Dombrova.

..

.. bpo: 33365 .. date: 2018-05-08-15-01-10 .. nonce: SicsAd .. section: Library

Print the header values besides the header keys instead just the header keys if debuglevel is set to >0 in :mod:http.client. Patch by Marco Strigl.

..

.. bpo: 20087 .. date: 2018-05-05-18-02-24 .. nonce: lJrvXL .. section: Library

Updated alias mapping with glibc 2.27 supported locales.

..

.. bpo: 33422 .. date: 2018-05-05-09-53-05 .. nonce: 4FtQ0q .. section: Library

Fix trailing quotation marks getting deleted when looking up byte/string literals on pydoc. Patch by Andrés Delfino.

..

.. bpo: 28167 .. date: 2018-05-02-07-26-29 .. nonce: 7FwDfN .. section: Library

The function platform.linux_distribution and platform.dist now trigger a DeprecationWarning and have been marked for removal in Python 3.8

..

.. bpo: 33281 .. date: 2018-05-01-22-35-50 .. nonce: d4jOt4 .. section: Library

Fix ctypes.util.find_library regression on macOS.

..

.. bpo: 33311 .. date: 2018-05-01-22-33-14 .. nonce: 8YPB-k .. section: Library

Text and html output generated by cgitb does not display parentheses if the current call is done directly in the module. Patch by Stéphane Blondon.

..

.. bpo: 27300 .. date: 2018-05-01-02-24-44 .. nonce: LdIXvK .. section: Library

The file classes in tempfile now accept an errors parameter that complements the already existing encoding. Patch by Stephan Hohe.

..

.. bpo: 32933 .. date: 2018-04-30-22-43-31 .. nonce: M3iI_y .. section: Library

:func:unittest.mock.mock_open now supports iteration over the file contents. Patch by Tony Flury.

..

.. bpo: 33217 .. date: 2018-04-30-13-29-47 .. nonce: TENDzd .. section: Library

Raise :exc:TypeError when looking up non-Enum objects in Enum classes and Enum members.

..

.. bpo: 33197 .. date: 2018-04-29-23-56-20 .. nonce: dgRLqr .. section: Library

Update error message when constructing invalid inspect.Parameters Patch by Donghee Na.

..

.. bpo: 33383 .. date: 2018-04-29-11-15-38 .. nonce: g32YWn .. section: Library

Fixed crash in the get() method of the :mod:dbm.ndbm database object when it is called with a single argument.

..

.. bpo: 33375 .. date: 2018-04-28-08-11-35 .. nonce: Dbq1fz .. section: Library

The warnings module now finds the Python file associated with a warning from the code object, rather than the frame's global namespace. This is consistent with how tracebacks and pdb find filenames, and should work better for dynamically executed code.

..

.. bpo: 33336 .. date: 2018-04-27-22-18-38 .. nonce: T8rxn0 .. section: Library

imaplib now allows MOVE command in IMAP4.uid() (RFC 6851: IMAP MOVE Extension) and potentially as a name of supported method of IMAP4 object.

..

.. bpo: 32455 .. date: 2018-04-26-13-31-10 .. nonce: KPWg3K .. section: Library

Added jump parameter to :func:dis.stack_effect.

..

.. bpo: 27485 .. date: 2018-04-25-14-05-21 .. nonce: nclVSU .. section: Library

Rename and deprecate undocumented functions in :func:urllib.parse.

..

.. bpo: 33332 .. date: 2018-04-23-21-41-30 .. nonce: Y6OZ8Z .. section: Library

Add signal.valid_signals() to expose the POSIX sigfillset() functionality.

..

.. bpo: 33251 .. date: 2018-04-23-18-25-36 .. nonce: C_K-J9 .. section: Library

ConfigParser.items() was fixed so that key-value pairs passed in via :func:vars are not included in the resulting output.

..

.. bpo: 33329 .. date: 2018-04-23-13-21-39 .. nonce: lQ-Eod .. section: Library

Fix multiprocessing regression on newer glibcs

..

.. bpo: 33334 .. date: 2018-04-22-20-13-21 .. nonce: 19UMOC .. section: Library

:func:dis.stack_effect now supports all defined opcodes including NOP and EXTENDED_ARG.

..

.. bpo: 991266 .. date: 2018-04-21-00-24-08 .. nonce: h93TP_ .. section: Library

Fix quoting of the Comment attribute of :class:http.cookies.SimpleCookie.

..

.. bpo: 33131 .. date: 2018-04-20-10-43-17 .. nonce: L2E977 .. section: Library

Upgrade bundled version of pip to 10.0.1.

..

.. bpo: 33308 .. date: 2018-04-18-19-12-25 .. nonce: fW75xi .. section: Library

Fixed a crash in the :mod:parser module when converting an ST object to a tree of tuples or lists with line_info=False and col_info=True.

..

.. bpo: 23403 .. date: 2018-04-16-16-21-09 .. nonce: rxR1Q_ .. section: Library

lib2to3 now uses pickle protocol 4 for pre-computed grammars.

..

.. bpo: 33266 .. date: 2018-04-16-15-59-21 .. nonce: w2PAm- .. section: Library

lib2to3 now recognizes rf'...' strings.

..

.. bpo: 11594 .. date: 2018-04-16-08-42-03 .. nonce: QLo4vv .. section: Library

Ensure line-endings are respected when using lib2to3.

..

.. bpo: 33254 .. date: 2018-04-13-15-14-47 .. nonce: DS4KFK .. section: Library

Have :func:importlib.resources.contents and :meth:!importlib.abc.ResourceReader.contents return an :term:iterable instead of an :term:iterator.

..

.. bpo: 33265 .. date: 2018-04-13-08-12-50 .. nonce: KPQRk0 .. section: Library

contextlib.ExitStack and contextlib.AsyncExitStack now use a method instead of a wrapper function for exit callbacks.

..

.. bpo: 33263 .. date: 2018-04-11-20-29-19 .. nonce: B56Hc1 .. section: Library

Fix FD leak in _SelectorSocketTransport Patch by Vlad Starostin.

..

.. bpo: 33256 .. date: 2018-04-10-20-57-14 .. nonce: ndHkqu .. section: Library

Fix display of <module> call in the html produced by cgitb.html(). Patch by Stéphane Blondon.

..

.. bpo: 33144 .. date: 2018-04-10-14-50-30 .. nonce: iZr4et .. section: Library

random.Random() and its subclassing mechanism got optimized to check only once at class/subclass instantiation time whether its getrandbits() method can be relied on by other methods, including randrange(), for the generation of arbitrarily large random integers. Patch by Wolfgang Maier.

..

.. bpo: 33185 .. date: 2018-04-08-22-54-07 .. nonce: Id-Ba9 .. section: Library

Fixed regression when running pydoc with the :option:-m switch. (The regression was introduced in 3.7.0b3 by the resolution of :issue:33053)

This fix also changed pydoc to add os.getcwd() to :data:sys.path when necessary, rather than adding ".".

..

.. bpo: 29613 .. date: 2018-04-07-13-49-39 .. nonce: r6FDnB .. section: Library

Added support for the SameSite cookie flag to the http.cookies module.

..

.. bpo: 33169 .. date: 2018-04-06-14-56-26 .. nonce: ByhDqb .. section: Library

Delete entries of None in :data:sys.path_importer_cache when :meth:importlib.machinery.invalidate_caches is called.

..

.. bpo: 33203 .. date: 2018-04-05-11-09-45 .. nonce: Hje9Py .. section: Library

random.Random.choice() now raises IndexError for empty sequences consistently even when called from subclasses without a getrandbits() implementation.

..

.. bpo: 33224 .. date: 2018-04-04-23-41-30 .. nonce: pyR0jB .. section: Library

Update difflib.mdiff() for :pep:479. Convert an uncaught StopIteration in a generator into a return-statement.

..

.. bpo: 33209 .. date: 2018-04-03-10-37-13 .. nonce: 9sGWE_ .. section: Library

End framing at the end of C implementation of :func:pickle.Pickler.dump.

..

.. bpo: 32861 .. date: 2018-04-02-20-44-54 .. nonce: HeBjzN .. section: Library

The urllib.robotparser's __str__ representation now includes wildcard entries and the "Crawl-delay" and "Request-rate" fields. Also removes extra newlines that were being appended to the end of the string. Patch by Michael Lazar.

..

.. bpo: 23403 .. date: 2018-04-02-16-10-12 .. nonce: KG7ADV .. section: Library

DEFAULT_PROTOCOL in :mod:pickle was bumped to 4. Protocol 4 is described in :pep:3154 and available since Python 3.4. It offers better performance and smaller size compared to protocol 3 introduced in Python 3.0.

..

.. bpo: 20104 .. date: 2018-04-01-19-21-04 .. nonce: -AKcGa .. section: Library

Improved error handling and fixed a reference leak in :func:os.posix_spawn.

..

.. bpo: 33106 .. date: 2018-03-30-01-20-35 .. nonce: zncfvW .. section: Library

Deleting a key from a read-only dbm database raises module specific error instead of KeyError.

..

.. bpo: 33175 .. date: 2018-03-29-04-32-25 .. nonce: _zs1yM .. section: Library

In dataclasses, Field.set_name now looks up the set_name special method on the class, not the instance, of the default value.

..

.. bpo: 32380 .. date: 2018-03-29-03-09-22 .. nonce: NhuGig .. section: Library

Create functools.singledispatchmethod to support generic single dispatch on descriptors and methods.

..

.. bpo: 33141 .. date: 2018-03-26-12-33-13 .. nonce: 23wlxf .. section: Library

Have Field objects pass through set_name to their default values, if they have their own set_name.

..

.. bpo: 33096 .. date: 2018-03-25-13-18-16 .. nonce: ofdbe7 .. section: Library

Allow ttk.Treeview.insert to insert iid that has a false boolean value. Note iid=0 and iid=False would be same. Patch by Garvit Khatri.

..

.. bpo: 32873 .. date: 2018-03-24-19-54-48 .. nonce: cHyoAm .. section: Library

Treat type variables and special typing forms as immutable by copy and pickle. This fixes several minor issues and inconsistencies, and improves backwards compatibility with Python 3.6.

..

.. bpo: 33134 .. date: 2018-03-24-19-34-26 .. nonce: hbVeIX .. section: Library

When computing dataclass's hash, use the lookup table to contain the function which returns the hash value. This is an improvement over looking up a string, and then testing that string to see what to do.

..

.. bpo: 33127 .. date: 2018-03-24-15-08-24 .. nonce: olJmHv .. section: Library

The ssl module now compiles with LibreSSL 2.7.1.

..

.. bpo: 32505 .. date: 2018-03-22-16-05-56 .. nonce: YK1N8v .. section: Library

Raise TypeError if a member variable of a dataclass is of type Field, but doesn't have a type annotation.

..

.. bpo: 33078 .. date: 2018-03-21-17-59-39 .. nonce: PQOniT .. section: Library

Fix the failure on OSX caused by the tests relying on sem_getvalue

..

.. bpo: 33116 .. date: 2018-03-21-16-52-26 .. nonce: Tvzerj .. section: Library

Add 'Field' to dataclasses.all.

..

.. bpo: 32896 .. date: 2018-03-20-20-53-21 .. nonce: ewW3Ln .. section: Library

Fix an error where subclassing a dataclass with a field that uses a default_factory would generate an incorrect class.

..

.. bpo: 33100 .. date: 2018-03-19-20-47-00 .. nonce: chyIO4 .. section: Library

Dataclasses: If a field has a default value that's a MemberDescriptorType, then it's from that field being in slots, not an actual default value.

..

.. bpo: 32953 .. date: 2018-03-18-17-38-48 .. nonce: t8WAWN .. section: Library

If a non-dataclass inherits from a frozen dataclass, allow attributes to be added to the derived class. Only attributes from the frozen dataclass cannot be assigned to. Require all dataclasses in a hierarchy to be either all frozen or all non-frozen.

..

.. bpo: 33097 .. date: 2018-03-18-16-48-23 .. nonce: Yl4gI2 .. section: Library

Raise RuntimeError when executor.submit is called during interpreter shutdown.

..

.. bpo: 32968 .. date: 2018-03-18-15-57-32 .. nonce: E4G7BO .. section: Library

Modulo and floor division involving Fraction and float should return float.

..

.. bpo: 33061 .. date: 2018-03-16-16-07-33 .. nonce: TRTTek .. section: Library

Add missing NoReturn to __all__ in typing.py

..

.. bpo: 33078 .. date: 2018-03-15-07-38-00 .. nonce: RmjUF5 .. section: Library

Fix the size handling in multiprocessing.Queue when a pickling error occurs.

..

.. bpo: 33064 .. date: 2018-03-12-19-58-25 .. nonce: LO2KIY .. section: Library

lib2to3 now properly supports trailing commas after *args and **kwargs in function signatures.

..

.. bpo: 33056 .. date: 2018-03-12-16-40-00 .. nonce: lNN9Eh .. section: Library

FIX properly close leaking fds in concurrent.futures.ProcessPoolExecutor.

..

.. bpo: 33021 .. date: 2018-03-12-00-27-56 .. nonce: m19B9T .. section: Library

Release the GIL during fstat() calls, avoiding hang of all threads when calling mmap.mmap(), os.urandom(), and random.seed(). Patch by Nir Soffer.

..

.. bpo: 31804 .. date: 2018-03-11-19-03-52 .. nonce: i8KUMp .. section: Library

Avoid failing in multiprocessing.Process if the standard streams are closed or None at exit.

..

.. bpo: 33034 .. date: 2018-03-11-08-44-12 .. nonce: bpb23d .. section: Library

Providing an explicit error message when casting the port property to anything that is not an integer value using urlparse() and urlsplit(). Patch by Matt Eaton.

..

.. bpo: 30249 .. date: 2018-03-11-00-20-26 .. nonce: KSkgLB .. section: Library

Improve struct.unpack_from() exception messages for problems with the buffer size and offset.

..

.. bpo: 33037 .. date: 2018-03-09-23-07-07 .. nonce: nAJ3at .. section: Library

Skip sending/receiving data after SSL transport closing.

..

.. bpo: 27683 .. date: 2018-03-07-22-28-17 .. nonce: 572Rv4 .. section: Library

Fix a regression in :mod:ipaddress that result of :meth:hosts is empty when the network is constructed by a tuple containing an integer mask and only 1 bit left for addresses.

..

.. bpo: 22674 .. date: 2018-03-07-19-37-00 .. nonce: 2sIMmM .. section: Library

Add the strsignal() function in the signal module that returns the system description of the given signal, as returned by strsignal(3).

..

.. bpo: 32999 .. date: 2018-03-06-20-30-20 .. nonce: lgFXWl .. section: Library

Fix C implementation of ABC.__subclasscheck__(cls, subclass) crashed when subclass is not a type object.

..

.. bpo: 33009 .. date: 2018-03-06-11-54-59 .. nonce: -Ekysb .. section: Library

Fix inspect.signature() for single-parameter partialmethods.

..

.. bpo: 32969 .. date: 2018-03-06-00-19-41 .. nonce: rGTKa0 .. section: Library

Expose several missing constants in zlib and fix corresponding documentation.

..

.. bpo: 32056 .. date: 2018-03-01-17-49-56 .. nonce: IlpfgE .. section: Library

Improved exceptions raised for invalid number of channels and sample width when read an audio file in modules :mod:!aifc, :mod:wave and :mod:!sunau.

..

.. bpo: 32970 .. date: 2018-02-28-18-39-48 .. nonce: IPWtbS .. section: Library

Improved disassembly of the MAKE_FUNCTION instruction.

..

.. bpo: 32844 .. date: 2018-02-28-13-08-00 .. nonce: u8tnAe .. section: Library

Fix wrong redirection of a low descriptor (0 or 1) to stderr in subprocess if another low descriptor is closed.

..

.. bpo: 32960 .. date: 2018-02-26-20-04-40 .. nonce: 48r0Ml .. section: Library

For dataclasses, disallow inheriting frozen from non-frozen classes, and also disallow inheriting non-frozen from frozen classes. This restriction will be relaxed at a future date.

..

.. bpo: 32713 .. date: 2018-02-26-13-16-36 .. nonce: 55yegW .. section: Library

Fixed tarfile.itn handling of out-of-bounds float values. Patch by Joffrey Fuhrer.

..

.. bpo: 32257 .. date: 2018-02-26-09-08-07 .. nonce: 6ElnUt .. section: Library

The ssl module now contains OP_NO_RENEGOTIATION constant, available with OpenSSL 1.1.0h or 1.1.1.

..

.. bpo: 32951 .. date: 2018-02-25-18-22-01 .. nonce: gHrCXq .. section: Library

Direct instantiation of SSLSocket and SSLObject objects is now prohibited. The constructors were never documented, tested, or designed as public constructors. Users were suppose to use ssl.wrap_socket() or SSLContext.

..

.. bpo: 32929 .. date: 2018-02-25-13-47-48 .. nonce: X2gTDH .. section: Library

Remove the tri-state parameter "hash", and add the boolean "unsafe_hash". If unsafe_hash is True, add a hash function, but if a hash exists, raise TypeError. If unsafe_hash is False, add a hash based on the values of eq= and frozen=. The unsafe_hash=False behavior is the same as the old hash=None behavior. unsafe_hash=False is the default, just as hash=None used to be.

..

.. bpo: 32947 .. date: 2018-02-25-13-06-21 .. nonce: mqStVW .. section: Library

Add OP_ENABLE_MIDDLEBOX_COMPAT and test workaround for TLSv1.3 for future compatibility with OpenSSL 1.1.1.

..

.. bpo: 32146 .. date: 2018-02-25-10-17-23 .. nonce: xOzUFW .. section: Library

Document the interaction between frozen executables and the spawn and forkserver start methods in multiprocessing.

..

.. bpo: 30622 .. date: 2018-02-24-21-40-42 .. nonce: dQjxSe .. section: Library

The ssl module now detects missing NPN support in LibreSSL.

..

.. bpo: 32922 .. date: 2018-02-23-19-12-04 .. nonce: u-xe0B .. section: Library

dbm.open() now encodes filename with the filesystem encoding rather than default encoding.

..

.. bpo: 32759 .. date: 2018-02-23-12-21-41 .. nonce: M-y9GA .. section: Library

Free unused arenas in multiprocessing.heap.

..

.. bpo: 32859 .. date: 2018-02-19-17-46-31 .. nonce: kAT-Xp .. section: Library

In os.dup2, don't check every call whether the dup3 syscall exists or not.

..

.. bpo: 32556 .. date: 2018-02-19-14-27-51 .. nonce: CsRsgr .. section: Library

nt._getfinalpathname, nt._getvolumepathname and nt._getdiskusage now correctly convert from bytes.

..

.. bpo: 21060 .. date: 2018-02-17-19-20-19 .. nonce: S1Z-x6 .. section: Library

Rewrite confusing message from setup.py upload from "No dist file created in earlier command" to the more helpful "Must create and upload files in one command".

..

.. bpo: 32857 .. date: 2018-02-16-14-37-14 .. nonce: -XljAx .. section: Library

In :mod:tkinter, after_cancel(None) now raises a :exc:ValueError instead of canceling the first scheduled function. Patch by Cheryl Sabella.

..

.. bpo: 32852 .. date: 2018-02-15-12-04-29 .. nonce: HDqIxM .. section: Library

Make sure sys.argv remains as a list when running trace.

..

.. bpo: 31333 .. date: 2018-02-15-08-18-52 .. nonce: 4fF-gM .. section: Library

_abc module is added. It is a speedup module with C implementations for various functions and methods in abc. Creating an ABC subclass and calling isinstance or issubclass with an ABC subclass are up to 1.5x faster. In addition, this makes Python start-up up to 10% faster.

Note that the new implementation hides internal registry and caches, previously accessible via private attributes _abc_registry, _abc_cache, and _abc_negative_cache. There are three debugging helper methods that can be used instead _dump_registry, _abc_registry_clear, and _abc_caches_clear.

..

.. bpo: 32841 .. date: 2018-02-14-00-21-24 .. nonce: bvHDOc .. section: Library

Fixed asyncio.Condition issue which silently ignored cancellation after notifying and cancelling a conditional lock. Patch by Bar Harel.

..

.. bpo: 32819 .. date: 2018-02-11-15-54-41 .. nonce: ZTRX2Q .. section: Library

ssl.match_hostname() has been simplified and no longer depends on re and ipaddress module for wildcard and IP addresses. Error reporting for invalid wildcards has been improved.

..

.. bpo: 19675 .. date: 2018-02-10-23-41-05 .. nonce: -dj35- .. section: Library

multiprocessing.Pool no longer leaks processes if its initialization fails.

..

.. bpo: 32394 .. date: 2018-02-10-13-51-56 .. nonce: dFM9SI .. section: Library

socket: Remove TCP_FASTOPEN,TCP_KEEPCNT,TCP_KEEPIDLE,TCP_KEEPINTVL flags on older version Windows during run-time.

..

.. bpo: 31787 .. date: 2018-02-09-21-41-56 .. nonce: owSZ2t .. section: Library

Fixed refleaks of __init__() methods in various modules. (Contributed by Oren Milman)

..

.. bpo: 30157 .. date: 2018-02-09-14-44-43 .. nonce: lEiiAK .. section: Library

Fixed guessing quote and delimiter in csv.Sniffer.sniff() when only the last field is quoted. Patch by Jake Davis.

..

.. bpo: 30688 .. date: 2018-02-08-18-59-11 .. nonce: zBh4TH .. section: Library

Added support of \N{name} escapes in regular expressions. Based on patch by Jonathan Eunice.

..

.. bpo: 32792 .. date: 2018-02-08-00-47-07 .. nonce: NtyDb4 .. section: Library

collections.ChainMap() preserves the order of the underlying mappings.

..

.. bpo: 32775 .. date: 2018-02-07-19-12-10 .. nonce: -T77_c .. section: Library

:func:fnmatch.translate no longer produces patterns which contain set operations. Sets starting with '[' or containing '--', '&&', '~~' or '||' will be interpreted differently in regular expressions in future versions. Currently they emit warnings. fnmatch.translate() now avoids producing patterns containing such sets by accident.

..

.. bpo: 32622 .. date: 2018-02-06-17-58-15 .. nonce: AE0Jz7 .. section: Library

Implement native fast sendfile for Windows proactor event loop.

..

.. bpo: 32777 .. date: 2018-02-05-21-28-28 .. nonce: C-wIXF .. section: Library

Fix a rare but potential pre-exec child process deadlock in subprocess on POSIX systems when marking file descriptors inheritable on exec in the child process. This bug appears to have been introduced in 3.4.

..

.. bpo: 32647 .. date: 2018-02-05-13-31-42 .. nonce: ktmfR_ .. section: Library

The ctypes module used to depend on indirect linking for dlopen. The shared extension is now explicitly linked against libdl on platforms with dl.

..

.. bpo: 32749 .. date: 2018-02-02-17-21-24 .. nonce: u5scIn .. section: Library

A :mod:dbm.dumb database opened with flags 'r' is now read-only. :func:dbm.dumb.open with flags 'r' and 'w' no longer creates a database if it does not exist.

..

.. bpo: 32741 .. date: 2018-02-01-17-54-08 .. nonce: KUvOPL .. section: Library

Implement asyncio.TimerHandle.when() method.

..

.. bpo: 32691 .. date: 2018-02-01-15-53-35 .. nonce: VLWVTq .. section: Library

Use mod_spec.parent when running modules with pdb

..

.. bpo: 32734 .. date: 2018-02-01-01-34-47 .. nonce: gCV9AD .. section: Library

Fixed asyncio.Lock() safety issue which allowed acquiring and locking the same lock multiple times, without it being free. Patch by Bar Harel.

..

.. bpo: 32727 .. date: 2018-01-30-17-46-18 .. nonce: aHVsRC .. section: Library

Do not include name field in SMTP envelope from address. Patch by Stéphane Wirtel

..

.. bpo: 31453 .. date: 2018-01-21-15-01-50 .. nonce: cZiZBe .. section: Library

Add TLSVersion constants and SSLContext.maximum_version / minimum_version attributes. The new API wraps OpenSSL 1.1 https://web.archive.org/web/20180309043602/https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_min_proto_version.html feature.

..

.. bpo: 24334 .. date: 2018-01-20-23-17-25 .. nonce: GZuQLv .. section: Library

Internal implementation details of ssl module were cleaned up. The SSLSocket has one less layer of indirection. Owner and session information are now handled by the SSLSocket and SSLObject constructor. Channel binding implementation has been simplified.

..

.. bpo: 31848 .. date: 2018-01-18-23-34-17 .. nonce: M2cldy .. section: Library

Fix the error handling in Aifc_read.initfp() when the SSND chunk is not found. Patch by Zackery Spytz.

..

.. bpo: 32585 .. date: 2018-01-18-13-09-00 .. nonce: qpeijr .. section: Library

Add Ttk spinbox widget to :mod:tkinter.ttk. Patch by Alan D Moore.

..

.. bpo: 32512 .. date: 2018-01-07-17-43-10 .. nonce: flC-dE .. section: Library

:mod:profile CLI accepts -m module_name as an alternative to script path.

..

.. bpo: 8525 .. date: 2018-01-01-00-16-59 .. nonce: Dq8s63 .. section: Library

help() on a type now displays builtin subclasses. This is intended primarily to help with notification of more specific exception subclasses.

Patch by Sanyam Khurana.

..

.. bpo: 31639 .. date: 2017-12-27-21-55-19 .. nonce: l3avDJ .. section: Library

http.server now exposes a ThreadingHTTPServer class and uses it when the module is run with -m to cope with web browsers pre-opening sockets.

..

.. bpo: 29877 .. date: 2017-12-16-11-40-52 .. nonce: SfWhmz .. section: Library

compileall: import ProcessPoolExecutor only when needed, preventing hangs on low resource platforms

..

.. bpo: 32221 .. date: 2017-12-06-10-10-10 .. nonce: ideco_ .. section: Library

Various functions returning tuple containing IPv6 addresses now omit %scope part since the same information is already encoded in scopeid tuple item. Especially this speeds up :func:socket.recvfrom when it receives multicast packet since useless resolving of network interface name is omitted.

..

.. bpo: 32147 .. date: 2017-11-28-10-23-13 .. nonce: PI2k1Y .. section: Library

:func:binascii.unhexlify is now up to 2 times faster. Patch by Sergey Fedoseev.

..

.. bpo: 30693 .. date: 2017-11-27-15-09-49 .. nonce: yC4mJ8 .. section: Library

The TarFile class now recurses directories in a reproducible way.

..

.. bpo: 30693 .. date: 2017-11-27-15-09-49 .. nonce: yC4mJ7 .. section: Library

The ZipFile class now recurses directories in a reproducible way.

..

.. bpo: 31680 .. date: 2017-11-01-15-44-48 .. nonce: yO6oSC .. section: Library

Added :data:curses.ncurses_version.

..

.. bpo: 31908 .. date: 2017-10-31 .. nonce: g4xh8x .. section: Library

Fix output of cover files for trace module command-line tool. Previously emitted cover files only when --missing option was used. Patch by Michael Selik.

..

.. bpo: 31608 .. date: 2017-10-29-10-37-55 .. nonce: wkp8Nw .. section: Library

Raise a TypeError instead of crashing if a collections.deque subclass returns a non-deque from __new__. Patch by Oren Milman.

..

.. bpo: 31425 .. date: 2017-10-24-10-18-35 .. nonce: 1lgw47 .. section: Library

Add support for sockets of the AF_QIPCRTR address family, supported by the Linux kernel. This is used to communicate with services, such as GPS or radio, running on Qualcomm devices. Patch by Bjorn Andersson.

..

.. bpo: 22005 .. date: 2017-10-12-22-39-55 .. nonce: lGP-sc .. section: Library

Implemented unpickling instances of :class:~datetime.datetime, :class:~datetime.date and :class:~datetime.time pickled by Python 2. encoding='latin1' should be used for successful decoding.

..

.. bpo: 27645 .. date: 2017-10-05-20-41-48 .. nonce: 1Y_Wag .. section: Library

:class:sqlite3.Connection now exposes a :class:~sqlite3.Connection.backup method, if the underlying SQLite library is at version 3.6.11 or higher. Patch by Lele Gaifax.

..

.. bpo: 16865 .. date: 2017-09-29-16-40-38 .. nonce: l-f6I_ .. section: Library

Support arrays >=2GiB in :mod:ctypes. Patch by Segev Finer.

..

.. bpo: 31508 .. date: 2017-09-19-12-38-31 .. nonce: pDsFJl .. section: Library

Removed support of arguments in tkinter.ttk.Treeview.selection. It was deprecated in 3.6. Use specialized methods like selection_set for changing the selection.

..

.. bpo: 29456 .. date: 2017-08-24-17-55-39 .. nonce: XaB3MP .. section: Library

Fix bugs in hangul normalization: u1176, u11a7 and u11c3

..

.. bpo: 21257 .. date: 2019-01-15-21-45-27 .. nonce: U9LKkx .. section: Documentation

Document :func:http.client.parse_headers.

..

.. bpo: 34764 .. date: 2018-12-23-23-52-31 .. nonce: DwOGeT .. section: Documentation

Improve example of iter() with 2nd sentinel argument.

..

.. bpo: 35564 .. date: 2018-12-22-22-52-05 .. nonce: TuEU_D .. section: Documentation

Explicitly set master_doc variable in conf.py for compliance with Sphinx 2.0

..

.. bpo: 35511 .. date: 2018-12-16-16-14-44 .. nonce: iVcyav .. section: Documentation

Specified that profile.Profile class doesn't not support enable or disable methods. Also, elaborated that Profile object as a context manager is only supported in cProfile module.

..

.. bpo: 10536 .. date: 2018-11-04-22-03-56 .. nonce: a0IsfE .. section: Documentation

Enhance the gettext docs. Patch by Éric Araujo

..

.. bpo: 35089 .. date: 2018-10-28-16-51-31 .. nonce: _stCpS .. section: Documentation

Remove mention of typing.io and typing.re. Their types should be imported from typing directly.

..

.. bpo: 35038 .. date: 2018-10-25-17-45-09 .. nonce: 2eVOYS .. section: Documentation

Fix the documentation about an unexisting f_restricted attribute in the frame object. Patch by Stéphane Wirtel

..

.. bpo: 35042 .. date: 2018-10-22-14-17-57 .. nonce: 1UGv1a .. section: Documentation

Replace PEP XYZ by the pep role and allow to use the direct links to the PEPs.

..

.. bpo: 35044 .. date: 2018-10-22-14-09-58 .. nonce: qjvNtI .. section: Documentation

Fix the documentation with the role exc for the appropriated exception. Patch by Stéphane Wirtel

..

.. bpo: 35035 .. date: 2018-10-21-02-20-36 .. nonce: 4zBObK .. section: Documentation

Rename documentation for :mod:email.utils to email.utils.rst.

..

.. bpo: 34967 .. date: 2018-10-13-07-39-57 .. nonce: E40tFP .. section: Documentation

Use app.add_object_type() instead of the deprecated Sphinx function app.description_unit()

..

.. bpo: 34913 .. date: 2018-10-10-00-34-08 .. nonce: kVd1Fv .. section: Documentation

Add documentation about the new command line interface of the gzip module.

..

.. bpo: 32174 .. date: 2018-10-08-19-15-28 .. nonce: YO9CYm .. section: Documentation

chm document displays non-ASCII characters properly on some MBCS Windows systems.

..

.. bpo: 11233 .. date: 2018-10-03-20-39-25 .. nonce: BX6Gen .. section: Documentation

Create availability directive for documentation. Original patch by Georg Brandl.

..

.. bpo: 34790 .. date: 2018-09-24-12-47-08 .. nonce: G2KXIH .. section: Documentation

Document how passing coroutines to asyncio.wait() can be confusing.

..

.. bpo: 34552 .. date: 2018-09-12-10-18-04 .. nonce: p9PoYv .. section: Documentation

Make clear that == operator sometimes is equivalent to is. The <, <=, > and >= operators are only defined where they make sense.

..

.. bpo: 28617 .. date: 2018-09-06-22-39-47 .. nonce: MjnJLz .. section: Documentation

Fixed info in the stdtypes docs concerning the types that support membership tests.

..

.. bpo: 20177 .. date: 2018-07-28-17-17-42 .. nonce: cOZJWp .. section: Documentation

Migrate datetime.date.fromtimestamp to Argument Clinic. Patch by Tim Hoffmann.

..

.. bpo: 34065 .. date: 2018-07-07-20-38-41 .. nonce: 1snofM .. section: Documentation

Fix wrongly written basicConfig documentation markup syntax

..

.. bpo: 33460 .. date: 2018-06-22-08-38-29 .. nonce: kHt4D0 .. section: Documentation

replaced ellipsis with correct error codes in tutorial chapter 3.

..

.. bpo: 33847 .. date: 2018-06-15-14-58-45 .. nonce: IIDp6t .. section: Documentation

Add '@' operator entry to index.

..

.. bpo: 33409 .. date: 2018-06-08-23-46-01 .. nonce: r4z9MM .. section: Documentation

Clarified the relationship between :pep:538's PYTHONCOERCECLOCALE and PEP 540's PYTHONUTF8 mode.

..

.. bpo: 33197 .. date: 2018-06-08-23-37-14 .. nonce: OERTKf .. section: Documentation

Add versionadded tag to the documentation of ParameterKind.description

..

.. bpo: 17045 .. date: 2018-06-07-08-33-45 .. nonce: ZNx6KU .. section: Documentation

Improve the C-API doc for PyTypeObject. This includes adding several quick-reference tables and a lot of missing slot/typedef entries. The existing entries were also cleaned up with a slightly more consistent format.

..

.. bpo: 33736 .. date: 2018-06-01-12-27-40 .. nonce: JVegIu .. section: Documentation

Improve the documentation of :func:asyncio.open_connection, :func:asyncio.start_server and their UNIX socket counterparts.

..

.. bpo: 23859 .. date: 2018-05-29-16-02-31 .. nonce: E5gba1 .. section: Documentation

Document that asyncio.wait() does not cancel its futures on timeout.

..

.. bpo: 32436 .. date: 2018-05-23-11-59-51 .. nonce: S1LGPa .. section: Documentation

Document :pep:567 changes to asyncio.

..

.. bpo: 33604 .. date: 2018-05-22-11-47-14 .. nonce: 5YHTpz .. section: Documentation

Update HMAC md5 default to a DeprecationWarning, bump removal to 3.8.

..

.. bpo: 33594 .. date: 2018-05-21-14-36-12 .. nonce: -HRcyX .. section: Documentation

Document getargspec, from_function and from_builtin as deprecated in their respective docstring, and include version since deprecation in DeprecationWarning message.

..

.. bpo: 33503 .. date: 2018-05-14-20-08-58 .. nonce: Wvt0qg .. section: Documentation

Fix broken pypi link

..

.. bpo: 33421 .. date: 2018-05-14-15-15-41 .. nonce: 3GU_QO .. section: Documentation

Add missing documentation for typing.AsyncContextManager.

..

.. bpo: 33487 .. date: 2018-05-13-14-44-30 .. nonce: iLDzFb .. section: Documentation

BZ2file now emit a DeprecationWarning when buffering=None is passed, the deprecation message and documentation also now explicitly state it is deprecated since 3.0.

..

.. bpo: 33378 .. date: 2018-04-29-04-02-18 .. nonce: -anAHN .. section: Documentation

Add Korean language switcher for https://docs.python.org/3/

..

.. bpo: 33276 .. date: 2018-04-20-14-09-36 .. nonce: rA1z_3 .. section: Documentation

Clarify that the __path__ attribute on modules cannot be just any value.

..

.. bpo: 33201 .. date: 2018-04-01-21-03-41 .. nonce: aa8Lkl .. section: Documentation

Modernize documentation for writing C extension types.

..

.. bpo: 33195 .. date: 2018-04-01-14-30-36 .. nonce: dRS-XX .. section: Documentation

Deprecate Py_UNICODE usage in c-api/arg document. Py_UNICODE related APIs are deprecated since Python 3.3, but it is missed in the document.

..

.. bpo: 33126 .. date: 2018-03-28-17-03-17 .. nonce: 5UGkNv .. section: Documentation

Document PyBuffer_ToContiguous().

..

.. bpo: 27212 .. date: 2018-03-22-19-23-04 .. nonce: wrE5KR .. section: Documentation

Modify documentation for the :func:islice recipe to consume initial values up to the start index.

..

.. bpo: 28247 .. date: 2018-03-20-20-11-05 .. nonce: -V-WS- .. section: Documentation

Update :mod:zipapp documentation to describe how to make standalone applications.

..

.. bpo: 18802 .. date: 2018-03-11-18-53-47 .. nonce: JhAqH3 .. section: Documentation

Documentation changes for ipaddress. Patch by Jon Foster and Berker Peksag.

..

.. bpo: 27428 .. date: 2018-03-11-00-16-56 .. nonce: B7A8FT .. section: Documentation

Update documentation to clarify that WindowsRegistryFinder implements MetaPathFinder. (Patch by Himanshu Lakhara)

..

.. bpo: 28124 .. date: 2018-02-25-16-33-35 .. nonce: _uzkgq .. section: Documentation

The ssl module function ssl.wrap_socket() has been de-emphasized and deprecated in favor of the more secure and efficient SSLContext.wrap_socket() method.

..

.. bpo: 17232 .. date: 2018-02-23-12-48-03 .. nonce: tmuTKL .. section: Documentation

Clarify docs for -O and -OO. Patch by Terry Reedy.

..

.. bpo: 32436 .. date: 2018-02-14-11-10-41 .. nonce: TTJ2jb .. section: Documentation

Add documentation for the contextvars module (PEP 567).

..

.. bpo: 32800 .. date: 2018-02-10-15-16-04 .. nonce: FyrqCk .. section: Documentation

Update link to w3c doc for xml default namespaces.

..

.. bpo: 11015 .. date: 2018-02-10-12-48-38 .. nonce: -gUf34 .. section: Documentation

Update :mod:test.support documentation.

..

.. bpo: 32613 .. date: 2018-02-05-15-05-53 .. nonce: TDjgM1 .. section: Documentation

Update the faq/windows.html to use the py command from PEP 397 instead of python.

..

.. bpo: 8722 .. date: 2018-02-03-06-11-37 .. nonce: MPyVyj .. section: Documentation

Document :meth:__getattr__ behavior when property :meth:get method raises :exc:AttributeError.

..

.. bpo: 32614 .. date: 2018-02-02-07-41-57 .. nonce: LSqzGw .. section: Documentation

Modify RE examples in documentation to use raw strings to prevent :exc:DeprecationWarning and add text to REGEX HOWTO to highlight the deprecation.

..

.. bpo: 20709 .. date: 2018-02-01-10-57-24 .. nonce: 1flcnc .. section: Documentation

Remove the paragraph where we explain that os.utime() does not support a directory as path under Windows. Patch by Jan-Philip Gehrcke

..

.. bpo: 32722 .. date: 2018-01-30-11-28-27 .. nonce: frdp6A .. section: Documentation

Remove the bad example in the tutorial of the Generator Expression. Patch by Stéphane Wirtel

..

.. bpo: 31972 .. date: 2018-01-25-14-23-12 .. nonce: w1m_8r .. section: Documentation

Improve docstrings for pathlib.PurePath subclasses.

..

.. bpo: 30607 .. date: 2018-01-25-13-58-49 .. nonce: 4dXxiq .. section: Documentation

Use the externalized python-docs-theme package when building the documentation.

..

.. bpo: 8243 .. date: 2018-01-13-20-30-53 .. nonce: s98r28 .. section: Documentation

Add a note about curses.addch and curses.addstr exception behavior when writing outside a window, or pad.

..

.. bpo: 32337 .. date: 2017-12-22-17-29-37 .. nonce: eZe-ID .. section: Documentation

Update documentation related with dict order.

..

.. bpo: 25041 .. date: 2017-10-23-13-41-12 .. nonce: iAo2gW .. section: Documentation

Document AF_PACKET in the :mod:socket module.

..

.. bpo: 31432 .. date: 2017-09-13-07-14-59 .. nonce: yAY4Z3 .. section: Documentation

Clarify meaning of CERT_NONE, CERT_OPTIONAL, and CERT_REQUIRED flags for ssl.SSLContext.verify_mode.

..

.. bpo: 35772 .. date: 2019-01-18-12-19-19 .. nonce: sGBbsn .. section: Tests

Fix sparse file tests of test_tarfile on ppc64 with the tmpfs filesystem. Fix the function testing if the filesystem supports sparse files: create a file which contains data and "holes", instead of creating a file which contains no data. tmpfs effective block size is a page size (tmpfs lives in the page cache). RHEL uses 64 KiB pages on aarch64, ppc64, ppc64le, only s390x and x86_64 use 4 KiB pages, whereas the test punch holes of 4 KiB.

..

.. bpo: 35045 .. date: 2019-01-10-18-35-42 .. nonce: qdd6d9 .. section: Tests

Make ssl tests less strict and also accept TLSv1 as system default. The changes unbreaks test_min_max_version on Fedora 29.

..

.. bpo: 32710 .. date: 2019-01-07-23-34-41 .. nonce: Hzo1b8 .. section: Tests

test_asyncio/test_sendfile.py now resets the event loop policy using :func:tearDownModule as done in other tests, to prevent a warning when running tests on Windows.

..

.. bpo: 33717 .. date: 2019-01-07-23-22-44 .. nonce: GhHXv8 .. section: Tests

test.pythoninfo now logs information of all clocks, not only time.time() and time.perf_counter().

..

.. bpo: 35488 .. date: 2019-01-04-21-34-53 .. nonce: U7JJzP .. section: Tests

Add a test to pathlib's Path.match() to verify it does not support glob-style ** recursive pattern matching.

..

.. bpo: 31731 .. date: 2018-12-18-23-20-39 .. nonce: tcv85C .. section: Tests

Fix a race condition in check_interrupted_write() of test_io: create directly the thread with SIGALRM signal blocked, rather than blocking the signal later from the thread. Previously, it was possible that the thread gets the signal before the signal is blocked.

..

.. bpo: 35424 .. date: 2018-12-18-22-36-53 .. nonce: 1Pz4IS .. section: Tests

Fix test_multiprocessing_main_handling: use :class:multiprocessing.Pool with a context manager and then explicitly join the pool.

..

.. bpo: 35519 .. date: 2018-12-17-16-41-45 .. nonce: RR3L_w .. section: Tests

Rename :mod:test.bisect module to :mod:test.bisect_cmd to avoid conflict with :mod:bisect module when running directly a test like ./python Lib/test/test_xmlrpc.py.

..

.. bpo: 35513 .. date: 2018-12-16-23-36-47 .. nonce: k4WHlA .. section: Tests

Replace :func:time.time with :func:time.monotonic in tests to measure time delta.

..

.. bpo: 34279 .. date: 2018-12-12-18-20-18 .. nonce: DhKcuP .. section: Tests

:func:test.support.run_unittest no longer raise :exc:TestDidNotRun if the test result contains skipped tests. The exception is now only raised if no test have been run and no test have been skipped.

..

.. bpo: 35412 .. date: 2018-12-12-18-07-58 .. nonce: kbuJor .. section: Tests

Add testcase to test_future4: check unicode literal.

..

.. bpo: 26704 .. date: 2018-12-10-13-18-37 .. nonce: DBAN4c .. section: Tests

Added test demonstrating double-patching of an instance method. Patch by Anthony Sottile.

..

.. bpo: 33725 .. date: 2018-12-09-01-27-29 .. nonce: TaGayj .. section: Tests

test_multiprocessing_fork may crash on recent versions of macOS. Until the issue is resolved, skip the test on macOS.

..

.. bpo: 35352 .. date: 2018-11-30-17-18-56 .. nonce: 8bD7GC .. section: Tests

Modify test_asyncio to use the certificate set from the test directory.

..

.. bpo: 35317 .. date: 2018-11-26-16-54-21 .. nonce: jByGP2 .. section: Tests

Fix mktime() overflow error in test_email: run test_localtime_daylight_true_dst_true() and test_localtime_daylight_false_dst_true() with a specific timezone.

..

.. bpo: 21263 .. date: 2018-11-04-20-17-09 .. nonce: T3qo9r .. section: Tests

After several reports that test_gdb does not work properly on macOS and since gdb is not shipped by default anymore, test_gdb is now skipped on macOS when LLVM Clang has been used to compile Python. Patch by Lysandros Nikolaou

..

.. bpo: 34279 .. date: 2018-10-27-13-41-55 .. nonce: v0Xqxe .. section: Tests

regrtest issue a warning when no tests have been executed in a particular test file. Also, a new final result state is issued if no test have been executed across all test files. Patch by Pablo Galindo.

..

.. bpo: 34962 .. date: 2018-10-11-22-34-27 .. nonce: 0PLBi8 .. section: Tests

make docstest in Doc now passes., and is enforced in CI

..

.. bpo: 23596 .. date: 2018-10-09-23-51-07 .. nonce: rdnert .. section: Tests

Use argparse for the command line of the gzip module. Patch by Antony Lee

..

.. bpo: 34537 .. date: 2018-09-21-17-33-41 .. nonce: GImYtZ .. section: Tests

Fix test_gdb.test_strings() when LC_ALL=C and GDB was compiled with Python 3.6 or earlier.

..

.. bpo: 34587 .. date: 2018-09-13-20-58-07 .. nonce: rCcxp3 .. section: Tests

test_socket: Remove RDSTest.testCongestion(). The test tries to fill the receiver's socket buffer and expects an error. But the RDS protocol doesn't require that. Moreover, the Linux implementation of RDS expects that the producer of the messages reduces its rate, it's not the role of the receiver to trigger an error. The test fails on Fedora 28 by design, so just remove it.

..

.. bpo: 34661 .. date: 2018-09-13-09-53-15 .. nonce: bdTamP .. section: Tests

Fix test_shutil if unzip doesn't support -t.

..

.. bpo: 34200 .. date: 2018-09-12-17-00-34 .. nonce: dfxYQK .. section: Tests

Fixed non-deterministic flakiness of test_pkg by not using the scary test.support.module_cleanup() logic to save and restore sys.modules contents between test cases.

..

.. bpo: 34569 .. date: 2018-09-09-14-36-59 .. nonce: okj1Xh .. section: Tests

The experimental PEP 554 data channels now correctly pass negative PyLong objects between subinterpreters on 32-bit systems. Patch by Michael Felt.

..

.. bpo: 34594 .. date: 2018-09-05-23-50-21 .. nonce: tqL-GS .. section: Tests

Fix usage of hardcoded errno values in the tests.

..

.. bpo: 34579 .. date: 2018-09-04-15-16-42 .. nonce: bp4HdM .. section: Tests

Fix test_embed for AIX Patch by Michael Felt

..

.. bpo: 34542 .. date: 2018-08-29-16-30-52 .. nonce: 9stVAW .. section: Tests

Use 3072 RSA keys and SHA-256 signature for test certs and keys.

..

.. bpo: 11193 .. date: 2018-08-26-13-12-34 .. nonce: H8fCGa .. section: Tests

Remove special condition for AIX in test_subprocess.test_undecodable_env

..

.. bpo: 34347 .. date: 2018-08-25-13-28-18 .. nonce: IsRDPB .. section: Tests

Fix test_utf8_mode.test_cmd_line for AIX

..

.. bpo: 34490 .. date: 2018-08-24-20-23-15 .. nonce: vb2cx4 .. section: Tests

On AIX with AF_UNIX family sockets getsockname() does not provide 'sockname', so skip calls to transport.get_extra_info('sockname')

..

.. bpo: 34391 .. date: 2018-08-16-18-48-47 .. nonce: ouNfxC .. section: Tests

Fix ftplib test for TLS 1.3 by reading from data socket.

..

.. bpo: 11192 .. date: 2018-08-14-20-50-07 .. nonce: g7TwYm .. section: Tests

Fix test_socket on AIX 6.1 and later IPv6 zone id supports only supported by inet_pton6_zone(). Switch to runtime-based platform.system() to establish current platform rather than build-time based sys.platform()

..

.. bpo: 34399 .. date: 2018-08-14-10-47-44 .. nonce: D_jd1G .. section: Tests

Update all RSA keys and DH params to use at least 2048 bits.

..

.. bpo: 34373 .. date: 2018-08-10-16-17-51 .. nonce: SKdb1k .. section: Tests

Fix test_mktime and test_pthread_getcpuclickid tests for AIX Add range checking for _PyTime_localtime for AIX Patch by Michael Felt

..

.. bpo: 11191 .. date: 2018-08-08-22-41-30 .. nonce: eq9tSH .. section: Tests

Skip the distutils test 'test_search_cpp' when using XLC as compiler patch by aixtools (Michael Felt)

..

.. bpo: 0 .. date: 2018-07-10-18-53-46 .. nonce: UBQJBc .. section: Tests

Improved an error message when mock assert_has_calls fails.

..

.. bpo: 33746 .. date: 2018-06-19-17-55-46 .. nonce: Sz7avn .. section: Tests

Fix test_unittest when run in verbose mode.

..

.. bpo: 33901 .. date: 2018-06-19-14-04-21 .. nonce: OFW1Sr .. section: Tests

Fix test_dbm_gnu on macOS with gdbm 1.15: add a larger value to make sure that the file size changes.

..

.. bpo: 33873 .. date: 2018-06-16-01-37-31 .. nonce: d86vab .. section: Tests

Fix a bug in regrtest that caused an extra test to run if --huntrleaks/-R was used. Exit with error in case that invalid parameters are specified to --huntrleaks/-R (at least one warmup run and one repetition must be used).

..

.. bpo: 33562 .. date: 2018-06-01-14-25-31 .. nonce: GutEHf .. section: Tests

Check that a global asyncio event loop policy is not left behind by any tests.

..

.. bpo: 33655 .. date: 2018-05-26-16-01-40 .. nonce: Frb4LA .. section: Tests

Ignore test_posix_fallocate failures on BSD platforms that might be due to running on ZFS.

..

.. bpo: 32962 .. date: 2018-05-10-16-59-15 .. nonce: S-rcIN .. section: Tests

Fixed test_gdb when Python is compiled with flags -mcet -fcf-protection -O0.

..

.. bpo: 33358 .. date: 2018-04-27-11-46-35 .. nonce: _OcR59 .. section: Tests

Fix test_embed.test_pre_initialization_sys_options() when the interpreter is built with --enable-shared.

..

.. bpo: 32872 .. date: 2018-03-28-01-35-02 .. nonce: J5NDUj .. section: Tests

Avoid regrtest compatibility issue with namespace packages.

..

.. bpo: 32517 .. date: 2018-03-09-07-05-12 .. nonce: ugc1iW .. section: Tests

Fix failing test_asyncio on macOS 10.12.2+ due to transport of KqueueSelector loop was not being closed.

..

.. bpo: 32663 .. date: 2018-01-25-18-10-47 .. nonce: IKDsqu .. section: Tests

Making sure the SMTPUTF8SimTests class of tests gets run in test_smtplib.py.

..

.. bpo: 27643 .. date: 2018-01-12-09-05-19 .. nonce: _6z49y .. section: Tests

Test_C test case needs "signed short" bitfields, but the IBM XLC compiler (on AIX) does not support this Skip the code and test when AIX and XLC are used

Applicable to Python2-2.7 and later

..

.. bpo: 19417 .. date: 2018-01-08-13-33-47 .. nonce: 2asoXy .. section: Tests

Add test_bdb.py.

..

.. bpo: 31809 .. date: 2017-10-18-18-07-45 .. nonce: KlQrkE .. section: Tests

Add tests to verify connection with secp ECDH curves.

..

.. bpo: 34691 .. date: 2019-02-02-13-34-05 .. nonce: B-Lsj4 .. section: Build

The _contextvars module is now built into the core Python library on Windows.

..

.. bpo: 35683 .. date: 2019-01-10-11-37-18 .. nonce: pf5Oos .. section: Build

Improved Azure Pipelines build steps and now verifying layouts correctly

..

.. bpo: 35642 .. date: 2019-01-02-11-23-33 .. nonce: pjkhJe .. section: Build

Remove asynciomodule.c from pythoncore.vcxproj

..

.. bpo: 35550 .. date: 2018-12-29-10-19-43 .. nonce: BTuu8e .. section: Build

Fix incorrect Solaris #ifdef checks to look for __sun && __SVR4 instead of sun when compiling.

..

.. bpo: 35499 .. date: 2018-12-14-19-36-05 .. nonce: 9yAldM .. section: Build

make profile-opt no longer replaces CFLAGS_NODIST with CFLAGS. It now adds profile-guided optimization (PGO) flags to CFLAGS_NODIST: existing CFLAGS_NODIST flags are kept.

..

.. bpo: 35257 .. date: 2018-12-05-22-28-40 .. nonce: dmcd_s .. section: Build

Avoid leaking the linker flags from Link Time Optimizations (LTO) into distutils when compiling C extensions.

..

.. bpo: 35351 .. date: 2018-12-04-15-33-28 .. nonce: ZhhBfT .. section: Build

When building Python with clang and LTO, LTO flags are no longer passed into CFLAGS to build third-party C extensions through distutils.

..

.. bpo: 35139 .. date: 2018-11-01-15-01-23 .. nonce: XZTttb .. section: Build

Fix a compiler error when statically linking pyexpat in Modules/Setup.

..

.. bpo: 35059 .. date: 2018-10-26-14-49-19 .. nonce: PKsBxP .. section: Build

PCbuild: Set InlineFunctionExpansion to OnlyExplicitInline ("/Ob1" option) in pyproject.props in Debug mode to expand functions marked as inline. This change should make Python compiled in Debug mode a little bit faster on Windows.

..

.. bpo: 35011 .. date: 2018-10-17-17-38-57 .. nonce: GgoPIC .. section: Build

Restores the use of pyexpatns.h to isolate our embedded copy of the expat C library so that its symbols do not conflict at link or dynamic loading time with an embedding application or other extension modules with their own version of libexpat.

..

.. bpo: 28015 .. date: 2018-10-16-12-22-36 .. nonce: ylSgFh .. section: Build

Have --with-lto works correctly with clang.

..

.. bpo: 34765 .. date: 2018-09-26-17-29-10 .. nonce: AvxdVj .. section: Build

Update the outdated install-sh file to the latest revision from automake v1.16.1

..

.. bpo: 34585 .. date: 2018-09-18-16-28-31 .. nonce: CGMu0h .. section: Build

Check for floating-point byte order in configure.ac using compilation tests instead of executing code, so that these checks work in cross-compiled builds.

..

.. bpo: 34710 .. date: 2018-09-17-13-56-12 .. nonce: ARqIAK .. section: Build

Fixed SSL module build with OpenSSL & pedantic CFLAGS.

..

.. bpo: 34582 .. date: 2018-09-14-09-53-21 .. nonce: j3omgk .. section: Build

Add JUnit XML output for regression tests and update Azure DevOps builds.

..

.. bpo: 34081 .. date: 2018-09-06-07-15-20 .. nonce: cuSTnH .. section: Build

Make Sphinx warnings as errors in the Docs Makefile.

..

.. bpo: 34555 .. date: 2018-08-31-19-41-09 .. nonce: dfQcnm .. section: Build

Fix for case where it was not possible to have both HAVE_LINUX_VM_SOCKETS_H and HAVE_SOCKADDR_ALG be undefined.

..

.. bpo: 33015 .. date: 2018-08-24-09-48-25 .. nonce: s21y74 .. section: Build

Fix an undefined behaviour in the pthread implementation of :c:func:PyThread_start_new_thread: add a function wrapper to always return NULL.

..

.. bpo: 34245 .. date: 2018-07-27-09-52-48 .. nonce: bBV0NI .. section: Build

The Python shared library is now installed with write permission (mode 0755), which is the standard way of installing such libraries.

..

.. bpo: 34121 .. date: 2018-07-15-16-49-06 .. nonce: 74G_lo .. section: Build

Fix detection of C11 atomic support on clang.

..

.. bpo: 32430 .. date: 2018-07-10-21-33-25 .. nonce: UN3Nk8 .. section: Build

Rename Modules/Setup.dist to Modules/Setup, and remove the necessity to copy the former manually to the latter when updating the local source tree.

..

.. bpo: 30345 .. date: 2018-06-15-18-18-16 .. nonce: j-xRE1 .. section: Build

Add -g to LDFLAGS when compiling with LTO to get debug symbols.

..

.. bpo: 5755 .. date: 2018-06-04-21-34-34 .. nonce: 65GmCj .. section: Build

Move -Wstrict-prototypes option to CFLAGS_NODIST from OPT. This option emitted annoying warnings when building extension modules written in C++.

..

.. bpo: 33614 .. date: 2018-05-28-11-40-22 .. nonce: 28e0sE .. section: Build

Ensures module definition files for the stable ABI on Windows are correctly regenerated.

..

.. bpo: 33648 .. date: 2018-05-25-13-05-51 .. nonce: bJ4JZH .. section: Build

The --with-c-locale-warning configuration flag has been removed. It has had no effect for about a year.

..

.. bpo: 33522 .. date: 2018-05-15-12-44-50 .. nonce: mJoNcA .. section: Build

Enable CI builds on Visual Studio Team Services at https://python.visualstudio.com/cpython

..

.. bpo: 33512 .. date: 2018-05-15-02-07-49 .. nonce: X4Fy1Q .. section: Build

configure's check for "long double" has been simplified

..

.. bpo: 33483 .. date: 2018-05-13-17-21-54 .. nonce: WOs-en .. section: Build

C compiler is now correctly detected from the standard environment variables. --without-gcc and --with-icc options have been removed.

..

.. bpo: 33394 .. date: 2018-04-30-17-36-46 .. nonce: _Vdi4t .. section: Build

Enable the verbose build for extension modules, when GNU make is passed macros on the command line.

..

.. bpo: 33393 .. date: 2018-04-30-17-19-37 .. nonce: HkVCqI .. section: Build

Update config.guess and config.sub files.

..

.. bpo: 33377 .. date: 2018-04-30-16-53-00 .. nonce: QBh6vP .. section: Build

Add new triplets for mips r6 and riscv variants (used in extension suffixes).

..

.. bpo: 32232 .. date: 2018-04-17-00-38-19 .. nonce: o7G_UO .. section: Build

By default, modules configured in Modules/Setup are no longer built with -DPy_BUILD_CORE. Instead, modules that specifically need that preprocessor definition include it in their individual entries.

..

.. bpo: 33182 .. date: 2018-03-30-14-55-48 .. nonce: CePczb .. section: Build

The embedding tests can once again be built with clang 6.0

..

.. bpo: 33163 .. date: 2018-03-28-04-15-03 .. nonce: hfpWuU .. section: Build

Upgrade pip to 9.0.3 and setuptools to v39.0.1.

..

.. bpo: 33012 .. date: 2018-03-08-20-25-29 .. nonce: k9Fe1q .. section: Build

gcc 8 has added a new warning heuristic to detect invalid function casts and a stock python build seems to hit that warning quite often. The most common is the cast of a METH_NOARGS function (that uses just one argument) to a PyCFunction. Fix this by adding a dummy argument to all functions that implement METH_NOARGS.

..

.. bpo: 32898 .. date: 2018-02-21-12-46-00 .. nonce: M15bZh .. section: Build

Fix the python debug build when using COUNT_ALLOCS.

..

.. bpo: 29442 .. date: 2017-09-26-23-08-27 .. nonce: fD8YTi .. section: Build

Replace optparse with argparse in setup.py

..

.. bpo: 35890 .. date: 2019-02-02-22-12-23 .. nonce: ccIjHH .. section: Windows

Fix API calling consistency of GetVersionEx and wcstok.

..

.. bpo: 32560 .. date: 2019-02-02-11-02-44 .. nonce: I5WAGW .. section: Windows

The py launcher now forwards its STARTUPINFO structure to child processes.

..

.. bpo: 35854 .. date: 2019-01-29-15-44-46 .. nonce: Ww3z19 .. section: Windows

Fix EnvBuilder and --symlinks in venv on Windows

..

.. bpo: 35811 .. date: 2019-01-25-12-46-36 .. nonce: 2hU-mm .. section: Windows

Avoid propagating venv settings when launching via py.exe

..

.. bpo: 35797 .. date: 2019-01-25-12-29-14 .. nonce: MzyOK9 .. section: Windows

Fix default executable used by the multiprocessing module

..

.. bpo: 35758 .. date: 2019-01-21-05-18-14 .. nonce: 8LsY3l .. section: Windows

Allow building on ARM with MSVC.

..

.. bpo: 29734 .. date: 2019-01-12-16-52-38 .. nonce: 6_OJwI .. section: Windows

Fix handle leaks in os.stat on Windows.

..

.. bpo: 35596 .. date: 2019-01-08-13-56-01 .. nonce: oFvhcm .. section: Windows

Use unchecked PYCs for the embeddable distro to avoid zipimport restrictions.

..

.. bpo: 35596 .. date: 2018-12-28-07-25-47 .. nonce: P9CEY2 .. section: Windows

Fix vcruntime140.dll being added to embeddable distro multiple times.

..

.. bpo: 35402 .. date: 2018-12-13-13-30-04 .. nonce: n_mXb2 .. section: Windows

Update Windows build to use Tcl and Tk 8.6.9

..

.. bpo: 35401 .. date: 2018-12-10-15-01-13 .. nonce: 9L1onG .. section: Windows

Updates Windows build to OpenSSL 1.1.0j

..

.. bpo: 34977 .. date: 2018-12-07-10-00-38 .. nonce: agQJbD .. section: Windows

venv on Windows will now use a python.exe redirector rather than copying the actual binaries from the base environment.

..

.. bpo: 34977 .. date: 2018-10-30-13-39-17 .. nonce: 0l7_QV .. section: Windows

Adds support for building a Windows App Store package

..

.. bpo: 35067 .. date: 2018-10-25-11-29-22 .. nonce: RHWi7W .. section: Windows

Remove _distutils_findvs module and use vswhere.exe instead.

..

.. bpo: 32557 .. date: 2018-09-25-10-39-27 .. nonce: Rs1bf9 .. section: Windows

Allow shutil.disk_usage to take a file path on Windows

..

.. bpo: 34770 .. date: 2018-09-22-11-02-35 .. nonce: 4lEUOd .. section: Windows

Fix a possible null pointer dereference in pyshellext.cpp.

..

.. bpo: 34603 .. date: 2018-09-13-08-29-04 .. nonce: 2AB7sc .. section: Windows

Fix returning structs from functions produced by MSVC

..

.. bpo: 34581 .. date: 2018-09-04-23-13-19 .. nonce: lnbC0k .. section: Windows

Guard MSVC-specific code in socketmodule.c with #ifdef _MSC_VER.

..

.. bpo: 34532 .. date: 2018-09-03-01-23-52 .. nonce: N1HEbE .. section: Windows

Fixes exit code of list version arguments for py.exe.

..

.. bpo: 34062 .. date: 2018-08-21-19-28-23 .. nonce: 3gxsA3 .. section: Windows

Fixed the '--list' and '--list-paths' arguments for the py.exe launcher

..

.. bpo: 34225 .. date: 2018-07-25-16-13-12 .. nonce: ngemNL .. section: Windows

Ensure INCLUDE and LIB directories do not end with a backslash.

..

.. bpo: 34011 .. date: 2018-07-11-15-58-06 .. nonce: Ho_d5T .. section: Windows

A suite of code has been changed which copied across DLLs and init.tcl from the running Python location into a venv being created. These copies are needed only when running from a Python source build, and the copying code is now only run when that is the case, rather than whenever a venv is created.

..

.. bpo: 34006 .. date: 2018-07-02-14-19-32 .. nonce: 7SgBT_ .. section: Windows

Revert line length limit for Windows help docs. The line-length limit is not needed because the pages appear in a separate app rather than on a browser tab. It can also interact badly with the DPI setting.

..

.. bpo: 31546 .. date: 2018-06-27-23-33-54 .. nonce: zJlap- .. section: Windows

Restore running PyOS_InputHook while waiting for user input at the prompt. The restores integration of interactive GUI windows (such as Matplotlib figures) with the prompt on Windows.

..

.. bpo: 30237 .. date: 2018-06-25-09-33-48 .. nonce: EybiZA .. section: Windows

Output error when ReadConsole is canceled by CancelSynchronousIo instead of crashing.

..

.. bpo: 33895 .. date: 2018-06-19-11-57-50 .. nonce: zpblTy .. section: Windows

GIL is released while calling functions that acquire Windows loader lock.

..

.. bpo: 33720 .. date: 2018-06-04-09-20-53 .. nonce: VKDXHK .. section: Windows

Reduces maximum marshal recursion depth on release builds.

..

.. bpo: 29097 .. date: 2018-05-16-11-31-17 .. nonce: 9mqEuI .. section: Windows

Fix bug where :meth:datetime.fromtimestamp erroneously throws an :exc:OSError on Windows for values between 0 and 86400. Patch by Ammar Askar.

..

.. bpo: 33316 .. date: 2018-04-20-03-24-07 .. nonce: 9IiJ8J .. section: Windows

PyThread_release_lock always fails

..

.. bpo: 33184 .. date: 2018-04-13-11-28-55 .. nonce: 7YhqQE .. section: Windows

Update Windows installer to use OpenSSL 1.1.0h.

..

.. bpo: 32890 .. date: 2018-03-08-20-02-38 .. nonce: 3jzFzY .. section: Windows

Fix usage of GetLastError() instead of errno in os.execve() and os.truncate().

..

.. bpo: 33016 .. date: 2018-03-07-01-33-33 .. nonce: Z_Med0 .. section: Windows

Fix potential use of uninitialized memory in nt._getfinalpathname

..

.. bpo: 32903 .. date: 2018-02-28-11-03-24 .. nonce: 1SXY4t .. section: Windows

Fix a memory leak in os.chdir() on Windows if the current directory is set to a UNC path.

..

.. bpo: 32901 .. date: 2018-02-23-00-47-13 .. nonce: mGKz5_ .. section: Windows

Update Tcl and Tk versions to 8.6.8

..

.. bpo: 31966 .. date: 2018-02-19-13-54-42 .. nonce: _Q3HPb .. section: Windows

Fixed WindowsConsoleIO.write() for writing empty data.

..

.. bpo: 32409 .. date: 2018-02-19-10-00-57 .. nonce: nocuDg .. section: Windows

Ensures activate.bat can handle Unicode contents.

..

.. bpo: 32457 .. date: 2018-02-19-08-54-06 .. nonce: vVP0Iz .. section: Windows

Improves handling of denormalized executable path when launching Python.

..

.. bpo: 32370 .. date: 2018-02-10-15-38-19 .. nonce: kcKuct .. section: Windows

Use the correct encoding for ipconfig output in the uuid module. Patch by Segev Finer.

..

.. bpo: 29248 .. date: 2018-02-07-17-50-48 .. nonce: Xzwj-6 .. section: Windows

Fix :func:os.readlink on Windows, which was mistakenly treating the PrintNameOffset field of the reparse data buffer as a number of characters instead of bytes. Patch by Craig Holmquist and SSE4.

..

.. bpo: 1104 .. date: 2017-11-24-12-53-54 .. nonce: 1CWSZp .. section: Windows

Correctly handle string length in msilib.SummaryInfo.GetProperty() to prevent it from truncating the last character.

..

.. bpo: 35401 .. date: 2018-12-09-13-56-49 .. nonce: n8B7X1 .. section: macOS

Update macOS installer to use OpenSSL 1.1.0j.

..

.. bpo: 35025 .. date: 2018-10-18-23-54-55 .. nonce: X4LFJg .. section: macOS

Properly guard the use of the CLOCK_GETTIME et al. macros in timemodule on macOS.

..

.. bpo: 24658 .. date: 2018-10-17-14-36-08 .. nonce: Naddgx .. section: macOS

On macOS, fix reading from and writing into a file with a size larger than 2 GiB.

..

.. bpo: 34405 .. date: 2018-09-11-08-30-55 .. nonce: UzIi0n .. section: macOS

Update to OpenSSL 1.1.0i for macOS installer builds.

..

.. bpo: 33635 .. date: 2018-07-31-09-51-01 .. nonce: KiscE- .. section: macOS

In macOS stat on some file descriptors (/dev/fd/3 f.e) will result in bad file descriptor OSError. Guard against this exception was added in is_dir, is_file and similar methods. DirEntry.is_dir can also throw this exception so _RecursiveWildcardSelector._iterate_directories was also extended with the same error ignoring pattern.

..

.. bpo: 13631 .. date: 2018-05-16-13-25-58 .. nonce: UIjDyY .. section: macOS

The .editrc file in user's home directory is now processed correctly during the readline initialization through editline emulation on macOS.

..

.. bpo: 33184 .. date: 2018-04-07-00-51-34 .. nonce: 3j208P .. section: macOS

Update macOS installer build to use OpenSSL 1.1.0h.

..

.. bpo: 32726 .. date: 2018-03-29-06-56-12 .. nonce: urS9uX .. section: macOS

Build and link with private copy of Tcl/Tk 8.6 for the macOS 10.6+ installer. The 10.9+ installer variant already does this. This means that the Python 3.7 provided by the python.org macOS installers no longer need or use any external versions of Tcl/Tk, either system-provided or user-installed, such as ActiveTcl.

..

.. bpo: 32901 .. date: 2018-02-27-17-33-15 .. nonce: hQu0w3 .. section: macOS

Update macOS 10.9+ installer to Tcl/Tk 8.6.8.

..

.. bpo: 31903 .. date: 2017-11-01-16-53-12 .. nonce: K6jCVG .. section: macOS

In :mod:!_scproxy, drop the GIL when calling into SystemConfiguration to avoid deadlocks.

..

.. bpo: 35770 .. date: 2019-01-18-13-04-30 .. nonce: 2LxJGu .. section: IDLE

IDLE macosx deletes Options => Configure IDLE. It previously deleted Window => Zoom Height by mistake. (Zoom Height is now on the Options menu). On Mac, the settings dialog is accessed via Preferences on the IDLE menu.

..

.. bpo: 35769 .. date: 2019-01-18-01-24-23 .. nonce: GqsB34 .. section: IDLE

Change IDLE's new file name from 'Untitled' to 'untitled'

..

.. bpo: 35660 .. date: 2019-01-04-19-14-29 .. nonce: hMxI7N .. section: IDLE

Fix imports in idlelib.window.

..

.. bpo: 35641 .. date: 2019-01-02-22-15-01 .. nonce: QEaANl .. section: IDLE

Proper format calltip when the function has no docstring.

..

.. bpo: 33987 .. date: 2018-12-31-17-04-18 .. nonce: fD92up .. section: IDLE

Use ttk Frame for ttk widgets.

..

.. bpo: 34055 .. date: 2018-12-28-17-16-33 .. nonce: TmmpzR .. section: IDLE

Fix erroneous 'smart' indents and newlines in IDLE Shell.

..

.. bpo: 35591 .. date: 2018-12-28-01-19-20 .. nonce: SFpDj2 .. section: IDLE

Find Selection now works when selection not found.

..

.. bpo: 35196 .. date: 2018-12-27-17-46-42 .. nonce: 9E-xUh .. section: IDLE

Speed up squeezer line counting.

..

.. bpo: 35598 .. date: 2018-12-27-15-29-11 .. nonce: FWOOm8 .. section: IDLE

Update config_key: use PEP 8 names and ttk widgets, make some objects global, and add tests.

..

.. bpo: 28097 .. date: 2018-12-26-13-53-34 .. nonce: 95I9NT .. section: IDLE

Add Previous/Next History entries to Shell menu.

..

.. bpo: 35208 .. date: 2018-12-23-17-42-11 .. nonce: J5NOg7 .. section: IDLE

Squeezer now properly counts wrapped lines before newlines.

..

.. bpo: 35555 .. date: 2018-12-21-18-44-30 .. nonce: M58_K3 .. section: IDLE

Gray out Code Context menu entry when it's not applicable.

..

.. bpo: 35521 .. date: 2018-12-20-00-14-15 .. nonce: x32BRn .. section: IDLE

Document the IDLE editor code context feature. Add some internal references within the IDLE doc.

..

.. bpo: 22703 .. date: 2018-12-18-13-56-31 .. nonce: UlsjKQ .. section: IDLE

The Code Context menu label now toggles between Show/Hide Code Context. The Zoom Height menu now toggles between Zoom/Restore Height. Zoom Height has moved from the Window menu to the Options menu.

..

.. bpo: 35213 .. date: 2018-11-12-00-20-01 .. nonce: cqNgzT .. section: IDLE

Where appropriate, use 'macOS' in idlelib.

..

.. bpo: 34864 .. date: 2018-11-11-17-13-50 .. nonce: cw0PvO .. section: IDLE

On macOS, warn if the system preference "Prefer tabs when opening documents" is set to "Always".

..

.. bpo: 34864 .. date: 2018-11-10-21-27-25 .. nonce: Ci-G2q .. section: IDLE

Document two IDLE on MacOS issues. The System Preferences Dock "prefer tabs always" setting disables some IDLE features. Menus are a bit different than as described for Windows and Linux.

..

.. bpo: 35202 .. date: 2018-11-10-09-10-54 .. nonce: TeJJrt .. section: IDLE

Remove unused imports from lib/idlelib

..

.. bpo: 33000 .. date: 2018-11-06-23-10-54 .. nonce: pQasCt .. section: IDLE

Document that IDLE's shell has no line limit. A program that runs indefinitely can overfill memory.

..

.. bpo: 23220 .. date: 2018-11-05-23-23-00 .. nonce: H3SAWE .. section: IDLE

Explain how IDLE's Shell displays output.

..

.. bpo: 35099 .. date: 2018-11-05-20-43-08 .. nonce: SVOZXC .. section: IDLE

Improve the doc about IDLE running user code. The section is renamed from "IDLE -- console differences" is renamed "Running user code". It mostly covers the implications of using custom :samp:sys.std{xxx} objects.

..

.. bpo: 35097 .. date: 2018-10-28-20-17-14 .. nonce: 07tm66 .. section: IDLE

Add IDLE doc subsection explaining editor windows. Topics include opening, title and status bar, .py* extension, and running.

..

.. bpo: 35093 .. date: 2018-10-28-15-53-51 .. nonce: cH-tli .. section: IDLE

Document the IDLE document viewer in the IDLE doc. Add a paragraph in "Help and preferences", "Help sources" subsection.

..

.. bpo: 35088 .. date: 2018-10-28-00-54-32 .. nonce: r1lJZd .. section: IDLE

Update idlelib.help.copy_string docstring. We now use git and backporting instead of hg and forward merging.

..

.. bpo: 35087 .. date: 2018-10-28-00-08-42 .. nonce: G7gx2- .. section: IDLE

Update idlelib help files for the current doc build. The main change is the elimination of chapter-section numbers.

..

.. bpo: 34548 .. date: 2018-09-22-20-25-07 .. nonce: 7pBzjg .. section: IDLE

Use configured color theme for read-only text views.

..

.. bpo: 1529353 .. date: 2018-08-13-16-31-24 .. nonce: wXfQJk .. section: IDLE

Enable "squeezing" of long outputs in the shell, to avoid performance degradation and to clean up the history without losing it. Squeezed outputs may be copied, viewed in a separate window, and "unsqueezed".

..

.. bpo: 34047 .. date: 2018-08-05-15-49-55 .. nonce: LGKsIm .. section: IDLE

Fixed mousewheel scrolling direction on macOS.

..

.. bpo: 34275 .. date: 2018-08-02-22-16-42 .. nonce: Iu0d7t .. section: IDLE

Make IDLE calltips always visible on Mac. Some MacOS-tk combinations need .update_idletasks(). Patch by Kevin Walzer.

..

.. bpo: 34120 .. date: 2018-08-01-23-25-38 .. nonce: HgsIz- .. section: IDLE

Fix unresponsiveness after closing certain windows and dialogs.

..

.. bpo: 33975 .. date: 2018-06-26-22-53-14 .. nonce: Ow7alv .. section: IDLE

Avoid small type when running htests. Since part of the purpose of human-viewed tests is to determine that widgets look right, it is important that they look the same for testing as when running IDLE.

..

.. bpo: 33905 .. date: 2018-06-21-20-35-33 .. nonce: W2mhiY .. section: IDLE

Add test for idlelib.stackview.StackBrowser.

..

.. bpo: 33924 .. date: 2018-06-20-22-14-07 .. nonce: 6Rz1wt .. section: IDLE

Change mainmenu.menudefs key 'windows' to 'window'. Every other menudef key is lowercase version of main menu entry.

..

.. bpo: 33906 .. date: 2018-06-20-19-16-24 .. nonce: a1lXq0 .. section: IDLE

Rename idlelib.windows as window Match Window on the main menu and remove last plural module name.

..

.. bpo: 33917 .. date: 2018-06-20-16-27-48 .. nonce: ZXHs8x .. section: IDLE

Fix and document idlelib/idle_test/template.py. The revised file compiles, runs, and tests OK. idle_test/README.txt explains how to use it to create new IDLE test files.

..

.. bpo: 33904 .. date: 2018-06-20-12-40-54 .. nonce: qm0eCu .. section: IDLE

IDLE: In rstrip, rename class RstripExtension as Rstrip

..

.. bpo: 33907 .. date: 2018-06-19-22-21-27 .. nonce: z-_B3N .. section: IDLE

For consistency and clarity, rename an IDLE module and classes. Module calltips and its class CallTips are now calltip and Calltip. In module calltip_w, class CallTip is now CalltipWindow.

..

.. bpo: 33856 .. date: 2018-06-16-21-54-45 .. nonce: TH8WHU .. section: IDLE

Add "help" in the welcome message of IDLE

..

.. bpo: 33839 .. date: 2018-06-14-13-23-55 .. nonce: ZlJzHa .. section: IDLE

IDLE: refactor ToolTip and CallTip and add documentation and tests

..

.. bpo: 33855 .. date: 2018-06-14-11-35-50 .. nonce: XL230W .. section: IDLE

Minimally test all IDLE modules. Add missing files, import module, instantiate classes, and check coverage. Check existing files.

..

.. bpo: 33656 .. date: 2018-06-10-17-59-36 .. nonce: 60ZqJS .. section: IDLE

On Windows, add API call saying that tk scales for DPI. On Windows 8.1+ or 10, with DPI compatibility properties of the Python binary unchanged, and a monitor resolution greater than 96 DPI, this should make text and lines sharper. It should otherwise have no effect.

..

.. bpo: 33768 .. date: 2018-06-04-19-23-11 .. nonce: I_2qpV .. section: IDLE

Clicking on a context line moves that line to the top of the editor window.

..

.. bpo: 33763 .. date: 2018-06-03-20-12-57 .. nonce: URiFlE .. section: IDLE

IDLE: Use read-only text widget for code context instead of label widget.

..

.. bpo: 33664 .. date: 2018-06-03-09-13-28 .. nonce: PZzQyL .. section: IDLE

Scroll IDLE editor text by lines. Previously, the mouse wheel and scrollbar slider moved text by a fixed number of pixels, resulting in partial lines at the top of the editor box. The change also applies to the shell and grep output windows, but not to read-only text views.

..

.. bpo: 33679 .. date: 2018-05-29-07-14-37 .. nonce: MgX_Ui .. section: IDLE

Enable theme-specific color configuration for Code Context. Use the Highlights tab to see the setting for built-in themes or add settings to custom themes.

..

.. bpo: 33642 .. date: 2018-05-24-20-42-44 .. nonce: J0VQbS .. section: IDLE

Display up to maxlines non-blank lines for Code Context. If there is no current context, show a single blank line.

..

.. bpo: 33628 .. date: 2018-05-23-19-51-07 .. nonce: sLlFLO .. section: IDLE

IDLE: Cleanup codecontext.py and its test.

..

.. bpo: 33564 .. date: 2018-05-17-19-41-12 .. nonce: XzHZJe .. section: IDLE

IDLE's code context now recognizes async as a block opener.

..

.. bpo: 21474 .. date: 2018-04-29-16-13-02 .. nonce: bglg-F .. section: IDLE

Update word/identifier definition from ascii to unicode. In text and entry boxes, this affects selection by double-click, movement left/right by control-left/right, and deletion left/right by control-BACKSPACE/DEL.

..

.. bpo: 33204 .. date: 2018-04-02-00-28-13 .. nonce: NBsuIv .. section: IDLE

IDLE: consistently color invalid string prefixes. A 'u' string prefix cannot be paired with either 'r' or 'f'. Consistently color as much of the prefix, starting at the right, as is valid. Revise and extend colorizer test.

..

.. bpo: 32984 .. date: 2018-03-05-01-29-05 .. nonce: NGjgT4 .. section: IDLE

Set __file__ while running a startup file. Like Python, IDLE optionally runs one startup file in the Shell window before presenting the first interactive input prompt. For IDLE, -s runs a file named in environmental variable :envvar:IDLESTARTUP or :envvar:PYTHONSTARTUP; -r file runs file. Python sets __file__ to the startup file name before running the file and unsets it before the first prompt. IDLE now does the same when run normally, without the -n option.

..

.. bpo: 32940 .. date: 2018-02-24-18-20-50 .. nonce: ZaJ1Rf .. section: IDLE

Simplify and rename StringTranslatePseudoMapping in pyparse.

..

.. bpo: 32916 .. date: 2018-02-23-07-32-36 .. nonce: 4MsQ5F .. section: IDLE

Change str to code in pyparse.

..

.. bpo: 32905 .. date: 2018-02-22-00-09-27 .. nonce: VlXj0x .. section: IDLE

Remove unused code in pyparse module.

..

.. bpo: 32874 .. date: 2018-02-19-10-56-41 .. nonce: 6pZ9Gv .. section: IDLE

Add tests for pyparse.

..

.. bpo: 32837 .. date: 2018-02-12-17-22-48 .. nonce: -33QPl .. section: IDLE

Using the system and place-dependent default encoding for open() is a bad idea for IDLE's system and location-independent files.

..

.. bpo: 32826 .. date: 2018-02-12-11-05-22 .. nonce: IxNZrk .. section: IDLE

Add "encoding=utf-8" to open() in IDLE's test_help_about. GUI test test_file_buttons() only looks at initial ascii-only lines, but failed on systems where open() defaults to 'ascii' because readline() internally reads and decodes far enough ahead to encounter a non-ascii character in CREDITS.txt.

..

.. bpo: 32831 .. date: 2018-02-12-08-08-45 .. nonce: srDRvU .. section: IDLE

Add docstrings and tests for codecontext.

..

.. bpo: 32765 .. date: 2018-02-04-17-52-54 .. nonce: qm0eCu .. section: IDLE

Update configdialog General tab docstring to add new widgets to the widget list.

..

.. bpo: 35884 .. date: 2019-02-01-12-22-37 .. nonce: hJkMRD .. section: Tools/Demos

Add a benchmark script for timing various ways to access variables: Tools/scripts/var_access_benchmark.py.

..

.. bpo: 34989 .. date: 2018-10-15-13-22-28 .. nonce: hU4fra .. section: Tools/Demos

python-gdb.py now handles errors on computing the line number of a Python frame.

..

.. bpo: 20260 .. date: 2018-07-24-00-11-44 .. nonce: klmmqI .. section: Tools/Demos

Argument Clinic now has non-bitwise unsigned int converters.

..

.. bpo: 32962 .. date: 2018-06-14-16-23-07 .. nonce: Q3Dwns .. section: Tools/Demos

python-gdb now catches UnicodeDecodeError exceptions when calling string().

..

.. bpo: 32962 .. date: 2018-06-14-16-16-53 .. nonce: 2YfdwI .. section: Tools/Demos

python-gdb now catches ValueError on read_var(): when Python has no debug symbols for example.

..

.. bpo: 33189 .. date: 2018-04-03-18-10-00 .. nonce: QrXR00 .. section: Tools/Demos

:program:pygettext.py now recognizes only literal strings as docstrings and translatable strings, and rejects bytes literals and f-string expressions.

..

.. bpo: 31920 .. date: 2018-03-26-18-54-24 .. nonce: u_WKsT .. section: Tools/Demos

Fixed handling directories as arguments in the pygettext script. Based on patch by Oleg Krasnikov.

..

.. bpo: 29673 .. date: 2018-03-16-17-25-05 .. nonce: m8QtaW .. section: Tools/Demos

Fix pystackv and pystack gdbinit macros.

..

.. bpo: 25427 .. date: 2018-03-02-16-23-31 .. nonce: 1mgMOG .. section: Tools/Demos

Remove the pyvenv script in favor of python3 -m venv in order to lower confusion as to what Python interpreter a virtual environment will be created for.

..

.. bpo: 32885 .. date: 2018-02-20-12-16-47 .. nonce: dL5x7C .. section: Tools/Demos

Add an -n flag for Tools/scripts/pathfix.py to disable automatic backup creation (files with ~ suffix).

..

.. bpo: 32222 .. date: 2017-12-07-20-51-20 .. nonce: hPBcGT .. section: Tools/Demos

Fix pygettext not extracting docstrings for functions with type annotated arguments. Patch by Toby Harradine.

..

.. bpo: 31583 .. date: 2017-09-26-10-11-21 .. nonce: TM90_H .. section: Tools/Demos

Fix 2to3 for using with --add-suffix option but without --output-dir option for relative path to files in current directory.

..

.. bpo: 35713 .. date: 2019-01-22-17-04-10 .. nonce: fmehdG .. section: C API

The :c:func:!PyByteArray_Init and :c:func:!PyByteArray_Fini functions have been removed. They did nothing since Python 2.7.4 and Python 3.2.0, were excluded from the limited API (stable ABI), and were not documented.

..

.. bpo: 33817 .. date: 2019-01-11-11-16-16 .. nonce: nJ4yIj .. section: C API

Fixed :c:func:_PyBytes_Resize for empty bytes objects.

..

.. bpo: 35322 .. date: 2018-11-28-03-20-36 .. nonce: Qcqsag .. section: C API

Fix memory leak in :c:func:PyUnicode_EncodeLocale and :c:func:PyUnicode_EncodeFSDefault on error handling.

..

.. bpo: 35059 .. date: 2018-11-23-11-52-34 .. nonce: BLSp6y .. section: C API

The following C macros have been converted to static inline functions: :c:func:Py_INCREF, :c:func:Py_DECREF, :c:func:Py_XINCREF, :c:func:Py_XDECREF, :c:func:PyObject_INIT, :c:func:PyObject_INIT_VAR.

..

.. bpo: 35296 .. date: 2018-11-22-18-34-23 .. nonce: nxrIQt .. section: C API

make install now also installs the internal API: Include/internal/*.h header files.

..

.. bpo: 35081 .. date: 2018-11-22-18-15-46 .. nonce: FdK9mV .. section: C API

Internal APIs surrounded by #ifdef Py_BUILD_CORE have been moved from Include/*.h headers to new header files Include/internal/pycore_*.h.

..

.. bpo: 35259 .. date: 2018-11-22-13-52-36 .. nonce: p07c61 .. section: C API

Conditionally declare :c:func:Py_FinalizeEx() (new in 3.6) based on Py_LIMITED_API. Patch by Arthur Neufeld.

..

.. bpo: 35081 .. date: 2018-11-13-12-13-04 .. nonce: gFd85N .. section: C API

The :c:func:!_PyObject_GC_TRACK and :c:func:!_PyObject_GC_UNTRACK macros have been removed from the public C API.

..

.. bpo: 35134 .. date: 2018-11-01-13-58-37 .. nonce: SbZo0o .. section: C API

Creation of a new Include/cpython/ subdirectory.

..

.. bpo: 34725 .. date: 2018-10-13-16-30-54 .. nonce: j52rIS .. section: C API

Adds _Py_SetProgramFullPath so embedders may override sys.executable

..

.. bpo: 34910 .. date: 2018-10-05-17-06-49 .. nonce: tSFrls .. section: C API

Ensure that :c:func:PyObject_Print always returns -1 on error. Patch by Zackery Spytz.

..

.. bpo: 34523 .. date: 2018-08-29-18-48-47 .. nonce: lLQ8rh .. section: C API

Py_DecodeLocale() and Py_EncodeLocale() now use the UTF-8 encoding on Windows if Py_LegacyWindowsFSEncodingFlag is zero.

..

.. bpo: 34193 .. date: 2018-07-24-11-57-35 .. nonce: M6ch1Q .. section: C API

Fix pluralization in TypeError messages in getargs.c and typeobject.c: '1 argument' instead of '1 arguments' and '1 element' instead of '1 elements'.

..

.. bpo: 34127 .. date: 2018-07-22-14-58-06 .. nonce: qkfnHO .. section: C API

Return grammatically correct error message based on argument count. Patch by Karthikeyan Singaravelan.

..

.. bpo: 23927 .. date: 2018-07-09-11-39-54 .. nonce: pDFkxb .. section: C API

Fixed :exc:SystemError in :c:func:PyArg_ParseTupleAndKeywords when the w* format unit is used for optional parameter.

..

.. bpo: 32455 .. date: 2018-07-08-12-06-18 .. nonce: KVHlkz .. section: C API

Added :c:func:PyCompile_OpcodeStackEffectWithJump.

..

.. bpo: 34008 .. date: 2018-07-02-10-58-11 .. nonce: COewz- .. section: C API

Py_Main() can again be called after Py_Initialize(), as in Python 3.6.

..

.. bpo: 32500 .. date: 2018-06-21-17-19-31 .. nonce: WGCNad .. section: C API

Fixed error messages for :c:func:PySequence_Size, :c:func:PySequence_GetItem, :c:func:PySequence_SetItem and :c:func:PySequence_DelItem called with a mapping and :c:func:PyMapping_Size called with a sequence.

..

.. bpo: 33818 .. date: 2018-06-10-09-42-31 .. nonce: 50nlf3 .. section: C API

:c:func:PyExceptionClass_Name will now return const char * instead of char *.

..

.. bpo: 33042 .. date: 2018-03-20-21-43-09 .. nonce: FPFp64 .. section: C API

Embedding applications may once again call PySys_ResetWarnOptions, PySys_AddWarnOption, and PySys_AddXOption prior to calling Py_Initialize.

..

.. bpo: 32374 .. date: 2018-01-09-17-03-54 .. nonce: SwwLoz .. section: C API

Document that m_traverse for multi-phase initialized modules can be called with m_state=NULL, and add a sanity check

..

.. bpo: 30863 .. date: 2017-10-12-23-24-27 .. nonce: xrED19 .. section: C API

:c:func:PyUnicode_AsWideChar and :c:func:PyUnicode_AsWideCharString no longer cache the wchar_t* representation of string objects.