From 0c9fa4219dedfbf9ced93ab7ae51fb79e6f80653 Mon Sep 17 00:00:00 2001 From: Luan Taraschi <130802253+luantaraschi@users.noreply.github.com> Date: Sat, 22 Aug 2026 20:33:33 -0300 Subject: [PATCH] Stop skipping six tests whose reason no longer reproduces (#8583) Three skips in test_array say "Hangs", one in test_marshal carries no reason at all, and two in test_thread say "panic" on Linux. None of the six does any of that now. Each ran three to five times in a row and passed, and the array trio was also checked case by case against CPython 3.14, including the mutation-during-index-conversion shapes the tests were written for. The neighbouring markers that say "Flaky", "Flakey on CI" and "flaky EOFError" are left alone. One green run says nothing about those. Assisted-by: Claude Code:claude-opus-5 --- Lib/test/test_array.py | 3 --- Lib/test/test_marshal.py | 1 - Lib/test/test_thread.py | 2 -- 3 files changed, 6 deletions(-) diff --git a/Lib/test/test_array.py b/Lib/test/test_array.py index 64e1d1e5a..8cf669935 100644 --- a/Lib/test/test_array.py +++ b/Lib/test/test_array.py @@ -1707,7 +1707,6 @@ class LargeArrayTest(unittest.TestCase): # when the index conversion mutates the array. # See: https://github.com/python/cpython/issues/142555. - @unittest.skip("TODO: RUSTPYTHON; Hangs") @subTests("dtype", ["b", "B", "h", "H", "i", "l", "q", "I", "L", "Q"]) def test_setitem_use_after_clear_with_int_data(self, dtype): victim = array.array(dtype, list(range(64))) @@ -1720,7 +1719,6 @@ class LargeArrayTest(unittest.TestCase): self.assertRaises(IndexError, victim.__setitem__, 1, Index()) self.assertEqual(len(victim), 0) - @unittest.skip("TODO: RUSTPYTHON; Hangs") def test_setitem_use_after_shrink_with_int_data(self): victim = array.array('b', [1, 2, 3]) @@ -1732,7 +1730,6 @@ class LargeArrayTest(unittest.TestCase): self.assertRaises(IndexError, victim.__setitem__, 1, Index()) - @unittest.skip("TODO: RUSTPYTHON; Hangs") @subTests("dtype", ["f", "d"]) def test_setitem_use_after_clear_with_float_data(self, dtype): victim = array.array(dtype, [1.0, 2.0, 3.0]) diff --git a/Lib/test/test_marshal.py b/Lib/test/test_marshal.py index 4e5311cd0..eb2e8bda9 100644 --- a/Lib/test/test_marshal.py +++ b/Lib/test/test_marshal.py @@ -704,7 +704,6 @@ class InstancingTestCase(unittest.TestCase, HelperMixin): self.helper(code) self.helper3(code) - @unittest.skip("TODO: RUSTPYTHON") def testRecursion(self): obj = 1.2345 d = {"hello": obj, "goodbye": obj, obj: "hello"} diff --git a/Lib/test/test_thread.py b/Lib/test/test_thread.py index ebb193eab..a88051bd4 100644 --- a/Lib/test/test_thread.py +++ b/Lib/test/test_thread.py @@ -323,7 +323,6 @@ class ThreadRunningTests(BasicThreadTest): with self.assertRaisesRegex(RuntimeError, "thread not started"): handle._set_done() - @unittest.skipIf(__import__("sys").platform == "linux", "TODO: RUSTPYTHON; panic") def test_start_duplicate_handle(self): lock = thread.allocate_lock() lock.acquire() @@ -339,7 +338,6 @@ class ThreadRunningTests(BasicThreadTest): lock.release() handle.join() - @unittest.skipIf(__import__("sys").platform == "linux", "TODO: RUSTPYTHON; panic") def test_start_with_none_handle(self): def func(): pass