-
-
Notifications
You must be signed in to change notification settings - Fork 34.6k
gh-149101: Implement PEP 788 #149116
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ZeroIntensity
wants to merge
60
commits into
python:main
Choose a base branch
from
ZeroIntensity:pep-788
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
gh-149101: Implement PEP 788 #149116
Changes from 16 commits
Commits
Show all changes
60 commits
Select commit
Hold shift + click to select a range
43b0798
Copy the reference implementation.
ZeroIntensity 722dbdf
Merge branch 'main' of https://github.com/python/cpython into pep-788
ZeroIntensity 73cccbb
Document the new APIs.
ZeroIntensity 25e1cf0
Add a whatsnew entry.
ZeroIntensity af1022a
Fix stable ABI things.
ZeroIntensity 2fb8419
Fix test_embed.
ZeroIntensity 1096a32
SIlly news entry.
ZeroIntensity 407062f
Documentation fixes.
ZeroIntensity a33bdfc
Make the sentinel const instead of changing the C analyzer.
ZeroIntensity c504a9f
Fix the html IDs job.
ZeroIntensity f95bfc7
Merge branch 'main' into pep-788
encukou a00bfbb
Apply suggestions from code review
ZeroIntensity 6ca2499
Update Doc/c-api/threads.rst
ZeroIntensity 74259f8
Fix lint and remove dead comment.
ZeroIntensity eff9b40
Improve new PyThreadState API docs.
ZeroIntensity bc78c10
Fix lint.
ZeroIntensity 0a30c25
Apply suggestions from code review
ZeroIntensity fe3d8a1
Update Doc/c-api/threads.rst
ZeroIntensity ad69f96
Fix line endings.
ZeroIntensity 1623556
Remove accidental formatting changes.
ZeroIntensity cad8786
Fix memory ordering for the event reset.
ZeroIntensity e042656
Improve NO_TSTATE_SENTINEL.
ZeroIntensity 6a05c90
Fix some test things.
ZeroIntensity 728ee3a
Remove note about deallocation.
ZeroIntensity d9e1170
Explicitly mark implementation details in the docs.
ZeroIntensity 2f824d3
Add missing versionadded markers.
ZeroIntensity ab9d783
Remove dead comment.
ZeroIntensity 10e241e
Merge branch 'main' of https://github.com/python/cpython into pep-788
ZeroIntensity 25687af
Some improvements to PyThreadState_Release() based on review.
ZeroIntensity 6d3b40a
Add a comment.
ZeroIntensity 0c08141
Remove _ prefix from struct names.
ZeroIntensity 31f1155
Only issue a fatal error for KeyboardInterrupt.
ZeroIntensity 6c62b40
Don't use a full PyThreadState for NO_TSTATE_SENTINEL on release builds.
ZeroIntensity d8ce02d
Fix race during event spinning.
ZeroIntensity e105120
Merge branch 'main' of https://github.com/python/cpython into pep-788
ZeroIntensity eb73203
Merge in the main branch
encukou 09a0d69
Switch to PyThreadStateToken
encukou 5a3f808
Remove ensure_tstate_is_valid
encukou d43ba9d
Merge in the main branch
encukou 9a04e93
Apply suggestions from code review
ZeroIntensity a382721
Simply exit instead of emitting a fatal error upon CTRL^C.
ZeroIntensity 03862fb
Hardcode zero as the main interpreter ID.
ZeroIntensity df720a5
Fix leak in get_main_interp_guard.
ZeroIntensity 767c894
Improve readability and fix warning.
ZeroIntensity 38a2153
Use void instead of a struct for PyThreadStateToken.
ZeroIntensity 321c783
Run test_embed with TSan.
ZeroIntensity 811ca19
Switch to a single atomic field instead of using locks and events.
ZeroIntensity ac58a16
Fix existing thread-safety issue with interp_has_threads().
ZeroIntensity 4ced3a1
Use the parking lot to avoid eating CPU cycles.
ZeroIntensity 9345afd
Stupid merge conflicts.
ZeroIntensity 11cbe5c
Fix C analyzer.
ZeroIntensity 99098d7
Stupid warnings.
ZeroIntensity 1c184f1
Fix thread leaks in test_embed.
ZeroIntensity af57d9d
Fix deadlock in test_atexit.
ZeroIntensity 7289037
Fix missing newline.
ZeroIntensity a538acc
Remove stray newline change from pycore_lock.h
ZeroIntensity 4bec1e7
Use sequential memory ordering in _testembed.
ZeroIntensity 5d28e1a
Potentially fix some things?
ZeroIntensity 62b137e
Add a test stressing a lot of threads against finalization.
ZeroIntensity 2378c88
Export _Py_yield.
ZeroIntensity File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.