pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/pythonnet/pythonnet/pull/2721/commits/8e7c2bac47579bcbcc0cdca997ab6d8850424ae0

edia="all" rel="stylesheet" href="https://github.githubassets.com/assets/primer-70be7debc79a8eff.css" /> Python 3.14 free-threaded support by greateggsgreg · Pull Request #2721 · pythonnet/pythonnet · GitHub
Skip to content
Open
Changes from 1 commit
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
ebd0a95
Thread-safety prep for free-threading builds
greateggsgreg May 9, 2026
cf8372a
Initialise pythonnet on free-threaded Python (#2720)
greateggsgreg May 9, 2026
441954f
Make extension/CLR-object registries thread-safe
greateggsgreg May 9, 2026
19c7f59
Atomic type creation in ReflectedClrType.GetOrCreate / TypeManager.Ge…
greateggsgreg May 9, 2026
1029c62
Add free-threaded thread-stress tests and 3.14t to CI matrix
greateggsgreg May 9, 2026
3158ca5
Atomic GCHandle ownership and finalizer-thread shutdown guards
greateggsgreg May 10, 2026
1149295
Make additional internal registries thread-safe
greateggsgreg May 10, 2026
e8afa85
test_thread: join worker threads before returning
greateggsgreg May 10, 2026
3954df3
test_thread: cover ModuleObject thread-safe registries
greateggsgreg May 10, 2026
28013af
Wider thread-safety audit fixes for free-threaded Python
greateggsgreg May 10, 2026
9a3dd59
Document lock acquisition sites and strong->weak GCHandle swap
greateggsgreg May 10, 2026
cb1dcde
Preserve InternString single-write invariant under DEBUG
greateggsgreg May 10, 2026
74d12f1
test_thread: cover real-world consumer patterns
greateggsgreg May 10, 2026
a30c84e
Auto-detect free-threaded libpython in venv home
greateggsgreg May 12, 2026
be5ba34
Snapshot pypath, use ConcurrentDictionary for thunks and slot holders
greateggsgreg May 13, 2026
946785e
Fix handling of python runtime suffixes m/t
greateggsgreg May 13, 2026
77ca497
Fix threadtest race
greateggsgreg May 13, 2026
af518bb
Fix double-free in chained ClassDerived Finalize
greateggsgreg May 13, 2026
ed735ac
Enable Mono CI jobs on free-threaded Python 3.14
greateggsgreg May 13, 2026
bd3f0bf
Inline freethreaded_only as pytest.mark.skipif at call sites
greateggsgreg May 13, 2026
c4688b3
Fix InterruptTest assertion on free-threaded Python 3.14
greateggsgreg May 13, 2026
84cd07c
Add concurrent stress tests for PyBuffer.Dispose and CLR-cycle gc.col…
greateggsgreg May 15, 2026
d9b658d
Trim concurrent overhead on hot paths from free-threading prep
greateggsgreg May 15, 2026
20c51ad
Pre-warm ctor binder in concurrent-gc test to avoid first-call race
greateggsgreg May 15, 2026
f5f8ab0
Make MethodBinder.GetMethods lazy init thread-safe under free-threading
greateggsgreg May 15, 2026
c5097eb
Precompute method precedence to avoid quadratic GetParameters allocat…
greateggsgreg May 15, 2026
18e4901
Zero the slot in ClassDerived.tp_dealloc when tp_clear already ran to…
greateggsgreg May 15, 2026
e0569d0
Keep ClassDerived wrapper alive across the NewObjectToPython slot dem…
greateggsgreg May 15, 2026
2c9f861
Document private helpers added during free-threading prep
greateggsgreg May 16, 2026
ee3add4
Add debug echoes and a 6-minute step timeout to the Mono test job
greateggsgreg May 16, 2026
414ce70
Drop the per-loop CLR GC.Collect from concurrent-gc test to avoid Mon…
greateggsgreg May 16, 2026
99a99db
Add temporary Mono-step diagnostics on Linux/macOS to locate the x64-…
greateggsgreg May 16, 2026
8e7c2ba
Revert temporary Mono-step diagnostics now that the underlying race i…
greateggsgreg May 16, 2026
f8b69a2
Merge branch 'master' into freethreading-prep
greateggsgreg May 16, 2026
8f2804c
Add user-facing threading guide covering GIL, free-threading, and com…
greateggsgreg May 18, 2026
9c369ed
Harden CollectBasicObject against .NET-GC timing differences
greateggsgreg May 18, 2026
d1b4daa
Merge branch 'master' into freethreading-prep
greateggsgreg May 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Revert temporary Mono-step diagnostics now that the underlying race i…
…s fixed
  • Loading branch information
greateggsgreg committed May 16, 2026
commit 8e7c2bac47579bcbcc0cdca997ab6d8850424ae0
14 changes: 1 addition & 13 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,21 +124,9 @@ jobs:
run: pytest --runtime coreclr

- name: Python Tests (Mono)
if: ${{ always() && matrix.os.category == 'windows' }}
if: always()
run: pytest --runtime mono

- name: Python Tests (Mono, with diagnostics)
# Bound the recurring x64-ubuntu Mono hang so partial logs are flushed
# before kill; local runs take ~40s, give ourselves 8x.
# Skipped on Windows where the default shell is pwsh.
if: ${{ always() && matrix.os.category != 'windows' }}
timeout-minutes: 6
run: |
set -x
echo "[mono-step] entering pytest" && date
python -u -m pytest -v --runtime mono
echo "[mono-step] pytest exited" && date

- name: Python Tests (.NET Framework)
if: ${{ matrix.os.category == 'windows' }}
run: pytest --runtime netfx
Expand Down
Loading
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy