-
-
Notifications
You must be signed in to change notification settings - Fork 164
Add no-GIL support #267
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
base: main
Are you sure you want to change the base?
Add no-GIL support #267
Conversation
oleavr
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yay! 🙌
| endif | ||
|
|
||
| extension = python.extension_module('_frida', 'extension.c', | ||
| limited_api: '3.7', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems like a regression, unless I'm missing something?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now that you ask, maybe that is no longer needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The reason we have it is so we can build a single binary (per OS/ABI combo) that works on older Python runtimes even when the build machine has a newer Python; without accidentally regressing on the range of versions supported.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The reason we have it is so we can build a single binary (per OS/ABI combo) that works on older Python runtimes even when the build machine has a newer Python; without accidentally regressing on the range of versions supported.
Just to be sure, can you run workflows on your side to catch whatever regression that may arise from this PR?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no point; I went through some pain to transition frida-python to the limited API, because it solved some long-standing issues. Nothing changed there. We cannot drop this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair enough: https://peps.python.org/pep-0803/ means that free-threaded wheels will have stable ABI starting in 3.15...
Co-authored-by: Ole André Vadla Ravnås <oleavr@gmail.com>
| endif | ||
|
|
||
| extension = python.extension_module('_frida', 'extension.c', | ||
| limited_api: '3.7', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's no point; I went through some pain to transition frida-python to the limited API, because it solved some long-standing issues. Nothing changed there. We cannot drop this.
Hopefully with https://peps.python.org/pep-0803/, no-GIL wheels will be stable (and meson supports this as well)
No description provided.