cpython/Lib/test/test_free_threading
Alper bc9e63dd9d
gh-116738: Fix thread-safety issue in re module for free threading (gh-141923)
Added atomic operations to `scanner_begin()` and `scanner_end()` to prevent
race conditions on the `executing` flag in free-threaded builds. Also added
tests for concurrent usage of the `re` module.

Without the atomic operations, `test_scanner_concurrent_access()` triggers
`assert(self->executing)` failures, or a thread sanitizer run emits errors.
2025-11-26 15:40:45 -05:00
..
__init__.py
test_bisect.py GH-116738: document thread-safety of bisect (GH-136555) 2025-07-30 02:44:10 +00:00
test_bz2.py gh-116738: Use PyMutex for bz2 module (gh-140555) 2025-10-27 09:52:30 -04:00
test_capi.py gh-137422: Fix race condition in PyImport_AddModuleRef (gh-141822) 2025-11-21 13:30:33 -05:00
test_code.py
test_cprofile.py gh-116738: make cProfile module thread-safe (#138229) 2025-09-06 13:19:14 +05:30
test_csv.py gh-116738: Make csv module thread-safe (gh-141365) 2025-11-21 11:22:31 -05:00
test_dbm_gnu.py gh-116738: test dbm.gnu module on FT Python build (#138467) 2025-10-12 13:12:10 +05:30
test_dict.py gh-133980: use atomic store in PyObject_GenericSetDict (#133988) 2025-05-20 21:11:47 +05:30
test_enumerate.py gh-121464: Make concurrent iteration over enumerate safe under free-threading (#125734) 2025-03-14 00:14:05 +05:30
test_func_annotations.py gh-123358: Use _PyStackRef in LOAD_DEREF (gh-130064) 2025-03-26 12:08:20 -04:00
test_functools.py gh-132641: fix race in lru_cache under free-threading (#133787) 2025-05-13 17:38:57 +00:00
test_gc.py gh-123358: Use _PyStackRef in LOAD_DEREF (gh-130064) 2025-03-26 12:08:20 -04:00
test_generators.py gh-133931: Introduce _PyObject_XSetRefDelayed to replace Py_XSETREF (gh-134377) 2025-06-18 08:36:02 +09:00
test_grp.py gh-116738: Make grp module thread-safe (#135434) 2025-07-14 11:18:41 -07:00
test_heapq.py gh-116738: Make grp module thread-safe (#135434) 2025-07-14 11:18:41 -07:00
test_io.py gh-138360: Fix test_free_threading for IO objects (#138359) 2025-09-01 19:53:13 +00:00
test_iteration.py gh-115999: Make list and tuple iteration more thread-safe. (#128637) 2025-02-18 16:52:46 -08:00
test_itertools.py gh-123471: Make itertools.chain thread-safe (#135689) 2025-06-30 16:36:58 +05:30
test_itertools_combinatoric.py gh-123471: Make itertools.product and itertools.combinations thread-safe (#132814) 2025-06-30 11:31:59 +00:00
test_json.py gh-116738: Fix test_json_mutating_exact_dict (#138339) 2025-09-01 21:44:19 +05:30
test_list.py gh-123358: Use _PyStackRef in LOAD_DEREF (gh-130064) 2025-03-26 12:08:20 -04:00
test_lzma.py gh-116738: use PyMutex in lzma module (#140711) 2025-11-12 02:01:55 +05:30
test_methodcaller.py gh-131152: Remove unused imports from tests (part 2) (#131154) 2025-03-13 10:57:40 +01:00
test_mmap.py gh-116738: make mmap module thread-safe (#139237) 2025-10-09 12:00:47 +05:30
test_monitoring.py gh-129441: Fix some flakiness in test_instrumentation (gh-141881) 2025-11-24 11:19:07 -05:00
test_pwd.py gh-116738: Make pwd module thread-safe (#136695) 2025-07-17 09:16:01 -07:00
test_races.py gh-128384: Use a context variable for warnings.catch_warnings (gh-130010) 2025-04-09 16:18:54 -07:00
test_re.py gh-116738: Fix thread-safety issue in re module for free threading (gh-141923) 2025-11-26 15:40:45 -05:00
test_resource.py gh-116738: add multi-threaded tests for resource module on free-threading builds (#138504) 2025-09-11 19:08:08 +05:30
test_reversed.py gh-120608: Make reversed iterator work with free-threading (#120971) 2025-03-12 12:39:52 +01:00
test_set.py
test_slots.py
test_str.py
test_suggestions.py gh-116738: Make _suggestions module thread-safe (gh-140321) 2025-10-22 09:14:48 +09:00
test_syslog.py gh-116738: Make syslog module thread-safe (#136760) 2025-07-21 09:24:42 -07:00
test_tokenize.py
test_type.py gh-133467: Fix typeobject tp_base race in free threading (gh-140549) 2025-11-05 16:20:40 -05:00
test_uuid.py gh-116738: test uuid module thread safety in free-threading (#140068) 2025-10-16 23:57:51 +05:30
test_zip.py