-
-
Notifications
You must be signed in to change notification settings - Fork 373
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
Confusing problems with shutdown_reply
being received on iopub
#170
Comments
To add yet another little bit of data, in the Haskell implementation I am receiving the
|
Now that I am thinking about it, it would make sense if this were consistent and on purpose, to re-broadcast the shutdown to all connected clients. And, now that I am looking at it, we discussed this a few weeks ago here: jupyter/jupyter_client#170 So yes, this is the In that case, this can be boiled down to two things:
|
It is documented that all replies should have a status field, with the value either
👍 while I would prefer replacing |
Good point, I missed that! Yes, it would be great if all the messages IPython sends followed that, but it seems pretty reasonable to just assume that status is "ok" unless otherwise specified. |
understatement :) and should be fixed by #171
that's what clients have done so far, and I suppose we can encourage them to do so. |
Note #1: The IPython kernel sends a
status: "ok"
key with theshutdown_reply
, which is not documented in the messaging spec. Extra keys are generally not a problem but could also be documented if they play any role (or it can also be documented that extra keys should never be rejected).More serious issue:
I am getting the
shutdown_reply
sent on theiopub
channel, which can break client libraries. This seems to be somewhat tricky to reproduce, which has me confused.Here is how you I can reproduce it:
Start a kernel:
Find the absolute path to
kernel-DDDDD.json
in the stdout of that process.Then, run
jupyter console
, and enter the following code (substituting inkernel-DDDDD.json
as appropriate):This will result in a list of message types which include
shutdown_reply
, which does not make sense, because this is the iopub channel.Similarly, the following code reproduces the problem for me:
However, the following code does not reproduce the issue:
Instead, it just blocks on
get_iopub_msg
, after returning theshutdown_reply
message on the shell channel.Can you help me figure out what's going on? Is the
shutdown_reply
being sent on both channels? Why is it being received on iopub at all?I am quite confused. (The real issue I'm having is on a Haskell codebase, but hopefully these code snippets are enough to reproduce it.)
Here are some versions:
The text was updated successfully, but these errors were encountered: