cpython/Lib/test
T. Wouters 388e1ca9f0
gh-115999: Make list and tuple iteration more thread-safe. (#128637)
Make tuple iteration more thread-safe, and actually test concurrent iteration of tuple, range and list. (This is prep work for enabling specialization of FOR_ITER in free-threaded builds.) The basic premise is:

Iterating over a shared iterable (list, tuple or range) should be safe, not involve data races, and behave like iteration normally does.

Using a shared iterator should not crash or involve data races, and should only produce items regular iteration would produce. It is not guaranteed to produce all items, or produce each item only once. (This is not the case for range iteration even after this PR.)

Providing stronger guarantees is possible for some of these iterators, but it's not always straight-forward and can significantly hamper the common case. Since iterators in general aren't shared between threads, and it's simply impossible to concurrently use many iterators (like generators), better to make sharing iterators without explicit synchronization clearly wrong.

Specific issues fixed in order to make the tests pass:

 - List iteration could occasionally fail an assertion when a shared list was shrunk and an item past the new end was retrieved concurrently. There's still some unsafety when deleting/inserting multiple items through for example slice assignment, which uses memmove/memcpy.

 - Tuple iteration could occasionally crash when the iterator's reference to the tuple was cleared on exhaustion. Like with list iteration, in free-threaded builds we can't safely and efficiently clear the iterator's reference to the iterable (doing it safely would mean extra, slow refcount operations), so just keep the iterable reference around.
2025-02-18 16:52:46 -08:00
..
archivetestdata
audiodata
certdata gh-107562: Update test certificates to expire far in the future (GH-125104) 2024-10-09 11:17:02 +02:00
cjkencodings
configdata
crashers
data
decimaltestdata Fix typos (#123775) 2024-09-09 14:58:26 +02:00
dtracedata
encoded_modules
leakers
libregrtest gh-117657: Add test_thread_local_bytecode to TSAN tests (gh-129753) 2025-02-11 16:54:32 -05:00
mathdata Fix typos (#123775) 2024-09-09 14:58:26 +02:00
regrtestdata/import_from_tests
subprocessdata
support gh-127933: Add option to run regression tests in parallel (gh-128003) 2025-02-04 17:44:59 -05:00
test_ast gh-130139: always check ast node type in ast.parse() with ast input (#130140) 2025-02-16 13:32:39 +00:00
test_asyncio improve test_tasks to use correct idiom for starting task in asyncio (#130257) 2025-02-18 12:08:25 +00:00
test_capi gh-86069: Add more PyNumber_InPlacePower() tests (GH-130111) 2025-02-17 00:07:10 +00:00
test_cext test_cext, test_cppext: enable /W4 warnings on Windows (#124253) 2024-09-19 22:32:01 +02:00
test_concurrent_futures gh-127949: deprecate asyncio.set_event_loop_policy (#128024) 2024-12-18 11:35:29 +05:30
test_cppext gh-127906: Test the limited C API in test_cppext (#127916) 2024-12-13 13:23:20 +00:00
test_ctypes gh-126554: correct detection of gcc for TestNullDlsym.test_null_dlsym (GH-129872) 2025-02-10 10:51:56 +01:00
test_dataclasses gh-118974: Add decorator argument to make_dataclass (gh-122723) 2024-10-01 09:51:51 -04:00
test_doctest gh-128816: Fix warnings in test_doctest (GH-128817) 2025-01-15 15:05:59 +02:00
test_email gh-80222: Fix email address header folding with long quoted-string (#122753) 2025-01-18 19:50:52 -05:00
test_free_threading gh-115999: Make list and tuple iteration more thread-safe. (#128637) 2025-02-18 16:52:46 -08:00
test_future_stmt gh-126139: Improve error message location for future statement with unknown feature (#126140) 2024-10-29 23:57:59 +00:00
test_gdb gh-71339: Add additional assertion methods for unittest (GH-128707) 2025-01-14 10:02:38 +02:00
test_import gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_importlib gh-115911: Ignore PermissionError during import from cwd (#116131) 2025-01-26 19:00:28 +00:00
test_inspect gh-130164: Fix inspect.Signature.bind() handling of positional-only args without defaults (GH-130192) 2025-02-18 17:19:04 +02:00
test_interpreters gh-127165: Disallow embedded NULL characters in _interpreters (#127199) 2024-12-01 06:33:23 +00:00
test_json gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_module gh-125900: Clean-up logic around immortalization in free-threading (#125901) 2024-10-24 18:09:59 -04:00
test_multiprocessing_fork
test_multiprocessing_forkserver
test_multiprocessing_spawn
test_pathlib GH-127381: pathlib ABCs: remove ReadablePath.rglob() (#130207) 2025-02-17 19:15:59 +00:00
test_peg_generator gh-125588: Teach the python PEG generator the new f-string tokens (#125589) 2024-10-29 23:40:12 +00:00
test_pydoc gh-128772: Fix pydoc for methods with __module__ is None (GH-129177) 2025-02-04 16:25:49 +02:00
test_pyrepl Replace non-breaking spaces with normal spaces (#130116) 2025-02-16 09:33:14 +08:00
test_sqlite3 gh-129928: Raise more accurate exception for incorrect sqlite3 UDF creation (#129941) 2025-02-11 08:26:01 +01:00
test_tkinter gh-128562: Fix generation of the tkinter widget names (GH-128604) 2025-01-13 15:54:46 +00:00
test_tomllib gh-118761: Improve import time of tomllib (#128907) 2025-01-16 18:48:42 -08:00
test_tools gh-44827: Improve error if BOM on first line of .po file (GH-130187) 2025-02-18 15:59:34 +02:00
test_ttk gh-124111: Update tkinter for compatibility with Tcl/Tk 9.0.0 (GH-124156) 2024-11-14 12:45:08 -06:00
test_unittest gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_warnings gh-129766: Fix crash on calling warnings._release_lock with no lock (#129771) 2025-02-07 12:59:52 +03:00
test_zipfile gh-127146: Update test skips for Emscripten 4.0.1 (#129375) 2025-01-28 01:05:21 +00:00
test_zoneinfo gh-125900: Clean-up logic around immortalization in free-threading (#125901) 2024-10-24 18:09:59 -04:00
tkinterdata
tokenizedata
tracedmodules
translationdata gh-126946: Improve error message in getopt.do_longs based on existing comment (GH-126871) 2024-11-26 10:54:02 +02:00
typinganndata
wheeldata
xmltestdata
zipimport_data
.ruff.toml
__init__.py
__main__.py
_test_atexit.py
_test_eintr.py gh-129205: Modernize test_eintr (#129316) 2025-01-27 18:04:45 +01:00
_test_embed_structseq.py gh-108303: Remove the non-test Lib/test/reperf.py (GH-114356) 2024-09-13 13:13:52 +02:00
_test_monitoring_shutdown.py
_test_multiprocessing.py gh-71339: Use new assertion methods in the multiprocessing tests (GH-128847) 2025-01-15 01:17:11 +02:00
_test_venv_multiprocessing.py
archiver_tests.py
audiotests.py
audit-tests.py gh-128863: Deprecate private C API functions (#128864) 2025-01-22 11:04:19 +00:00
autotest.py
bisect_cmd.py
clinic.test.c Replace non-breaking spaces with normal spaces (#130116) 2025-02-16 09:33:14 +08:00
cov.py
curses_tests.py
datetimetester.py gh-127260: Improve error consistency in both fromisoformat implementations (#130134) 2025-02-18 15:49:28 +00:00
dis_module.py
empty.vbs
exception_hierarchy.txt
fork_wait.py
levenshtein_examples.json
list_tests.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
lock_tests.py gh-121474: Add threading.Barrier parties arg sanity check. (GH-121480) 2024-07-30 11:53:07 +03:00
mapping_tests.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
memory_watchdog.py
mime.types
mock_socket.py
mp_fork_bomb.py
mp_preload.py
multibytecodec_support.py
pickletester.py gh-126992: Change pickle code to base 10 for load_long and load_int (GH-127042) 2024-12-11 12:37:59 +00:00
profilee.py
pstats.pck
pyclbr_input.py
pythoninfo.py gh-115382: Fix cross compiles when host and target use same SOABI 2024-10-16 23:01:42 +01:00
randv2_32.pck
randv2_64.pck
randv3.pck
re_tests.py
regrtest.py
relimport.py
seq_tests.py gh-125900: Clean-up logic around immortalization in free-threading (#125901) 2024-10-24 18:09:59 -04:00
signalinterproctester.py
ssl_servers.py
ssltests.py
string_tests.py closes gh-124016: update Unicode to 16.0.0 (#124017) 2024-09-13 07:47:04 -07:00
test___all__.py
test__colorize.py gh-129061: Fix FORCE_COLOR and NO_COLOR when empty strings (#129140) 2025-01-27 16:24:10 +02:00
test__interpchannels.py
test__interpreters.py gh-127196: Fix crash in _interpreters, when shared had invalid encodings (#127220) 2025-01-09 19:45:35 +00:00
test__locale.py GH-126727: Fix test_era_nl_langinfo with Japanese ERAs on Solaris (GH-127327) 2024-12-05 20:43:19 +02:00
test__opcode.py gh-100239: replace BINARY_SUBSCR & family by BINARY_OP with oparg NB_SUBSCR (#129700) 2025-02-07 22:39:54 +00:00
test__osx_support.py
test_abc.py gh-130095: Mark _py_abc tests as not thread-safe (gh-130131) 2025-02-14 16:21:45 -05:00
test_abstract_numbers.py
test_android.py Increase minimum Android API level to 24 (#125946) 2024-10-25 08:41:07 +08:00
test_annotationlib.py gh-119180: Add VALUE_WITH_FAKE_GLOBALS format to annotationlib (#124415) 2024-11-26 15:40:13 +00:00
test_apple.py gh-126925: Modify how iOS test results are gathered (#127592) 2024-12-09 13:28:57 +08:00
test_argparse.py GH-127133: Remove ability to nest argument groups & mutually exclusive groups (#127186) 2024-11-24 15:20:37 +00:00
test_array.py gh-128961: Fix exhausted array iterator crash in __setstate__() (#128962) 2025-01-18 10:55:29 +01:00
test_asdl_parser.py
test_asyncgen.py gh-128078: Use PyErr_SetRaisedException in _PyGen_SetStopIterationValue (#128287) 2025-01-13 21:24:13 +05:30
test_atexit.py gh-126907: make atexit thread safe in free-threading (#127935) 2024-12-16 19:31:44 +00:00
test_audit.py gh-126018: Avoid aborting due to unnecessary assert in sys.audit (#126020) 2024-10-27 07:41:42 -07:00
test_augassign.py
test_base64.py
test_baseexception.py
test_bdb.py gh-125422: Don't set the caller's f_trace if it's botframe (#125427) 2024-10-15 10:51:37 -04:00
test_bigaddrspace.py
test_bigmem.py
test_binascii.py
test_binop.py
test_bisect.py
test_bool.py
test_buffer.py gh-126980: Fix bytearray.__buffer__ crash on PyBUF_{READ,WRITE} (#126981) 2024-11-19 17:44:53 +03:00
test_bufio.py
test_build_details.py GH-107956: install build-details.json (PEP 739) (#130069) 2025-02-13 13:58:00 +00:00
test_builtin.py gh-71339: Fix an order-dependent failure in test_unittest (GH-129133) 2025-01-21 16:45:20 +02:00
test_bytes.py Replace non-breaking spaces with normal spaces (#130116) 2025-02-16 09:33:14 +08:00
test_bz2.py Bump Ruff to 0.6.7 (#124384) 2024-09-23 22:19:35 +00:00
test_c_locale_coercion.py
test_calendar.py gh-126476: Raise IllegalMonthError for calendar.formatmonth() when the input month is not correct (GH-126484) 2024-11-15 11:03:06 -08:00
test_call.py gh-117657: Skip tests that may cause stack overflows under TSan (#129751) 2025-02-06 17:03:01 -05:00
test_charmapcodec.py
test_class.py gh-127933: Add option to run regression tests in parallel (gh-128003) 2025-02-04 17:44:59 -05:00
test_clinic.py gh-128152: Argument Clinic: ignore pre-processor directives inside C comments (#128464) 2025-01-04 11:46:04 +01:00
test_cmath.py gh-121039: add Floats/ComplexesAreIdenticalMixin to test.support.testcase (GH-121071) 2024-09-08 16:01:54 +03:00
test_cmd.py
test_cmd_line.py gh-129354: Fix grammar in PyErr_FormatUnraisable() (#129475) 2025-01-31 09:45:35 +01:00
test_cmd_line_script.py gh-116042: Fix location for SyntaxErrors of invalid escapes in the tokenizer (#116049) 2025-02-13 01:07:37 +00:00
test_code.py gh-100239: specialize long tail of binary operations (#128722) 2025-01-16 15:22:13 +00:00
test_code_module.py gh-128595: Add test class helper to force no terminal colour (#128687) 2025-01-13 11:05:02 +00:00
test_codeccallbacks.py gh-124665: Add _PyCodec_UnregisterError and _codecs._unregister_error (#124677) 2024-09-29 02:25:23 +02:00
test_codecencodings_cn.py
test_codecencodings_hk.py
test_codecencodings_iso2022.py
test_codecencodings_jp.py
test_codecencodings_kr.py
test_codecencodings_tw.py
test_codecmaps_cn.py
test_codecmaps_hk.py
test_codecmaps_jp.py
test_codecmaps_kr.py
test_codecmaps_tw.py
test_codecs.py gh-123803: Support arbitrary code page encodings on Windows (GH-123804) 2024-11-18 17:45:25 +00:00
test_codeop.py gh-128016: Improved invalid escape sequence warning message (#128020) 2025-01-15 18:00:54 +01:00
test_collections.py gh-71339: Use assertIsSubclass() and assertNotIsSubclass() in test_collections (GH-128824) 2025-01-20 11:16:32 +02:00
test_colorsys.py
test_compare.py
test_compile.py gh-126835: Move const folding of lists & sets from ast_opt.c to flowgraph.c (#130032) 2025-02-13 12:11:07 +00:00
test_compileall.py gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_compiler_assemble.py gh-126072: do not add None to co_consts if there is no docstring (GH-126101) 2024-10-30 09:01:09 +00:00
test_compiler_codegen.py GH-128533: Add NOT_TAKEN instruction after bytecode optimization. (GH-128554) 2025-01-06 22:01:07 +00:00
test_complex.py gh-120010: Fix invalid (nan+nanj) results in _Py_c_prod() (GH-120287) 2024-12-06 12:28:32 +02:00
test_configparser.py gh-129678: ConfigParser: do not write an empty unnamed section (GH-129679) 2025-02-17 14:24:57 +01:00
test_contains.py
test_context.py gh-129889: Support context manager protocol by contextvars.Token (#129888) 2025-02-12 12:32:58 +01:00
test_contextlib.py Bump Ruff to 0.6.7 (#124384) 2024-09-23 22:19:35 +00:00
test_contextlib_async.py gh-128265: Support WASI/Emscripten on PDB tests, by removing asyncio from pdb tests (#128264) 2024-12-28 16:59:49 +02:00
test_copy.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_copyreg.py
test_coroutines.py gh-129354: Cleanup test_coroutines (#129684) 2025-02-05 11:43:46 +00:00
test_cprofile.py gh-126220: Fix crash on calls to _lsprof.Profiler methods with 0 args (backportable) (#126271) 2024-11-02 00:53:29 +03:00
test_csv.py gh-126133: Only use start year in PSF copyright, remove end years (#126236) 2024-11-12 15:59:19 +02:00
test_curses.py gh-120378: Fix crash caused by integer overflow in curses (#124555) 2024-10-02 14:31:23 +00:00
test_datetime.py
test_dbm.py
test_dbm_dumb.py
test_dbm_gnu.py gh-126742: Add _PyErr_SetLocaleString, use it for gdbm & dlerror messages (GH-126746) 2024-12-17 12:12:45 +01:00
test_dbm_ndbm.py
test_dbm_sqlite3.py
test_decimal.py gh-130230: Fix crash in pow() with only Decimal third argument (GH-130237) 2025-02-18 09:46:48 +02:00
test_decorators.py
test_defaultdict.py
test_deque.py
test_descr.py gh-127933: Add option to run regression tests in parallel (gh-128003) 2025-02-04 17:44:59 -05:00
test_descrtut.py
test_devpoll.py
test_dict.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_dictcomps.py gh-123142: fix too wide source location of GET_ITER/GET_AITER (#123420) 2024-08-28 17:11:52 +01:00
test_dictviews.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_difflib.py
test_difflib_expect.html gh-129939: Add darkmode support for difflib's comparison pages (#129940) 2025-02-11 10:58:57 +02:00
test_dis.py gh-100239: replace BINARY_SUBSCR & family by BINARY_OP with oparg NB_SUBSCR (#129700) 2025-02-07 22:39:54 +00:00
test_docxmlrpc.py
test_dtrace.py
test_dynamic.py
test_dynamicclassattribute.py
test_eintr.py
test_embed.py Replace non-breaking spaces with normal spaces (#130116) 2025-02-16 09:33:14 +08:00
test_ensurepip.py
test_enum.py gh-112328: Make EnumDict usable on its own and document it (GH-123669) 2024-12-20 11:40:58 -08:00
test_enumerate.py
test_eof.py gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_epoll.py
test_errno.py
test_except_star.py gh-128049: Fix type confusion bug with the return value of a custom ExceptionGroup split function (#128079) 2024-12-20 19:20:31 +00:00
test_exception_group.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_exception_hierarchy.py
test_exception_variations.py
test_exceptions.py gh-88535: Improve syntax error for wrongly closed strings (#26633) 2025-02-13 01:30:20 +00:00
test_extcall.py
test_external_inspection.py gh-129195: use future_add_to_awaited_by/future_discard_from_awaited_by in asyncio.staggered.staggered_race (#129253) 2025-01-26 21:14:16 +05:30
test_faulthandler.py gh-129825: Skip test_faulthandler.test_register_chain under TSAN (gh-129827) 2025-02-07 17:35:59 -05:00
test_fcntl.py
test_file.py gh-125522 : add explicit exception types to bare excepts in tests (#125523) 2024-10-15 17:00:04 +01:00
test_file_eintr.py
test_filecmp.py gh-122400: Handle ValueError in filecmp (GH-122401) 2024-07-30 08:50:30 +00:00
test_fileinput.py
test_fileio.py gh-127146: Emscripten clean up test suite (#127984) 2024-12-17 07:48:23 +00:00
test_fileutils.py
test_finalization.py
test_float.py gh-53203: Improve tests for strptime() (GH-125090) 2024-10-08 08:40:02 +00:00
test_flufl.py gh-125331: Allow the parser to activate future imports on the fly (#125482) 2025-02-14 04:54:56 +00:00
test_fnmatch.py gh-122288: Improve performances of fnmatch.translate (#122289) 2024-11-27 16:42:45 +00:00
test_fork1.py
test_format.py
test_fractions.py gh-121797: Add class method Fraction.from_number() (GH-121800) 2024-10-14 07:54:59 +00:00
test_frame.py gh-93649: Move PyFrame C API tests to test_capi (#129512) 2025-01-31 13:51:58 +01:00
test_frozen.py
test_fstring.py gh-129693: Suppress SyntaxWarning in test_fstring (#129830) 2025-02-13 00:38:28 +00:00
test_ftplib.py
test_funcattrs.py gh-122864: Fix a `test_funcattrs.test___builtins__` when executing directly (#124845) 2024-10-02 12:58:39 +03:00
test_functools.py gh-127750: Fix and optimize functools.singledispatchmethod() (GH-130008) 2025-02-17 11:11:20 +02:00
test_gc.py gh-126491: Revert "GH-126491: Lower heap size limit with faster marking (GH-127519)" (GH-127770) 2024-12-10 11:53:56 +01:00
test_generated_cases.py gh-129989: Properly disable tailcall interp in configure (GH-129991) 2025-02-16 03:01:24 +08:00
test_generator_stop.py
test_generators.py gh-129354: Use PyErr_FormatUnraisable() function (#129523) 2025-02-05 10:31:59 +00:00
test_genericalias.py gh-126012: Add __class_getitem__ to memoryview (#126013) 2024-10-27 13:36:03 +03:00
test_genericclass.py
test_genericpath.py gh-127146: Update test skips for Emscripten 4.0.1 (#129375) 2025-01-28 01:05:21 +00:00
test_genexps.py
test_getopt.py gh-126390: Support for preserving order of options and nonoption arguments in gnu_getopt() (GH-126393) 2024-11-13 22:50:46 +02:00
test_getpass.py
test_getpath.py GH-128469: Revert "warn when libpython was loaded from outside the build directory (#128645)" (#129506) 2025-01-31 11:17:37 +00:00
test_gettext.py gh-130193: Increase test coverage of gettext.c2py (GH-130208) 2025-02-17 10:57:34 +02:00
test_glob.py gh-129350: Make tests for glob with trailing slash more strict (GH-129376) 2025-02-04 16:24:22 +02:00
test_global.py gh-58749: Remove incorrect language spec claims about the global statement (GH-126523) 2024-11-12 10:11:40 +10:00
test_grammar.py
test_graphlib.py
test_grp.py
test_gzip.py gh-125260: Change the default `gzip.compress()` mtime to 0 (#125261) 2024-10-12 18:18:48 +01:00
test_hash.py
test_hashlib.py gh-128657: Skip test_get_builtin_constructor when running with --parallel-threads (GH-130018) 2025-02-11 16:59:36 -05:00
test_heapq.py
test_hmac.py
test_html.py
test_htmlparser.py
test_http_cookiejar.py
test_http_cookies.py gh-112713 : Add support for 'partitioned' attribute in http.cookies (GH-112714) 2025-01-24 22:31:52 +00:00
test_httplib.py gh-112064: Fix incorrect handling of negative read sizes in HTTPResponse.read() (#128270) 2025-01-28 11:37:32 +00:00
test_httpservers.py
test_idle.py
test_imaplib.py gh-55454: Add IMAP4 IDLE support to imaplib (#122542) 2025-02-06 19:15:11 -08:00
test_index.py
test_int.py
test_int_literal.py
test_io.py gh-127146: Update test skips for Emscripten 4.0.1 (#129375) 2025-01-28 01:05:21 +00:00
test_ioctl.py
test_ipaddress.py gh-124217, ipaddress: Add RFC 9637 reserved IPv6 block 3fff::/20 (#124240) 2024-09-20 11:01:28 +00:00
test_isinstance.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_iter.py gh-123142: fix too wide source location of GET_ITER/GET_AITER (#123420) 2024-08-28 17:11:52 +01:00
test_iterlen.py
test_itertools.py gh-126618: fix repr(itertools.count(sys.maxsize)) (#127048) 2024-12-02 14:14:40 +01:00
test_keyword.py
test_keywordonlyarg.py
test_kqueue.py
test_largefile.py
test_launcher.py
test_linecache.py
test_list.py
test_listcomps.py gh-125522 : add explicit exception types to bare excepts in tests (#125523) 2024-10-15 17:00:04 +01:00
test_lltrace.py
test_locale.py gh-128438: Use EnvironmentVarGuard for test_{builtin,io,locale}.py (#128476) 2025-01-15 10:38:43 +01:00
test_logging.py gh-126400: Add TCP socket timeout to SysLogHandler to prevent blocking (GH-126716) 2025-01-29 19:37:43 +00:00
test_long.py Remove duplicated dict keys in test_{embed,long}.py fixtures (#128727) 2025-01-20 13:50:10 +01:00
test_longexp.py
test_lzma.py
test_mailbox.py
test_marshal.py gh-127146: Resolve some minor problems in Emscripten tests (#127565) 2024-12-04 08:06:20 +08:00
test_math.py gh-101410: support custom messages for domain errors in the math module (#124299) 2025-01-23 13:55:25 +00:00
test_math_property.py
test_memoryio.py
test_memoryview.py gh-127085: Add a test skip if multiprocessing isn't available (#128019) 2024-12-17 08:18:33 +00:00
test_metaclass.py gh-127773: Disable attribute cache on incompatible MRO entries (GH-127924) 2025-01-13 14:10:41 +01:00
test_mimetypes.py gh-85957: Add missing MIME types for images with RFCs (#126966) 2024-11-18 20:13:20 +02:00
test_minidom.py
test_mmap.py gh-124213: Skip tests failing inside systemd-nspawn --suppress-sync=true (#124215) 2024-09-20 13:37:49 +00:00
test_modulefinder.py
test_monitoring.py GH-129386: Use symbolic constants for specialization tests (GH-129415) 2025-01-29 10:49:58 -08:00
test_msvcrt.py Fix typos (#123775) 2024-09-09 14:58:26 +02:00
test_multibytecodec.py
test_multiprocessing_main_handling.py
test_named_expressions.py
test_netrc.py
test_ntpath.py gh-127146: Update test skips for Emscripten 4.0.1 (#129375) 2025-01-28 01:05:21 +00:00
test_numeric_tower.py
test_opcache.py gh-100239: replace BINARY_SUBSCR & family by BINARY_OP with oparg NB_SUBSCR (#129700) 2025-02-07 22:39:54 +00:00
test_opcodes.py
test_openpty.py
test_operator.py gh-127933: Add option to run regression tests in parallel (gh-128003) 2025-02-04 17:44:59 -05:00
test_optimizer.py
test_optparse.py gh-126413: Add translation tests for getopt and optparse (GH-126698) 2024-11-12 00:16:39 +02:00
test_ordered_dict.py gh-125900: Clean-up logic around immortalization in free-threading (#125901) 2024-10-24 18:09:59 -04:00
test_os.py gh-127146: Skip test_readinto_non_blocking on Emscripten (#129421) 2025-01-29 07:30:42 +08:00
test_osx_env.py
test_patma.py gh-123562: Improve SyntaxError message for case ... as a.b (#123563) 2024-09-02 13:11:44 +02:00
test_pdb.py gh-124703: Add extra checks for pdb quit test (#130286) 2025-02-18 16:55:39 -05:00
test_peepholer.py gh-126835: Set location for noped out instructions after constant folding in CFG. (#130109) 2025-02-14 14:15:08 +00:00
test_pep646_syntax.py
test_perf_profiler.py gh-128515: Add BOLT build to CI (gh-128845) 2025-01-18 07:32:23 +00:00
test_perfmaps.py
test_pickle.py gh-125631: Enable setting persistent_id and persistent_load of pickler and unpickler (GH-125752) 2024-11-07 08:53:02 +02:00
test_picklebuffer.py
test_pickletools.py gh-126992: Change pickle code to base 10 for load_long and load_int (GH-127042) 2024-12-11 12:37:59 +00:00
test_pkg.py
test_pkgutil.py gh-97850: remove `find_loader and get_loader from pkgutil` (#119656) 2024-11-01 18:35:22 +02:00
test_platform.py gh-122549: Add platform.invalidate_caches() (#122547) 2024-11-15 13:52:56 +00:00
test_plistlib.py gh-126133: Only use start year in PSF copyright, remove end years (#126236) 2024-11-12 15:59:19 +02:00
test_poll.py
test_popen.py
test_poplib.py
test_positional_only_arg.py
test_posix.py gh-118201: Simplify conv_confname (#126089) 2024-11-19 10:42:19 -05:00
test_posixpath.py gh-126780: Fix ntpath.normpath() for drive-relative paths (GH-126801) 2024-11-21 14:43:36 +00:00
test_pow.py
test_pprint.py
test_print.py Remove "print >>obj" exception hint for Python 2 (#122853) 2024-08-12 04:12:14 +00:00
test_profile.py
test_property.py Fix typos (#123775) 2024-09-09 14:58:26 +02:00
test_pstats.py
test_pty.py
test_pulldom.py
test_pwd.py
test_py_compile.py
test_pyclbr.py Provide curframe_locals for backward compatibility but deprecate it (#125951) 2025-02-08 23:35:28 +00:00
test_pyexpat.py
test_queue.py Fix typos (#123775) 2024-09-09 14:58:26 +02:00
test_quopri.py
test_raise.py gh-125522 : add explicit exception types to bare excepts in tests (#125523) 2024-10-15 17:00:04 +01:00
test_random.py gh-123968: Fix lower bound for python -m random --float (#123971) 2024-09-12 16:54:18 +03:00
test_range.py
test_re.py gh-124130: Fix a bug in matching regular expression \B in empty string (GH-127007) 2025-01-02 12:11:21 +00:00
test_readline.py gh-122431: Disallow negative values in readline.append_history_file (#122469) 2024-12-05 16:07:38 +00:00
test_regrtest.py GH-126599: Remove the PyOptimizer API (GH-129194) 2025-01-28 16:10:51 -08:00
test_repl.py gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_reprlib.py gh-113570: reprlib.repr does not use builtin __repr__ for reshadowed builtins (GH-113577) 2024-10-17 16:34:37 +00:00
test_resource.py
test_richcmp.py gh-126146: Remove `__cmp__` method from tests (#126147) 2024-10-30 00:47:26 +02:00
test_rlcompleter.py
test_robotparser.py
test_runpy.py gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_sax.py
test_sched.py
test_scope.py
test_script_helper.py
test_secrets.py
test_select.py
test_selectors.py
test_set.py
test_setcomps.py gh-123142: fix too wide source location of GET_ITER/GET_AITER (#123420) 2024-08-28 17:11:52 +01:00
test_shelve.py
test_shlex.py
test_shutil.py gh-81340: Use copy_file_range in shutil.copyfile copy functions (GH-93152) 2025-02-03 10:23:27 +00:00
test_signal.py gh-129354: Fix grammar in PyErr_FormatUnraisable() (#129475) 2025-01-31 09:45:35 +01:00
test_site.py
test_slice.py
test_smtplib.py
test_smtpnet.py
test_socket.py gh-119461: Restore the testSocket VSOCK skipUnless removed by PR #119465 (#129561) 2025-02-01 20:46:56 -08:00
test_socketserver.py
test_sort.py
test_source_encoding.py
test_ssl.py gh-127350: Add Py_fopen() and Py_fclose() functions (#127821) 2025-01-06 12:43:09 +00:00
test_stable_abi_ctypes.py gh-128629: Add Py_PACK_VERSION and Py_PACK_FULL_VERSION (GH-128630) 2025-01-09 11:10:28 +01:00
test_startfile.py
test_stat.py
test_statistics.py Fix typos in comments (#123201) 2024-08-21 12:49:23 +00:00
test_str.py gh-82045: Correct and deduplicate "isprintable" docs; add test. (GH-130118) 2025-02-14 18:16:47 +01:00
test_strftime.py gh-52551: Use wcsftime() to implement time.strftime() on Windows (GH-125658) 2024-10-19 11:29:51 +03:00
test_string.py gh-71494: string.Formatter: support keys/attributes in unnumbered fields (GH-21767) 2025-01-31 13:16:24 +01:00
test_string_literals.py gh-116042: Fix location for SyntaxErrors of invalid escapes in the tokenizer (#116049) 2025-02-13 01:07:37 +00:00
test_stringprep.py
test_strptime.py gh-127146: Emscripten clean up test suite (#127984) 2024-12-17 07:48:23 +00:00
test_strtod.py
test_struct.py gh-129354: Use PyErr_FormatUnraisable() function (#129523) 2025-02-05 10:31:59 +00:00
test_structseq.py gh-122527: Fix a crash on deallocation of PyStructSequence (GH-122577) 2024-08-02 18:11:44 +02:00
test_subclassinit.py
test_subprocess.py gh-120754: Add a strace helper and test set of syscalls for open().read(), Take 2 (#123413) 2024-11-02 20:37:21 -07:00
test_sundry.py
test_super.py GH-129386: Use symbolic constants for specialization tests (GH-129415) 2025-01-29 10:49:58 -08:00
test_support.py gh-127146: Emscripten clean up test suite (#127984) 2024-12-17 07:48:23 +00:00
test_symtable.py gh-122560: add test that comprehension loop var appears only in one scope of the symtable (#122582) 2024-08-02 23:56:51 +01:00
test_syntax.py gh-129515: Clarify syntax error messages for conditional expressions (#129880) 2025-02-18 21:43:19 +00:00
test_sys.py gh-128954: Reorder _PyInterpreterFrame fields for reduced memory usage (#128958) 2025-01-27 17:14:51 +00:00
test_sys_setprofile.py gh-125522 : add explicit exception types to bare excepts in tests (#125523) 2024-10-15 17:00:04 +01:00
test_sys_settrace.py gh-128404: Remove asyncio from Lib/test/test_sys_settrace (#128435) 2025-01-03 12:33:35 +02:00
test_sysconfig.py tests: add test.support.venv.VirtualEnvironmentMixin (#129461) 2025-01-30 03:32:24 +00:00
test_syslog.py
test_tabnanny.py
test_tarfile.py gh-127146: Update test skips for Emscripten 4.0.1 (#129375) 2025-01-28 01:05:21 +00:00
test_tcl.py
test_tempfile.py gh-126639: Add ResourceWarning to NamedTemporaryFile (#126677) 2024-12-18 10:12:24 +00:00
test_termios.py Android: Update tests for newly-available functions affected by SELinux (#126015) 2024-10-27 10:35:53 +08:00
test_textwrap.py
test_thread.py
test_thread_local_bytecode.py gh-117657: Add test_thread_local_bytecode to TSAN tests (gh-129753) 2025-02-11 16:54:32 -05:00
test_threadedtempfile.py
test_threading.py gh-59705: Implement _thread.set_name() on Windows (#128675) 2025-01-17 14:55:43 +01:00
test_threading_local.py gh-127190: Fix local_setattro() error handling (#127366) 2024-11-28 17:35:48 +01:00
test_threadsignals.py
test_time.py gh-125997: Increase test coverage for time.sleep() (#128751) 2025-01-13 17:58:11 +01:00
test_timeit.py
test_timeout.py
test_tokenize.py gh-127933: Add option to run regression tests in parallel (gh-128003) 2025-02-04 17:44:59 -05:00
test_trace.py gh-112192: Increase the trace module coverage precision to one decimal (#126972) 2024-12-03 23:33:13 +01:00
test_traceback.py gh-96092: Fix traceback.walk_stack(None) skipping too many frames (#129330) 2025-02-13 01:43:09 +00:00
test_tracemalloc.py gh-129185: Fix PyTraceMalloc_Untrack() at Python exit (#129191) 2025-01-23 12:07:34 +01:00
test_ttk_textonly.py
test_tty.py
test_tuple.py
test_turtle.py gh-126349: test_turtle: Add cleanup to avoid reference leaks (GH-129079) 2025-01-21 11:28:34 +01:00
test_type_aliases.py gh-124787: Fix TypeAliasType and incorrect type_params (#124795) 2024-10-11 17:39:18 +03:00
test_type_annotations.py gh-119180: Set the name of the param to __annotate__ to "format" (#124730) 2024-12-30 08:19:38 -08:00
test_type_cache.py GH-129386: Use symbolic constants for specialization tests (GH-129415) 2025-01-29 10:49:58 -08:00
test_type_comments.py
test_type_params.py gh-128404: remove asyncio from test_type_params (#128436) 2025-01-03 07:50:24 +00:00
test_typechecks.py
test_types.py gh-53203: Improve tests for strptime() (GH-125090) 2024-10-08 08:40:02 +00:00
test_typing.py gh-71339: Use new assertion methods in test_typing (GH-128825) 2025-01-14 15:19:32 +02:00
test_ucn.py
test_unary.py
test_unicode_file.py
test_unicode_file_functions.py gh-127146: Emscripten clean up test suite (#127984) 2024-12-17 07:48:23 +00:00
test_unicode_identifiers.py
test_unicodedata.py gh-127873: Only check sys.flags.ignore_environment for PYTHON* env vars (#127877) 2025-01-21 16:10:08 +00:00
test_univnewlines.py
test_unpack.py gh-122239: Add actual count in unbalanced unpacking error message when possible (#122244) 2024-09-10 16:07:30 +01:00
test_unpack_ex.py
test_unparse.py gh-130139: always check ast node type in ast.parse() with ast input (#130140) 2025-02-16 13:32:39 +00:00
test_urllib.py gh-128734: Fix ResourceWarning in urllib tests (GH-128735) 2025-01-12 12:53:17 +02:00
test_urllib2.py gh-128734: Fix ResourceWarning in urllib tests (GH-128735) 2025-01-12 12:53:17 +02:00
test_urllib2_localnet.py gh-128734: Fix ResourceWarning in urllib tests (GH-128735) 2025-01-12 12:53:17 +02:00
test_urllib2net.py GH-127090: Fix urllib.response.addinfourl.url value for opened file: URIs (#127091) 2024-12-07 17:58:42 +00:00
test_urllib_response.py gh-128734: Fix ResourceWarning in urllib tests (GH-128735) 2025-01-12 12:53:17 +02:00
test_urllibnet.py gh-128734: Fix ResourceWarning in urllib tests (GH-128735) 2025-01-12 12:53:17 +02:00
test_urlparse.py gh-105704: Disallow square brackets ([ and ]) in domain names for parsed URLs (#129418) 2025-01-31 09:41:34 -08:00
test_userdict.py
test_userlist.py
test_userstring.py
test_utf8_mode.py
test_utf8source.py
test_uuid.py gh-125522: Fix bare except in test_uuid (#129018) 2025-01-29 20:59:45 +00:00
test_venv.py gh-71339: Add additional assertion methods for unittest (GH-128707) 2025-01-14 10:02:38 +02:00
test_wait3.py
test_wait4.py
test_wave.py
test_weakref.py gh-125900: Clean-up logic around immortalization in free-threading (#125901) 2024-10-24 18:09:59 -04:00
test_weakset.py
test_webbrowser.py Fix typos in docs, error messages and comments (#122502) 2024-08-01 00:26:09 +00:00
test_winapi.py
test_winconsoleio.py gh-124008: Fix calculation of the number of written bytes for the Windows console (GH-124059) 2024-11-27 13:38:12 +02:00
test_winreg.py
test_winsound.py
test_with.py gh-125522 : add explicit exception types to bare excepts in tests (#125523) 2024-10-15 17:00:04 +01:00
test_wmi.py
test_wsgiref.py
test_xml_dom_minicompat.py
test_xml_dom_xmlbuilder.py gh-128302: Fix bugs in xml.dom.xmlbuilder (GH-128284) 2025-01-07 12:40:41 +02:00
test_xml_etree.py gh-123213: Fixed xml.etree.ElementTree.Element.extend and assignment to no longer hide exceptions (GH-123214) 2024-08-23 12:12:58 +03:00
test_xml_etree_c.py gh-127146: Emscripten: Skip segfaults in test suite (#127151) 2024-12-05 08:26:25 +08:00
test_xmlrpc.py
test_xxlimited.py
test_xxtestfuzz.py
test_yield_from.py gh-126366: Fix crash if __iter__ raises an exception during yield from (#126369) 2024-11-05 15:26:36 +05:30
test_zipapp.py
test_zipfile64.py
test_zipimport.py gh-127146: Update test skips for Emscripten 4.0.1 (#129375) 2025-01-28 01:05:21 +00:00
test_zipimport_support.py
test_zlib.py gh-125522: Remove bare except in test_zlib.test_flushes (gh-126321) 2024-11-02 08:27:07 +00:00
testcodec.py
tf_inherit_check.py
win_console_handler.py
xmltests.py