Staging
v0.5.1
https://github.com/python/cpython

sort by:
Revision Author Date Message Commit Date
45f7008 bpo-1635741: Port resource extension module to multiphase initialization (PEP 489) (GH-19252) Fix also reference leaks on error. 02 April 2020, 12:35:08 UTC
8ec7cb5 bpo-40115: Fix refleak in test_asyncio.test_run_in_executor_cancel() (GH-19282) Call explicitly self.loop.shutdown_default_executor(). 02 April 2020, 02:46:44 UTC
e7c98f0 bpo-40094: Fix which.py script exit code (GH-19286) It now uses os.waitstatus_to_exitcode() to convert os.system() exit status into an exit code. 02 April 2020, 01:42:47 UTC
9a679a0 bpo-40094: CGIHTTPRequestHandler logs exit code (GH-19285) CGIHTTPRequestHandler of http.server now logs the CGI script exit code, rather than the CGI script exit status of os.waitpid(). For example, if the script is killed by signal 11, it now logs: "CGI script exit code -11." 02 April 2020, 01:42:05 UTC
e27916b bpo-37207: Use PEP 590 vectorcall to speed up dict() (GH-19280) 02 April 2020, 00:55:43 UTC
224e1c3 bpo-40146: Update OpenSSL to 1.1.1f in Azure Pipelines (GH-19288) 02 April 2020, 00:53:33 UTC
0b297d4 bpo-39503: CVE-2020-8492: Fix AbstractBasicAuthHandler (GH-18284) The AbstractBasicAuthHandler class of the urllib.request module uses an inefficient regular expression which can be exploited by an attacker to cause a denial of service. Fix the regex to prevent the catastrophic backtracking. Vulnerability reported by Ben Caller and Matt Schwager. AbstractBasicAuthHandler of urllib.request now parses all WWW-Authenticate HTTP headers and accepts multiple challenges per header: use the realm of the first Basic challenge. Co-Authored-By: Serhiy Storchaka <storchaka@gmail.com> 02 April 2020, 00:52:20 UTC
d57cf55 bpo-40094: mailcap.test() uses waitstatus_to_exitcode() (GH-19287) mailcap.test() now uses os.waitstatus_to_exitcode() to convert os.system() exit status into an exit code. 02 April 2020, 00:00:06 UTC
168660b bpo-40141: Add line and column information to ast.keyword nodes (GH-19283) 01 April 2020, 23:47:39 UTC
65a796e bpo-40094: Add os.waitstatus_to_exitcode() (GH-19201) Add os.waitstatus_to_exitcode() function to convert a wait status to an exitcode. Suggest waitstatus_to_exitcode() usage in the documentation when appropriate. Use waitstatus_to_exitcode() in: * multiprocessing, os, subprocess and _bootsubprocess modules; * test.support.wait_process(); * setup.py: run_command(); * and many tests. 01 April 2020, 16:49:29 UTC
5dd8360 bpo-38527: fix configure script for Solaris (GH-16845) On Solaris, the regular "grep" command may be an old version that fails to search a binary file. We need to use the correct command (ggrep, in our case), which is found by the configure script earlier. Automerge-Triggered-By: @pablogsal 01 April 2020, 15:19:09 UTC
eacc074 bpo-40071: Fix potential crash in _functoolsmodule.c (GH-19273) Changes on 7dd549eb0893 made _functools compatible with PEP-489 and we could have multiple modules instances loaded. But, right now there is no way to make `kwd_mark` global into a per module instance variable. kwd_mark is used on lru_cache_new which does not have a reference to a PyModule*, necessary to use PyModule_GetState. PEP-573 will solve this problem and will allow us to move the global state to per-module data and properly clear the state when unloading a module instance. This change temporarily disable cleaning of kwd_mark to avoid NULL pointer dereference if we clear kwd_mark and other module instances still alive use it. 01 April 2020, 15:06:21 UTC
00002e6 bpo-39682: make `pathlib.Path` immutable by removing (undocumented) support for "closing" a path by using it as a context manager (GH-18846) Support for using a path as a context manager remains, and is now a no-op. 01 April 2020, 14:10:51 UTC
975ac32 bpo-33262: Deprecate passing None for `s` to shlex.split() (GH-6514) * bpo-33262: Deprecate passing None for `s` to shlex.split() This reads the string to split from standard input. * Update What's New. * Fix shlex.rst 01 April 2020, 13:58:55 UTC
7c72383 bpo-40094: Enhance os.WIFEXITED documentation (GH-19244) 01 April 2020, 13:48:05 UTC
17b4733 bpo-40130: _PyUnicode_AsKind() should not be exported. (GH-19265) Make it a static function, and pass known attributes (kind, data, length) instead of the PyUnicode object. 01 April 2020, 12:41:49 UTC
3ef4a7e bpo-40121: Fix exception type in test (GH-19267) 01 April 2020, 08:38:26 UTC
6eb9619 Handle when IOCTL_VM_SOCKETS_GET_LOCAL_CID does not exist in "socket" (GH-19270) Running `test_socket` or anything that depends on it (like python -m test.pythoninfo) crashes if IOCTL_VM_SOCKETS_GET_LOCAL_CID does not exist in the socket module. Automerge-Triggered-By: @pablogsal 01 April 2020, 00:48:37 UTC
afeaea2 bpo-40094: Add missing import to wait_process() (GH-19268) 01 April 2020, 00:26:19 UTC
6b982c2 bpo-40094: Add run_command() to setup.py (GH-19266) 31 March 2020, 23:10:07 UTC
16d7567 bpo-31160: Fix race condition in test_os.PtyTests (GH-19263) bpo-31160, bpo-40094: Wait until the process completes before closing the PTY to prevent sending SIGHUP to the child process. 31 March 2020, 22:27:18 UTC
40bfdb1 bpo-40094: Add _bootsubprocess._waitstatus_to_exitcode (GH-19264) * Add _waitstatus_to_exitcode() helper function to _bootsubprocess. * Enhance check_output() error message if the command fails. _bootsubprocess no longer handles WIFSTOPPED() case: it now raises a ValueError. 31 March 2020, 21:45:13 UTC
2c003ef bpo-39943: Clean up marshal.c. (GH-19236) * Add consts. * Remove redundant casts and checks. * Use concrete C API macros. * Avoid raising and silencing OverflowError for ints. 31 March 2020, 20:23:21 UTC
a9f9687 bpo-40094: Enhance threading tests (GH-19260) * Rewrite test_thread.test_forkinthread() to use support.wait_process() and wait for the child process in the main thread, not in the spawned thread. * test_threading now uses support.wait_process() and checks the child process exit code to detect crashes. 31 March 2020, 19:49:44 UTC
27c6231 bpo-40094: Enhance fork and wait tests (GH-19259) * test_fork1: remove duplicated wait_impl() method: reuse fork_wait.py implementation instead. * Use exit code different than 0 to ensure that we executed the expected code path. 31 March 2020, 19:46:40 UTC
278c1e1 bpo-40094: Add test.support.wait_process() (GH-19254) Moreover, the following tests now check the child process exit code: * test_os.PtyTests * test_mailbox.test_lock_conflict() * test_tempfile.test_process_awareness() * test_uuid.testIssue8621() * multiprocessing resource tracker tests 31 March 2020, 18:08:12 UTC
400e1db Document most common signals (GH-19245) Document individual signals (only the most common signals): description, default action, availability. 31 March 2020, 17:13:10 UTC
cd16661 closes bpo-40125: Update multissltests.py to use OpenSSL 1.1.1f. (GH-19248) 31 March 2020, 15:49:56 UTC
01e743d bpo-40003: test.bisect_cmd copies Python options (GH-19246) test.bisect_cmd now copies Python command line options like -O or -W. Moreover, emit a warning if test.bisect_cmd is used with -w/--verbose2 option. 31 March 2020, 15:25:56 UTC
8d84adc bpo-32591: _PyErr_WarnUnawaitedCoroutine() sets source (GH-19247) The _PyErr_WarnUnawaitedCoroutine() fallback now also sets the coroutine object as the source of the warning, as done by the Python implementation warnings._warn_unawaited_coroutine(). Moreover, don't truncate the coroutine name: Python supports arbitrary string length to format the message. 31 March 2020, 15:25:12 UTC
5be8241 bpo-1635741: Port math module to multiphase initialization (GH-19243) 31 March 2020, 14:33:22 UTC
1cb763b bpo-1635741: Port _uuid module to multiphase initialization (GH-19242) 31 March 2020, 12:43:47 UTC
63ba5cc bpo-40121: Fixes audit event raised on creating a new socket (GH-19238) 31 March 2020, 11:38:53 UTC
ef67512 bpo-40108: Improve the error message in runpy when importing a module that includes the extension (GH-19239) 31 March 2020, 11:23:55 UTC
c49016e fix comma location in various places (GH-19233) 30 March 2020, 21:28:25 UTC
51e3e45 bpo-40020: Fix realloc leak on failure in growable_comment_array_add (GH-19083) Fix a leak and subsequent crash in parsetok.c caused by realloc misuse on a rare codepath. Realloc returns a null pointer on failure, and then growable_comment_array_deallocate crashes later when it dereferences it. 30 March 2020, 21:15:59 UTC
fc2d8d6 bpo-39943: Remove unnecessary casts in import.c that remove constness (GH-19209) 30 March 2020, 20:19:14 UTC
0c5ad54 Fix bug in test_collections.py (#19221) Test in TestChainMap() line 257 did not properly check union behavior. 30 March 2020, 16:50:57 UTC
676b105 bpo-8901: Windows registry path is now ignored with the -E option (GH-18169) 30 March 2020, 16:04:45 UTC
53e4c91 bpo-40077: Convert _abc module to use PyType_FromSpec() (GH-19202) Replace statically allocated types with heap allocated types: use PyType_FromSpec(). Add a module state to store the _abc_data_type. Add traverse, clear and free functions to the module. 30 March 2020, 14:35:38 UTC
ce10554 bpo-37207: Use vectorcall for list() (GH-18928) Speed up calls to list() by using the PEP 590 vectorcall calling convention. Patch by Mark Shannon. Co-authored-by: Mark Shannon <mark@hotpy.org> Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> 30 March 2020, 12:16:16 UTC
614f172 bpo-39073: validate Address parts to disallow CRLF (#19007) Disallow CR or LF in email.headerregistry.Address arguments to guard against header injection attacks. 30 March 2020, 00:38:41 UTC
0003c2d bpo-40096: Support __attribute__((__noreturn__)) on xlc (GH-19204) 29 March 2020, 15:52:32 UTC
016bdd5 bpo-40024: Update _elementtree to use PyModule_AddType() (GH-19205) 29 March 2020, 14:12:11 UTC
34a49aa bpo-38002: Use False/True for IDLE pyshell bools (GH-19203) Change 0/1 assignments to 'executing', 'canceled', 'reading', 'endoffile'. These are not used outside of pyshell. Other bools already use False/True. Add comment about int needed for Windows call. Remove self.more, unused in idlelib and code.InteractiveInterpreter. The latter uses 'more' as a local. 28 March 2020, 16:51:21 UTC
34b0598 bpo-40086: Update/fix test_etree test case in test_typing (GH-19189) 28 March 2020, 12:32:36 UTC
6467134 bpo-36543: What's new: Document how to replace xml.etree.cElementTree (GH-19188) 27 March 2020, 19:59:02 UTC
b61b818 bpo-39812: Remove daemon threads in concurrent.futures (GH-19149) Remove daemon threads from :mod:`concurrent.futures` by adding an internal `threading._register_atexit()`, which calls registered functions prior to joining all non-daemon threads. This allows for compatibility with subinterpreters, which don't support daemon threads. 27 March 2020, 19:31:22 UTC
5f9c131 bpo-40045: Make "dunder" method documentation easier to locate (#19153) * issue 40045 * Update lexical_analysis.rst Make "dunder" method documentation easier(GH-19153) Co-authored-by: Joannah Nanjekye <33177550+nanjekyejoannah@users.noreply.github.com> 27 March 2020, 19:02:51 UTC
d8ff44c bpo-40089: Fix threading._after_fork() (GH-19191) If fork was not called by a thread spawned by threading.Thread, threading._after_fork() now creates a _MainThread instance for _main_thread, instead of a _DummyThread instance. 27 March 2020, 16:50:42 UTC
5a58c52 bpo-38237: Use divmod for positional arguments whatsnew example (GH-19171) 27 March 2020, 16:37:43 UTC
1c1e68c bpo-38644: Use _PySys_Audit(): pass tstate explicitly (GH-19183) Add the dependency to tstate more explicit. 27 March 2020, 14:11:45 UTC
33f15a1 bpo-40077: Convert _json module to use PyType_FromSpec() (GH-19177) Replace statically allocated types with heap allocated types: use PyType_FromSpec(). Add a module state to store the Scanner and Encoder types. Add traverse, clear and free functions to the module. 27 March 2020, 10:59:59 UTC
71a3522 bpo-38644: Make tstate more explicit inside pystate.c (GH-19182) Fix PyInterpreterState_New(): Don't call PyErr_SetString() when there is no current Python thread state (if tstate is NULL). 26 March 2020, 21:46:14 UTC
7281898 bpo-38644: Pass tstate explicitly in signalmodule.c (GH-19184) PyOS_InterruptOccurred() now checks _Py_ThreadCanHandleSignals() before checking if SIGINT is tripped. 26 March 2020, 21:28:11 UTC
08faf00 bpo-38644: Add _PySys_Audit() which takes tstate (GH-19180) Add _PySys_Audit() function to the internal C API: similar to PySys_Audit(), but requires a mandatory tstate parameter. Cleanup sys_audit_tstate() code: remove code path for NULL tstate, since the function exits at entry if tstate is NULL. Remove also code path for NULL tstate->interp: should_audit() now ensures that it is not NULL (even if tstate->interp cannot be NULL in practice). PySys_AddAuditHook() now checks if tstate is not NULL to decide if tstate can be used or not, and tstate is set to NULL if the runtime is not initialized yet. Use _PySys_Audit() in sysmodule.c. 26 March 2020, 17:57:32 UTC
e0b8101 bpo-1812: Fix newline conversion when doctest.testfile loads from a package whose loader has a get_data method (GH-17385) This pull request fixes the newline conversion bug originally reported in bpo-1812. When that issue was originally submitted, the open builtin did not default to universal newline mode; now it does, which makes the issue fix simpler, since the only code path that needs to be changed is the one in doctest._load_testfile where the file is loaded from a package whose loader has a get_data method. 26 March 2020, 15:53:16 UTC
59c644e bpo-39879: Update datamodel docs to include dict ordering (GH-19006) Co-authored-by: furkanonder <furkantahaonder@gmail.com> 26 March 2020, 14:54:04 UTC
1b6b0e7 bpo-40069: Clear out .lst files on make clean (GH-19169) Files created on AIX by xlc (C compiler). 26 March 2020, 13:10:04 UTC
b09ae3f bpo-40071: Fix refleak in _functools module (GH19172) 26 March 2020, 12:47:45 UTC
79ceccd bpo-38410: Properly handle PySys_Audit() failures (GH-16657) 26 March 2020, 12:11:13 UTC
62d21c9 bpo-39943: Properly const the pointers in dictkeys_get_index (GH-19170) 26 March 2020, 04:13:01 UTC
cb6534e bpo-40067: Improve error messages for multiple star expressions in assignments (GH-19168) Co-Authored-By: Batuhan Taşkaya <isidentical@gmail.com> Co-Authored-By: Pablo Galindo <Pablogsal@gmail.com> 26 March 2020, 01:54:31 UTC
5c3cda0 bpo-39947: Add PyThreadState_GetID() function (GH-19163) Add PyThreadState_GetID() function: get the unique identifier of a Python thread state. 25 March 2020, 20:23:53 UTC
0e427c6 bpo-39947: Add _PyThreadState_GetDict() function (GH-19160) 25 March 2020, 20:22:55 UTC
302e5a8 bpo-19698: Document when importlib.machinery.FrozenImporter gained spec-related methods (GH-19158) 25 March 2020, 18:57:47 UTC
3072338 bpo-39947: Use PyThreadState_GetFrame() (GH-19159) _tracemalloc.c and _xxsubinterpretersmodule.c use PyThreadState_GetFrame() and PyThreadState_GetInterpreter() to no longer depend on the PyThreadState structure. 25 March 2020, 18:52:02 UTC
89a2209 bpo-40016: re docstring: Clarify relationship of inline and argument flags (#19078) Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> 25 March 2020, 18:44:47 UTC
87d3b9d bpo-39882: Add _Py_FatalErrorFormat() function (GH-19157) 25 March 2020, 18:27:36 UTC
ace018c bpo-40050: Rephrase NEWS entry (GH-19148) 25 March 2020, 17:31:55 UTC
7668a8b Use calloc-based functions, not malloc. (GH-19152) 25 March 2020, 04:26:44 UTC
7dd549e bpo-1635741: Port _functools module to multiphase initialization (PEP 489) (GH-19151) 25 March 2020, 02:19:58 UTC
f3d5ac4 bpo-1635741: Port operator module to multiphase initialization (PEP 489) (GH-19150) 25 March 2020, 02:18:47 UTC
8f1ed21 bpo-36144: Add union operators to WeakValueDictionary584 (#19127) 25 March 2020, 01:51:29 UTC
37fcbb6 bpo-40024: Update C extension modules to use PyModule_AddType() (GH-19119) Update _asyncio, _bz2, _csv, _curses, _datetime, _io, _operator, _pickle, _queue, blake2, multibytecodec and overlapped C extension modules to use PyModule_AddType(). 24 March 2020, 22:08:51 UTC
15e5024 bpo-40029 mark test_importlib.test_zip as requiring zlib (#19105) * bpo-40029 mark test_importlib.test_zip as requiring zlib * Decorate TestZip / TestEgg classes as requiring zlib 24 March 2020, 19:02:53 UTC
93460d0 bpo-1635741: Port _weakref extension module to multiphase initialization (PEP 489) (GH-19140) Co-authored-by: Hai Shi <shihai1992@gmail.com> 24 March 2020, 17:31:19 UTC
f5c7cab bpo-40014: Fix os.getgrouplist() (GH-19126) Fix os.getgrouplist(): if getgrouplist() function fails because the group list is too small, retry with a larger group list. On failure, the glibc implementation of getgrouplist() sets ngroups to the total number of groups. For other implementations, double the group list size. 24 March 2020, 17:22:10 UTC
4b3252c bpo-40013: Clarify documentation of restval in csv.DictReader (GH-19099) 24 March 2020, 17:11:42 UTC
83d46e0 bpo-40050: Fix importlib._bootstrap_external (GH-19135) Remove two unused imports: _thread and _weakref. Avoid creating a new winreg builtin module if it's already available in sys.modules. The winreg module is now stored as "winreg" rather than "_winreg". 24 March 2020, 17:03:34 UTC
9b8e74c Clarify a guarantee of the logging module. (GH-19132) When no additional arguments are passed to logging.debug() and related methods, no % operation is performed on the passed in message. 24 March 2020, 16:48:32 UTC
5804f87 bpo-20526: Fix PyThreadState_Clear(): don't decref frame (GH-19120) PyThreadState.frame is a borrowed reference, not a strong reference: PyThreadState_Clear() must not call Py_CLEAR(tstate->frame). Remove test_threading.test_warnings_at_exit(): we cannot warranty that the Python thread state of daemon threads is cleared in a reliable way during Python shutdown. 24 March 2020, 15:32:26 UTC
472fc84 bpo-39689: Do not use native packing for format "?" with standard size (GH-18969) 24 March 2020, 13:01:13 UTC
6000087 closes bpo-40017: Add CLOCK_TAI constant to the time module. (GH-19096) Co-authored-by: Benjamin Peterson <benjamin@python.org> 24 March 2020, 03:41:40 UTC
70d9d74 Updated documentation for FOR_ITER (GH-19113) Added a comma to make the sentence less confusing. 24 March 2020, 01:03:06 UTC
188078c Revert "bpo-1635741: Port _weakref extension module to multiphase initialization (PEP 489) (GH-19084)" (#19128) bpo-1635741, bpo-40050: This reverts commit 8334f30a74abcf7e469b901afc307887aa85a888. 23 March 2020, 23:48:03 UTC
7979298 Post 3.9.0a5 23 March 2020, 22:00:48 UTC
fd88a02 Merge tag 'v3.9.0a5' Python 3.9.0a5 23 March 2020, 22:00:18 UTC
25e580a bpo-36144: Add union operators to WeakKeyDictionary (#19106) 23 March 2020, 20:49:46 UTC
8dd1792 bpo-40036: Deleting duplicates in itertoolsmodule.c (GH-18958) 23 March 2020, 20:14:39 UTC
f393b2c bpo-36144: Add PEP 584 operators to collections.ChainMap (#18832) * Update ChainMap to include | and |= Created __ior__, __or__ and __ror__ methods in ChainMap class. * Update ACKS * Update docs * Update test_collections.py to include test_issue584(). Added testing for | and |= operators for ChainMap objects. * Update test_union_operators Renamed test_union operators, fixed errors and style problems raised by brandtbucher. * Update test_union_operators in TestChainMap Added testing for union operator between ChainMap and iterable of key-value pairs. * Update test_union operators in test_collections.py Gave more descriptive variable names and eliminated unnecessary tmp variable. * Update test_union_operators in test_collections.py Added cm3 * Check .maps rather than Chainmap equality. * Add news entry * Update Lib/test/test_collections.py Co-Authored-By: Brandt Bucher <brandtbucher@gmail.com> * Removed whitespace * Added Guido's changes * Fixed Docs * Removed whitespace Co-authored-by: Brandt Bucher <brandtbucher@gmail.com> 23 March 2020, 19:02:05 UTC
8ec7370 bpo-40014: Fix os.getgrouplist() on macOS (GH-19118) On macOS, getgrouplist() returns a non-zero value without setting errno if the group list is too small. Double the list size and call it again in this case. 23 March 2020, 19:00:57 UTC
bd409bb bpo-1635741: Port time module to multiphase initialization (PEP 489) (GH-19107) 23 March 2020, 18:58:23 UTC
dcd4c4f Python 3.9.0a5 23 March 2020, 16:19:13 UTC
9a81ab1 bpo-39830: Add zipfile.Path to __all__ (GH-19115) 23 March 2020, 13:29:36 UTC
bace59d bpo-39999: Improve compatibility of the ast module. (GH-19056) * Re-add removed classes Suite, slice, Param, AugLoad and AugStore. * Add docstrings for dummy classes. * Add docstrings for attribute aliases. * Set __module__ to "ast" instead of "_ast". 22 March 2020, 18:33:34 UTC
044cf94 bpo-22490: Remove __PYVENV_LAUNCHER__ from environment during launch (GH-9516) * bpo-22490: Remove "__PYVENV_LAUNCHER__" from the shell environment on macOS This changeset removes the environment varialbe "__PYVENV_LAUNCHER__" during interpreter launch as it is only needed to communicate between the stub executable in framework installs and the actual interpreter. Leaving the environment variable present may lead to misbehaviour when launching other scripts. * Actually commit the changes for issue 22490... * Correct typo Co-Authored-By: Nicola Soranzo <nicola.soranzo@gmail.com> * Run make patchcheck Co-authored-by: Jason R. Coombs <jaraco@jaraco.com> Co-authored-by: Nicola Soranzo <nicola.soranzo@gmail.com> 22 March 2020, 18:31:46 UTC
05e4a29 bpo-40024: Add PyModule_AddType() helper function (GH-19088) 22 March 2020, 16:17:34 UTC
b33e525 bpo-36543: Remove the xml.etree.cElementTree module. (GH-19108) 22 March 2020, 12:31:38 UTC
b146568 bpo-39652: Truncate the column name after '[' only if PARSE_COLNAMES is set. (GH-18942) 21 March 2020, 13:53:28 UTC
back to top