https://github.com/python/cpython

sort by:
Revision Author Date Message Commit Date
f11d0d8 gh-91227: Ignore ERROR_PORT_UNREACHABLE in proactor recvfrom() (#32011) 23 March 2024, 15:39:35 UTC
9967b56 gh-117008: Fix functools test_recursive_pickle() (#117009) Use support.infinite_recursion() in test_recursive_pickle() of test_functools to prevent a stack overflow on "ARM64 Windows Non-Debug" buildbot. Lower Py_C_RECURSION_LIMIT to 1,000 frames on Windows ARM64. 23 March 2024, 12:01:20 UTC
72eea51 GH-106747: Document another difference between `glob` and `pathlib`. (#116518) Document that `path.glob()` might return *path*, whereas `glob.glob(root_dir=path)` will never return an empty string corresponding to *path*. 22 March 2024, 19:14:09 UTC
e28477f GH-117108: Change the size of the GC increment to about 1% of the total heap size. (GH-117120) 22 March 2024, 18:43:25 UTC
e2e0b4b gh-113024: C API: Add PyObject_GenericHash() function (GH-113025) 22 March 2024, 18:19:10 UTC
567ab3b gh-117084: Fix ZIP file extraction for directory entry names with backslashes on Windows (GH-117129) 22 March 2024, 18:08:00 UTC
5a78f6e gh-117134: Microoptimize glob() for include_hidden=True (GH-117135) 22 March 2024, 18:03:48 UTC
00baaa2 [docs] Fix typo in docstring and add example to logging cookbook. (GH-117157) 22 March 2024, 17:25:51 UTC
40d75c2 GH-113171: Fix "private" (non-global) IP address ranges (GH-113179) * GH-113171: Fix "private" (really non-global) IP address ranges The _private_networks variables, used by various is_private implementations, were missing some ranges and at the same time had overly strict ranges (where there are more specific ranges considered globally reachable by the IANA registries). This patch updates the ranges with what was missing or otherwise incorrect. I left 100.64.0.0/10 alone, for now, as it's been made special in [1] and I'm not sure if we want to undo that as I don't quite understand the motivation behind it. The _address_exclude_many() call returns 8 networks for IPv4, 121 networks for IPv6. [1] https://github.com/python/cpython/issues/61602 22 March 2024, 16:49:56 UTC
3be9b9d Fix get_packagefamilyname helper function on Windows 32-bit (GH-117153) 22 March 2024, 15:00:50 UTC
63d6f26 gh-117068: Remove useless code in bytesio.c:resize_buffer() (GH-117069) Co-authored-by: i.khabibulin <i.khabibulin@ngrsoftlab.ru> 22 March 2024, 11:25:38 UTC
42ae924 gh-117127: glob tests: Reopen dir_fd to pick up directory changes (GH-117128) 22 March 2024, 09:42:18 UTC
8383915 GH-116939: Rewrite binarysort() (#116940) Rewrote binarysort() for clarity. Also changed the signature to be more coherent (it was mixing sortslice with raw pointers). No change in method or functionality. However, I left some experiments in, disabled for now via `#if` tricks. Since this code was first written, some kinds of comparisons have gotten enormously faster (like for lists of floats), which changes the tradeoffs. For example, plain insertion sort's simpler innermost loop and highly predictable branches leave it very competitive (even beating, by a bit) binary insertion when comparisons are very cheap, despite that it can do many more compares. And it wins big on runs that are already sorted (moving the next one in takes only 1 compare then). So I left code for a plain insertion sort, to make future experimenting easier. Also made the maximum value of minrun a `#define` (``MAX_MINRUN`) to make experimenting with that easier too. And another bit of `#if``-disabled code rewrites binary insertion's innermost loop to remove its unpredictable branch. Surprisingly, this doesn't really seem to help overall. I'm unclear on why not. It certainly adds more instructions, but they're very simple, and it's hard to be believe they cost as much as a branch miss. 22 March 2024, 03:27:25 UTC
97ba910 gh-108716:: Remove _PyStaticCode_Init/Fini (#117141) More deepfreeze cleanup. 22 March 2024, 01:27:48 UTC
b3d25df gh-105716: Fix _PyInterpreterState_IsRunningMain() For Embedders (gh-117140) When I added _PyInterpreterState_IsRunningMain() and friends last year, I tried to accommodate applications that embed Python but don't call _PyInterpreterState_SetRunningMain() (not that they're expected to). That mostly worked fine until my recent changes in gh-117049, where the subtleties with the fallback code led to failures; the change ended up breaking test_tools.test_freeze, which exercises a basic embedding situation. The simplest fix is to drop the fallback code I originally added to _PyInterpreterState_IsRunningMain() (and later to _PyThreadState_IsRunningMain()). I've kept the fallback in the _xxsubinterpreters module though. I've also updated Py_FrozenMain() to call _PyInterpreterState_SetRunningMain(). 22 March 2024, 00:20:20 UTC
c4bf58a gh-116745: Remove all internal usage of @LIBPYTHON@ (#116746) Replace with MODULE_LDFLAGS. 21 March 2024, 23:54:50 UTC
3ec5730 gh-71052: Add Android build script and instructions (#116426) 21 March 2024, 23:52:29 UTC
50f9b0b gh-117061: Fix test_posix.test_sched_setaffinity() on RHEL9 (#117126) On RHEL9, sched_setaffinity(0, []) does not fail. 21 March 2024, 22:17:09 UTC
0907871 docs: fix over-linking in dataclasses.rst (#117005) 21 March 2024, 19:47:09 UTC
570a82d gh-117045: Add code object to function version cache (#117028) Changes to the function version cache: - In addition to the function object, also store the code object, and allow the latter to be retrieved even if the function has been evicted. - Stop assigning new function versions after a critical attribute (e.g. `__code__`) has been modified; the version is permanently reset to zero in this case. - Changes to `__annotations__` are no longer considered critical. (This fixes gh-109998.) Changes to the Tier 2 optimization machinery: - If we cannot map a function version to a function, but it is still mapped to a code object, we continue projecting the trace. The operand of the `_PUSH_FRAME` and `_POP_FRAME` opcodes can be either NULL, a function object, or a code object with the lowest bit set. This allows us to trace through code that calls an ephemeral function, i.e., a function that may not be alive when we are constructing the executor, e.g. a generator expression or certain nested functions. We will lose globals removal inside such functions, but we can still do other peephole operations (and even possibly [call inlining](https://github.com/python/cpython/pull/116290), if we decide to do it), which only need the code object. As before, if we cannot retrieve the code object from the cache, we stop projecting. 21 March 2024, 19:37:41 UTC
c85d841 gh-116333: Relax error string text expectations in SSL-related tests (GH-116334) * Relax error string text expectations in SSL-related tests As suggested [here][1], this change relaxes the OpenSSL error string text expectations in a number of tests. This was specifically done in support of more easily building CPython [AWS-LC][2], but because AWS-LC is a fork of [BoringSSL][3], it should increase compatibility with that library as well. In addition to the error string relaxations, we also add some guards around the `tls-unique` channel binding being used with TLSv1.3, as that feature (described in [RFC 6929][4]) is [not defined][5] for TLSv1.3. [1]: https://discuss.python.org/t/support-building-ssl-and-hashlib-modules-against-aws-lc/44505/4 [2]: https://github.com/aws/aws-lc [3]: https://github.com/google/boringssl [4]: https://datatracker.ietf.org/doc/html/rfc5929#section-3 [5]: https://datatracker.ietf.org/doc/html/rfc8446#appendix-C.5 21 March 2024, 19:16:36 UTC
1f72fb5 gh-116522: Refactor `_PyThreadState_DeleteExcept` (#117131) Split `_PyThreadState_DeleteExcept` into two functions: - `_PyThreadState_RemoveExcept` removes all thread states other than one passed as an argument. It returns the removed thread states as a linked list. - `_PyThreadState_DeleteList` deletes those dead thread states. It may call destructors, so we want to "start the world" before calling `_PyThreadState_DeleteList` to avoid potential deadlocks. 21 March 2024, 18:21:02 UTC
50369e6 gh-116996: Add pystats about _Py_uop_analyse_and_optimize (GH-116997) 21 March 2024, 17:27:46 UTC
617158e gh-76785: Drop PyInterpreterID_Type (gh-117101) I added it quite a while ago as a strategy for managing interpreter lifetimes relative to the PEP 554 (now 734) implementation. Relatively recently I refactored that implementation to no longer rely on InterpreterID objects. Thus now I'm removing it. 21 March 2024, 17:15:02 UTC
abdd1f9 gh-85283: Build _testconsole extension with limited C API (#117125) 21 March 2024, 16:45:43 UTC
8bea6c4 gh-115754: Add Py_GetConstant() function (#116883) Add Py_GetConstant() and Py_GetConstantBorrowed() functions. In the limited C API version 3.13, getting Py_None, Py_False, Py_True, Py_Ellipsis and Py_NotImplemented singletons is now implemented as function calls at the stable ABI level to hide implementation details. Getting these constants still return borrowed references. Add _testlimitedcapi/object.c and test_capi/test_object.py to test Py_GetConstant() and Py_GetConstantBorrowed() functions. 21 March 2024, 16:07:00 UTC
5a76d1b gh-105716: Update interp->threads.main After Fork (gh-117049) I missed this in gh-109921. We also update Py_Exit() to call _PyInterpreterState_SetNotRunningMain(), if necessary. 21 March 2024, 16:06:35 UTC
bbee57f gh-76785: Clean Up Interpreter ID Conversions (gh-117048) Mostly we unify the two different implementations of the conversion code (from PyObject * to int64_t. We also drop the PyArg_ParseTuple()-style converter function, as well as rename and move PyInterpreterID_LookUp(). 21 March 2024, 15:56:12 UTC
e728303 gh-116522: Stop the world before fork() and during shutdown (#116607) This changes the free-threaded build to perform a stop-the-world pause before deleting other thread states when forking and during shutdown. This fixes some crashes when using multiprocessing and during shutdown when running with `PYTHON_GIL=0`. This also changes `PyOS_BeforeFork` to acquire the runtime lock (i.e., `HEAD_LOCK(&_PyRuntime)`) before forking to ensure that data protected by the runtime lock (and not just the GIL or stop-the-world) is in a consistent state before forking. 21 March 2024, 14:01:16 UTC
1f8b24e gh-71052: Implement `ctypes.util.find_library` on Android (GH-116379) 21 March 2024, 13:20:57 UTC
d16c9d1 gh-116987: Support class code objects in inspect.findsource() (GH-117025) 21 March 2024, 10:30:10 UTC
6547330 GH-109653: Defer import of ``importlib.metadata._adapters`` (#109829) * adapters * Add comments for deferred imports with links to rationale. * Add blurb --------- Co-authored-by: Jason R. Coombs <jaraco@jaraco.com> 21 March 2024, 03:49:10 UTC
667294d gh-117089: Apply changes from importlib_metadata 7.1.0 (#117094) * Apply changes from importlib_metadata 7.1.0 * Include the data sources in the makefile (even though they're not needed) 21 March 2024, 03:01:24 UTC
f4cc77d gh-116869: Enable -Werror in test_cext for Free Threading (#117106) Check for warnings, but don't enable the compiler flag -Werror=declaration-after-statement. 20 March 2024, 23:06:24 UTC
104602a gh-105927: Limit PyWeakref_GetRef() to limited C API 3.13 (#117091) 20 March 2024, 22:52:23 UTC
8ad8898 gh-117089: Move importlib.metadata tests to their own package (#117092) * Ensure importlib.metadata tests do not leak references in sys.modules. * Move importlib.metadata tests to their own package for easier syncing with importlib_metadata. * Update owners and makefile for new directories. * Add blurb 20 March 2024, 21:11:00 UTC
7d44654 Fix sort order for "locale encoding" glossary item (#115794) Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM> 20 March 2024, 21:00:59 UTC
63289b9 GH-117066: Tier 2 optimizer: Don't throw away good traces if we can't optimize them perfectly. (GH-117067) 20 March 2024, 18:24:02 UTC
dcaf33a gh-114314: ctypes: remove stgdict and switch to heap types (GH-116458) Before this change, ctypes classes used a custom dict subclass, `StgDict`, as their `tp_dict`. This acts like a regular dict but also includes extra information about the type. This replaces stgdict by `StgInfo`, a C struct on the type, accessed by `PyObject_GetTypeData()` (PEP-697). All usage of `StgDict` (mainly variables named `stgdict`, `dict`, `edict` etc.) is converted to `StgInfo` (named `stginfo`, `info`, `einfo`, etc.). Where the dict is actually used for class attributes (as a regular PyDict), it's now called `attrdict`. This change -- not overriding `tp_dict` -- is made to make me comfortable with the next part of this PR: moving the initialization logic from `tp_new` to `tp_init`. The `StgInfo` is set up in `__init__` of each class, with a guard that prevents calling `__init__` more than once. Note that abstract classes (like `Array` or `Structure`) are created using `PyType_FromMetaclass` and do not have `__init__` called. Previously, this was done in `__new__`, which also wasn't called for abstract classes. Since `__init__` can be called from Python code or skipped, there is a tested guard to ensure `StgInfo` is initialized exactly once before it's used. Co-authored-by: neonene <53406459+neonene@users.noreply.github.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> 20 March 2024, 16:33:08 UTC
44fbab4 gh-117058: Update GUI and packaging recommendations for macOS. (#117059) 20 March 2024, 15:32:56 UTC
9221ef2 gh-116908: Only write to `_pending_calls.calls_to_do` with atomic operations (#117044) These writes to `pending->calls_to_do` need to be atomic, because other threads can read (atomically) from `calls_to_do` without holding `pending->mutex`. 20 March 2024, 15:18:26 UTC
fc45998 gh-116773: Ensure overlapped objects on Windows are not deallocated too early by asyncio (GH-116774) 20 March 2024, 14:33:28 UTC
519b2ae gh-117021: Fix integer overflow in PyLong_AsPid() on non-Windows 64-bit platforms (GH-117064) 20 March 2024, 13:39:53 UTC
8182319 gh-94808: add tests covering `PyFunction_{Get,Set}Closure` (GH-99429) 20 March 2024, 10:43:20 UTC
1530932 GH-108362: Incremental Cycle GC (GH-116206) 20 March 2024, 08:54:42 UTC
d5ebf8b gh-116869: Fix test_cext for Free Threading (#117043) Don't check for warnings on Free Threading. 19 March 2024, 22:23:17 UTC
438de10 gh-116869: Fix test_cext on RHEL7 (#117010) Remove -std option from CC command line. Skip C++14 test for now on non-Windows platforms (like RHEL7). 19 March 2024, 21:58:13 UTC
2d17309 gh-117041: Add "-X gil" in the Python CLI help (GH-117042) 19 March 2024, 21:30:25 UTC
332ac46 docs: announce venv creation before installing packages (#117036) 19 March 2024, 19:55:20 UTC
9080e9e gh-101100: Fix Sphinx warnings in `library/pydoc.rst` (#116913) 19 March 2024, 19:48:08 UTC
1ab0d0b gh-116886: Temporarily disable CIfuzz (memory) (#117018) 19 March 2024, 19:06:06 UTC
60e105c gh-113964: Don't prevent new threads until all non-daemon threads exit (#116677) Starting in Python 3.12, we prevented calling fork() and starting new threads during interpreter finalization (shutdown). This has led to a number of regressions and flaky tests. We should not prevent starting new threads (or `fork()`) until all non-daemon threads exit and finalization starts in earnest. This changes the checks to use `_PyInterpreterState_GetFinalizing(interp)`, which is set immediately before terminating non-daemon threads. 19 March 2024, 18:40:20 UTC
025ef7a gh-56374: Clarify documentation of nonlocal (#116942) Define 'nonlocal scopes' in a way that excludes class scopes. Rearrange the rest of the doc. Add "Programmer's note". 19 March 2024, 17:55:21 UTC
b85572c gh-90300: Improve the Python CLI help output (GH-115853) * document equivalent command-line options for all environment variables * document equivalent environment variables for all command-line options * reduce the size of variable and option descriptions to minimum * remove the ending period in single-sentence descriptions Co-authored-by: Éric <merwok@netwok.org> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> 19 March 2024, 17:26:32 UTC
61c659e gh-116417: Move limited C API complex.c tests to _testlimitedcapi (#117014) Split complex.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. 19 March 2024, 16:23:12 UTC
7f64ae3 gh-107607: Update comment about utf-8 BOM being ignored (#107858) --------- Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> 19 March 2024, 15:51:12 UTC
2c82592 GH-116017: Put JIT code and data on the same page (GH-116845) 19 March 2024, 15:47:28 UTC
f55e188 gh-116417: Move limited C API dict.c tests to _testlimitedcapi (#117006) Split dict.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. 19 March 2024, 15:06:20 UTC
7593574 gh-116647: Fix recursive child in dataclasses (#116790) 19 March 2024, 14:58:40 UTC
3cac2af gh-116417: Move limited C API long.c tests to _testlimitedcapi (#117001) * Split long.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. * Move testcapi_long.h from Modules/_testcapi/ to Modules/_testlimitedcapi/. * Add MODULE__TESTLIMITEDCAPI_DEPS to Makefile.pre.in. 19 March 2024, 14:04:23 UTC
a114d08 gh-92906: Enable test_cext and test_cppext on Windows (#117000) On Windows in release mode, the test_cext and test_cppext can now build C and C++ extensions. * test_cext now also builds the C extension without options. * test_cppext now also builds the C++ extension without options. * Add C++14 test to test_cppext; C++11 is not supported by MSVC. * Make setup_venv_with_pip_setuptools_wheel() quiet when support.verbose is false. Only show stdout and stderr on failure. 19 March 2024, 14:03:27 UTC
27cf3ed gh-90872: Fix subprocess.Popen.wait() for negative timeout (#116989) On Windows, subprocess.Popen.wait() no longer calls WaitForSingleObject() with a negative timeout: pass 0 ms if the timeout is negative. 19 March 2024, 13:42:44 UTC
408e127 gh-114099 - Add iOS framework loading machinery. (GH-116454) Co-authored-by: Malcolm Smith <smith@chaquo.com> Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com> 19 March 2024, 12:36:19 UTC
a557478 gh-116417: Move limited C API unicode.c tests to _testlimitedcapi (#116993) Split unicode.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. Update test_codecs. 19 March 2024, 12:30:39 UTC
1312094 gh-116869: Test the limited C API in test_cext (#116995) 19 March 2024, 12:19:45 UTC
0f27801 gh-116808: Fix optimized trace length histogram (GH-116827) 19 March 2024, 11:06:43 UTC
5405e9e gh-116869: Build test_cext with -Werror=declaration-after-statement (#116990) Make sure that the C API does not emit compiler warnings when built with -Werror=declaration-after-statement. 19 March 2024, 11:05:22 UTC
039d20a gh-116417: Move limited C API abstract.c tests to _testlimitedcapi (#116986) Split abstract.c and float.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. Update test_bytes and test_class. 19 March 2024, 10:44:13 UTC
b1bc375 gh-116957: configparser: Do post-process values after DuplicateOptionError (GH-116958) If you catch DuplicateOptionError / DuplicateSectionError when reading a config file (the intention is to skip invalid config files) and then attempt to use the ConfigParser instance, any values it *had* read successfully so far, were stored as a list instead of string! Later `get` calls would raise "AttributeError: 'list' object has no attribute 'find'" from somewhere deep in the interpolation code. 19 March 2024, 09:59:08 UTC
a8e93d3 gh-115756: make PyCode_GetFirstFree an unstable API (GH-115781) 19 March 2024, 09:20:38 UTC
a3cf0fa gh-116621: Specialize list.extend for dict items (gh-116888) 19 March 2024, 03:18:07 UTC
a22d05f gh-105866: fix dataclass with slots=True, weakref_slot=True (#105870) Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com> Co-authored-by: Kirill Podoprigora <kirill.bast9@mail.ru> Co-authored-by: Carl Meyer <carl@oddbird.net> 19 March 2024, 00:53:14 UTC
1d82a41 gh-116869: Enable test_cext and test_cppext on Free Threading build (#116973) Remove the "if Py_GIL_DISABLED" skip and move all "skip" decorators to the class. Use support.check_sanitizer() 18 March 2024, 23:14:29 UTC
dc2d0f4 gh-116417: Fix WASI build of _testlimitedcapi (#116974) Use different function names between _testcapi and _testlimitedcapi to not confuse the WASI linker. 18 March 2024, 22:06:52 UTC
165cb45 gh-116941: Fix pyatomic_std.h syntax errors (#116967) 18 March 2024, 21:05:43 UTC
ecb4a2b gh-116417: Move limited C API list.c tests to _testlimitedcapi (#116602) Split list.c and set.c tests of _testcapi into two parts: limited C API tests in _testlimitedcapi and non-limited C API tests in _testcapi. 18 March 2024, 21:03:55 UTC
4159644 gh-113538: Add asycio.Server.{close,abort}_clients (redo) (#116784) These give applications the option of more forcefully terminating client connections for asyncio servers. Useful when terminating a service and there is limited time to wait for clients to finish up their work. This is a do-over with a test fix for gh-114432, which was reverted. 18 March 2024, 20:15:53 UTC
a9c304c gh-116869: Make C API compatible with ISO C90 (#116950) Make the C API compatible with -Werror=declaration-after-statement compiler flag again. 18 March 2024, 19:16:58 UTC
590a260 gh-116869: Add test_cext test: build a C extension (#116954) 18 March 2024, 19:15:20 UTC
9c7b368 gh-108716: Cleanup remaining deepfreeze infrastructure (#116919) Keep Tools/build/deepfreeze.py around (we may repurpose it for deepfreezing non-code objects), and keep basic "clean" targets that remove the output of former deep-freeze activities, to keep the build directories of current devs clean. 18 March 2024, 18:13:11 UTC
7e1f38f gh-116916: Remove separate next_func_version counter (#116918) Somehow we ended up with two separate counter variables tracking "the next function version". Most likely this was a historical accident where an old branch was updated incorrectly. This PR merges the two counters into a single one: `interp->func_state.next_version`. 18 March 2024, 18:11:10 UTC
76d0868 Cleanup tier2 debug output (#116920) Various tweaks, including a slight refactor of the special cases for `_PUSH_FRAME`/`_POP_FRAME` to show the actual operand emitted. 18 March 2024, 18:08:43 UTC
849e071 gh-115119: Switch Windows build to mpdecimal external (GH-115182) This includes adding what should be a relatively temporary `Modules/_decimal/windows/mpdecimal.h` shim to choose between `mpdecimal32vc.h` or `mpdecimal64vc.h` based on which of `CONFIG_64` or `CONFIG_32` is defined. 18 March 2024, 17:07:25 UTC
7707b14 gh-115258: Fix hanging tests for threading queue shutdown (#115940) This reinstates `test_shutdown_immediate_all_methods_in_many_threads` and improves `test_shutdown_all_methods_in_many_threads`. 18 March 2024, 16:15:29 UTC
f139d84 gh-116869: Fix redefinition of the _PyOptimizerObject type (#116963) Defining a type twice is a C11 feature and so makes the C API incompatible with C99. Fix the issue by only defining the type once. Example of warning (treated as an error): In file included from Include/Python.h:122: Include/cpython/optimizer.h:77:3: error: redefinition of typedef '_PyOptimizerObject' is a C11 feature [-Werror,-Wtypedef-redefinition] } _PyOptimizerObject; ^ build/Include/cpython/optimizer.h:60:35: note: previous definition is here typedef struct _PyOptimizerObject _PyOptimizerObject; ^ 18 March 2024, 16:14:42 UTC
1d95451 gh-63207: Use GetSystemTimePreciseAsFileTime() in time.time() (#116822) 18 March 2024, 16:13:01 UTC
c80d2d3 gh-116877: Update `wheel` to version `0.43.0` (#116878) 18 March 2024, 15:50:32 UTC
52ef443 gh-71765: Fix inspect.getsource() on empty file (GH-20809) * bpo-27578: Fix inspect.getsource() on empty file For modules from empty files, `inspect.getsource()` now returns an empty string, and `inspect.getsourcelines()` returns a list of one empty string, fixing the expected invariant. As indicated by `exec('')`, empty strings are valid Python source code. Co-authored-by: Oleg Iarygin <oleg@arhadthedev.net> 18 March 2024, 15:13:02 UTC
f6cdc6b Revert "gh-96844: Improve error message of list.remove (gh-106455)" (#116956) This reverts commit 217f47d6e5e56bca78b8556e910cd00890f6f84a. 18 March 2024, 13:54:45 UTC
2a4cbf1 GH-65056: Improve the IP address' is_global/is_private documentation (GH-113186) * GH-65056: Improve the IP address' is_global/is_private documentation It wasn't clear what the semantics of is_global/is_private are and, when one gets to the bottom of it, it's not quite so simple (hence the exceptions listed). Co-authored-by: Petr Viktorin <encukou@gmail.com> 18 March 2024, 12:57:00 UTC
e2fcaf1 gh-115874: Don't use module state in teedataobject tp_dealloc (#116204) Co-authored-by: Brandt Bucher <brandtbucher@microsoft.com> 18 March 2024, 12:24:24 UTC
cd2ed91 gh-115538: Emit warning when use bool as fd in _io.WindowsConsoleIO (GH-116925) 18 March 2024, 11:48:50 UTC
43c9d61 CI: Pass environment variables directly to configure in JIT CI (#116156) Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> 18 March 2024, 09:49:45 UTC
762f489 gh-116664: Ensure thread-safe dict access in _warnings (#116768) Replace _PyDict_GetItemWithError() with PyDict_GetItemRef(). 18 March 2024, 09:37:48 UTC
4e45c6c gh-116881: Remove erroneous or redundant grammar NULL (GH-116885) In Lexical Analysis f-strings section, NULL in the description of 'literal character' means '\0'. In the format_spec grammar production, it is wrong with that meaning and redundant if instead interpreted as <nothing>. Remove it there. 18 March 2024, 09:31:13 UTC
3a99f5c Bump GitHub Actions (#116944) 18 March 2024, 08:44:15 UTC
b3f0c15 gh-116915: Make `_thread._ThreadHandle` support GC (#116934) Even though it has no internal references to Python objects it still has a reference to its type by virtue of being a heap type. We need to provide a traverse function that visits the type, but we do not need to provide a clear function. 18 March 2024, 08:40:16 UTC
2982bdb gh-85283: Build _statistics extension with the limited C API (#116927) Argument Clinic now inlines _PyArg_CheckPositional() for the limited C API. The generated code should be as fast or even a little bit faster. 17 March 2024, 17:59:02 UTC
0634201 GH-116377: Stop raising `ValueError` from `glob.translate()`. (#116378) Stop raising `ValueError` from `glob.translate()` when a `**` sub-string appears in a non-recursive pattern segment. This matches `glob.glob()` behaviour. 17 March 2024, 17:09:35 UTC
1cf0301 gh-85283: Build termios extension with the limited C API (#116928) 17 March 2024, 15:12:29 UTC
back to top