-
-
Notifications
You must be signed in to change notification settings - Fork 8.1k
Declare free-threaded support in MacOS backend extension #29810
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
Conversation
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.
I tested this out on a mac and this does get rid of the GIL warning and everything works as expected.
Also as an FYI, I tested this with multiple windows trying to resize/zoom/pan between them and all of that state seemed good to me.
I also ran the threading example from here: #5675 (comment), updating data in background threads and that also played nicely with resizing/interactiveness and the free-threaded build. So I think we are at least OK with reasonable expectations for now. It will be good to get people hammering this a bit more and more exotic use-cases to be tested out.
edit: I also just added constrained_layout to test our interaction with kiwisolver's free threaded capability and that works nicely too.
|
@greglucas just noticing that I'm hitting the issue fixed by this on a fresh Python 3.14.0t environment. And indeed, the latest release is 3.10.7, so this fix isn't included. Does it maybe make sense to backport? |
|
This does not feel like a back-port type thing to me, but could be talked into it. |
|
I would generally agree that this seems potentially odd to put in a bugfix release. On the other hand, this is pretty niche still and I'm not sure guarantees us to anything as it is pretty heavily opt-in at this point still. It has been 10 months since our last release https://github.com/matplotlib/matplotlib/releases/tag/v3.10.0, so I think people in the community are getting excited about updates and new features and wondering when they will be released, so I do understand the desire to get the features people have added out in some kind of release. I'm not sure if another bugfix release will happen again before the next version's release though, so maybe a backport is moot here 🤷 |
|
Actually, I do think this is valid for a backport because it was a bug that we forgot to mark this specific module in the original PR adding this declaration, so in a sense this is fixing that oversight. |
|
@meeseeksdev backport to v3.10.x |
…backend extension
…tension (#30656) Co-authored-by: Greg Lucas <greg.m.lucas@gmail.com>
See #28611 (comment) for context.