-
Notifications
You must be signed in to change notification settings - Fork 5
fix: set layout engine without triggering layout update (?) #500
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?
Conversation
|
That must have taken a lot of digging! 👍 |
It did 😅 But I found this issue mentioning a similar problem. Unfortunately this fix doesn't seem to fix the problem completely... It makes the minimal reproducible example above run as expected. But the Dream tof notebook in essreduce (mentioned in #499) still behave strangely with this fix, some images don't display properly and recreating the images seems to make the notebook hang sometimes. |
Is the strange behaviour in Dream notebook also there without the fix from this PR? |
No I did not notice the strange behavior before. Without the fix from this PR the notebook raises which is likely the same issue as in the MRE above. That error goes away with the fix in this PR, but instead there is this strange behavior. |
|
Interestingly the issue you mention has had a fix in 3.8.0. |
|
Here's an If the pin on |
Nice find 👍 If you look at the ipykernel release notes, there is indeed quite a few items that deal with threading. Finally, do we still need to use |
I've tried without the pin, and that fetches the most recent release, and there it does not work.
Strictly speaking, no. But I think it might be good anyway because, as we saw above, it might mitigate the impact of similar issues should they pop up again in the future. However, maybe that is not worth the risk that it causes a change of behavior. Your call! |
Fixes #499
This does seem to fix
I'm not 100% sure why.
My guess is that
tight_layout()triggers immediately and is more likely to collide with other updates, but setting the layout engine plays nicer with other concurrent updates.