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
Notify the user when a notebook kernel autorestarts #6246
Commits on May 13, 2019
-
In a kernel restart for a console, use the existing kernel info for t…
…he banner. Instead of requesting the kernel info a second time, just use the original kernel info we request for a kernel connection.
-
Do not kill the websocket connection on kernel restart.
This makes sure we don’t miss messages during the restart, and helps the browser not have so many different websocket connections.
-
Make sure the console shows a new banner when restarting.
Now that we don’t reconnect when restarting, we’ll just show the banner right away.
-
-
More work in progress to simplify state management on restart.
Tests are still failing. This commit is a checkpoint in the work.
-
When kernel is done initializing, make sure to set the isReady state …
…to true along with resolving the promise.
-
WIP: Skip tests that aren’t working
This gets the test suite passing, and narrows down our work to the tests that are still failing.
-
I think the handler wasn’t getting removed after the check, so it was failing on the next signal emission. testEmission automatically removes the handler after the check, taking care of this issue.
-
Commits on May 14, 2019
-
-
Be more careful about future done promises being wrapped up when clea…
…ring kernel state. Before, as soon as one kernel future rejected, clearState would return. Now all outstanding futures must resolve or reject before the state is considered cleared.
-
When restarting, handle a requestKernelInfo that rejects.
If a session or kernel is disposed, the requestKernelInfo done promise might reject. In that case, we should do nothing.
-
-
-
-
Handle the ‘connected’ kernel status differently.
Kernel info is requested by the onWSOpen function already, which is what sets the connected state, so no need to request the kernel info here too.
-
-
-
-
Commits on May 15, 2019
-
Catch the kernel status dead rejection so we don’t have an unhandled …
…rejection. This fixes a number of tests as well.
-
-
-
Throw error when shutting down a dead kernel, like its docs claim.
Also clean up obsolete todo items.
-
-
-
-
Delete TODO notes about restarts timing out.
jupyter/notebook#3705 noted some issues with kernel messages. I think these were mainly because we disconnected and reconnected the websocket on restart. We no longer do this, and these tests seem to pass, so let’s remove the TODO and keep an eye on it.
-
Revert shutdown behavior when kernel is dead, and change documentatio…
…n to match existing behavior. Throwing an error when shutting down a dead kernel causes a lot of test failures. So we keep the existing behavior and update the documentation, rather than changing the behavior to match the documentation.