Closed ianthomas23 closed 5 months ago
Do you have an ETA to release this fix?
@ivanlen It looks like this could be in a release in about 2 weeks time.
@ianthomas23 can you please try running this workflow with the default settings? https://github.com/ipython/ipykernel/actions/workflows/publish-release.yml. It should finalize the draft release I made over the weekend.
@blink1073 Done! Workflow run is https://github.com/ipython/ipykernel/actions/runs/9745716039/job/26894339146 and 6.29.5 is up on PyPI.
Woohoo!
Thanks for your help!
Fixes #1124 which is that the use of
%matplotlib osx
crashesipykernel
and downstream libraries whereasipython
is fine.The fix is to specify the
argtypes
of eachobjc_msgSend
call just before the call. This is consistent with howipython
successfully handles it. I have tested this manually usingspyder
andjupyter console
,qtconsole
,lab
andnbclassic
: usingipykernel 6.29.4
(the latest release) they all crash, using this branch they all work as expected.This PR is opened against the
6.x
branch rather thanmain
as issue #1235 means it is not possible to test anymatplotlib
GUI loops onmain
. It would be good to get this into a release (6.29.5?) as soon as possible and not have to wait for #1235 and the other AnyIO fallout issues to be fixed beforehand. This PR will therefore need to be forward ported tomain
.There is no explicit test for this as you need to actually render a macos window to trigger the failure, and this is not an easy thing to do on headless CI. Essentially this functionality sits in the grey area between
matplotlib
andipython/ipykernel/jupyter
rather than in any individual project.