From ea199e3f77485bb17a926799dc10d9ef4f19f38b Mon Sep 17 00:00:00 2001 From: Nathaniel Nicandro Date: Sat, 6 Feb 2021 15:07:15 -0600 Subject: [PATCH] Fix return value of `jupyter-zmq-io` --- jupyter-kernel-process.el | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/jupyter-kernel-process.el b/jupyter-kernel-process.el index 1a0e5b0..ce45d73 100644 --- a/jupyter-kernel-process.el +++ b/jupyter-kernel-process.el @@ -204,12 +204,21 @@ Call the next method if ARGS does not contain :spec." (jupyter-run-with-io (cadr content) (jupyter-publish hb))) (_ (error "Unhandled I/O: %s" content))))))) - (jupyter-return-delayed - (list kernel-io - (lambda () - (and hb (jupyter-hb-pause hb)) - (stop) - (setq hb nil ioloop nil discarded t)))))))) + (list kernel-io + (jupyter-subscriber + (lambda (action) + (pcase action + ('interrupt + (jupyter-interrupt kernel)) + ('shutdown + (jupyter-shutdown kernel) + (and hb (jupyter-hb-pause hb)) + (stop) + (setq hb nil ioloop nil discarded t)) + ('restart + (jupyter-restart kernel)) + (`(action ,fn) + (funcall fn kernel)))))))))) (cl-defmethod jupyter-io ((kernel jupyter-kernel-process)) "Return an I/O connection to KERNEL's session."