Neil Schemenauer and GitHub
fa427cbdee
[3.15] gh-158195: Do not hold the type lock during stop-the-world (gh-159972) (gh-160987)
...
Fixes the free-threaded deadlock described in gh-158195 by removing
type-lock pinning. The type lock and class dict lock can now be released
normally while a thread waits to stop the world, rather than remaining
pinned across that wait.
For 3.15 backport, avoid changing the default build behavior. The
following changes are now only for the free-threaded build:
- fresh __bases__ tuple copying
- type_new_copy_dict() and namespace-key normalization
- addition of the new exact-Unicode dictionary helpers
In the default build, you can still create a type with string-subclass
keys.
2026-11-07 12:54:40 -07:00
..
2026-10-22 09:55:05 -07:00
2026-05-05 15:19:16 +01:00
2026-05-02 09:50:06 -07:00
2026-02-12 00:15:33 +00:00
2026-08-26 14:52:45 +09:00
2026-04-18 09:56:56 +00:00
2026-10-13 00:18:42 +02:00
2026-04-17 01:55:03 +02:00
2026-02-06 22:11:58 -05:00
2026-05-02 13:42:03 +00:00
2026-08-22 12:39:14 +03:00
2026-10-10 13:58:08 +03:00
2026-06-19 09:52:07 -04:00
2026-04-06 11:37:02 -04:00
2026-06-27 17:42:31 +00:00
2026-05-11 14:23:39 -04:00
2026-11-07 12:54:40 -07:00
2026-02-26 06:21:05 +08:00
2026-04-30 09:27:57 -04:00
2026-10-10 22:08:49 +02:00
2026-03-11 12:39:24 +01:00
2026-04-17 01:55:03 +02:00
2026-04-17 01:55:03 +02:00
2026-06-02 13:36:52 +00:00
2026-05-05 15:19:16 +01:00
2026-09-24 23:52:22 +00:00
2026-09-24 23:52:22 +00:00
2026-10-02 18:48:03 +00:00
2026-05-05 09:18:04 +02:00
2026-04-22 09:08:23 +01:00
2026-10-11 15:42:59 +01:00
2026-06-27 17:42:31 +00:00
2026-05-05 09:29:07 +01:00
2026-05-13 23:29:08 +02:00
2026-05-02 13:42:03 +00:00
2026-10-02 18:48:03 +00:00
2026-04-16 09:22:41 +01:00
2026-10-19 14:54:15 -07:00
2026-04-01 21:42:10 +00:00
2026-05-05 15:19:16 +01:00
2026-10-22 09:55:05 -07:00
2026-05-13 23:29:08 +02:00
2026-04-08 09:15:11 +02:00
2026-11-06 13:17:05 +00:00
2026-04-06 23:08:47 -05:00
2026-10-22 06:23:06 -07:00
2026-05-02 19:59:51 +01:00
2026-10-12 16:31:15 +02:00
2026-08-25 09:38:28 +09:00
2026-10-20 17:03:22 -07:00
2026-07-05 10:41:56 +00:00
2026-05-24 14:36:30 +01:00
2026-07-09 19:00:28 +00:00
2026-03-11 12:39:24 +01:00
2026-02-18 04:16:27 +00:00
2026-10-13 12:43:19 -07:00
2026-07-10 02:07:38 +00:00
2026-02-17 11:12:25 -05:00
2026-09-24 23:52:22 +00:00
2026-04-30 12:19:13 -07:00
2026-04-11 21:54:23 +00:00
2026-04-11 21:54:23 +00:00
2026-05-05 09:18:04 +02:00
2026-05-05 09:18:04 +02:00
2026-04-20 21:55:03 +09:00
2026-04-01 08:33:30 +00:00
2026-04-15 21:52:30 -07:00
2026-05-06 15:01:12 +00:00
2026-08-31 09:53:56 +03:00
2026-10-02 14:45:34 +03:00
2026-04-16 09:22:41 +01:00
2026-05-07 19:08:12 -07:00
2026-09-24 23:52:22 +00:00
2026-10-16 16:18:33 +00:00
2026-10-12 16:31:15 +02:00
2026-10-22 06:23:06 -07:00
2026-05-24 12:48:58 +05:30
2026-10-19 14:54:15 -07:00