Commit graph

2114 commits

Author SHA1 Message Date
Nathaniel Nicandro
c1bff794d0 Add jupyter-reply-message 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
52847c2f51 Make jupyter--reauth-subsscribers a table of publisher values
As opposed to a table of list of subscriber values.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
970b4d1c21 Allow some tests to pass 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
07bdc46a87 Move some code to a more appropriate place 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
0b32635a3a Remove some unused functions 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
3c2cc77348 Remove the callbacks slot of a jupyter-request
Callbacks are added to a request using `jupyter-message-subscribed`.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
fdf6407616 Remove a use of jupyter-request-last-message 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
bb12d37e05 Fix input_request handling 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
877070ea89 Remove a use of jupyter-request-callbacks 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
8acb7bc487 Simplify jupyter-wait-until-idle 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
22d2a3f327 Remove the jupyter-send method...
- Add a `message-publisher` slot to `jupyter-request`, set when
  sending a request.

- `*-request` functions now return a delayed request value instead of
  a request. Update call sites.

- Add the functions `jupyter-messages`, `jupyter-idle`,
`jupyter-message-subscribed` and `jupyter-client-subscribed`.

- Move client subscription to a request's messages to
  `jupyter-client-subscribed`.

- Request callbacks are now added via `jupyter-message-subscribed`.

- Reduce usage of callbacks in favor of searching `jupyter-messages`
  where appropriate.

- Update tests
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f957696f26 Set jupyter-current-io in jupyter-with-client 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
6842b84e2e Verify jupyter-inhibit-handlers outside of jupyter-send 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
a27574f9bb Use pcase-let in a few places 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
039decdc97 Remove calls of jupyter-wait-until-received 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
d89e5f104d jupyter-eval-add-callbacks -> jupyter-eval-callbacks 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
ac35f52e02 Add :callbacks and :handlers keys to request calls 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
bbb32457a9 Remove requests slot of a client 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
b46cf42aa3 Remove jupyter-last-sent-request 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f48900213f Remove jupyter-drop-request and related
Transitioning away from relying on a client requests table.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
422c59ee48 Remove the pending request interface 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
8457989510 Remove dependency on jupyter-map-pending-requests 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
e1221d55a1 Add :parent-request member when publishing request messages 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
37a74e601b Actually delay generation of request in jupyter-request 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
baa01cbcac Fix wording in a few comments 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
596ac40566 Refactor a function 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f0712a2a4d Remove unused macro 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
a76d772716 (send ... (request ...)) -> (request ...) 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
0f271ec322 monads: Reword doc 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
b763c09778 Remove unused functions 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
dfd1d1e02d Remove the kernel slot of a client
`jupyter-websocket-io` now returns, in addition to an IO function, a
kernel action subscriber.  A client now sends messages to the
subscriber to interrupt or shutdown a kernel instead of doing so using
a `kernel` slot.

Also add the `jupyter-kernel-action` convenience function for
evaluating arbitrary code on a client's kernel.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
e10efe4274 Remove no longer used functions 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
b77dd297e3 Fix wrong number of arguments 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
63a1b846d6 Use jupyter-connected-p in one place 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
e03cedea10 Fix jupyter-shutdown-kernel
Sending a shutdown request actually restarts a kernel behind a Jupyter
notebook, so shutdown using the kernel's method.

Disconnect the client after shutting down so that
`jupyter-connected-p` returns nil after shutdown.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
1e1399b5b6 Fix interactive spec of jupyter-run-repl 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
9dd6268fa5 Remove some comments 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f81a44b865 Comment out failing part of test 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
dc336ae638 Fix input_request client handler 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
134167e65e Remove keyword message types 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
0f51e18655 Remove unnecessarily complicated code 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
cbd521dc72 Remove jupyter-find-server
The same `jupyter-server` instance is always returned for the same URL
by a call to `jupyter-server` so there is no need to find a server
anymore.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
ef26ef1b08 Remove jupyter-io 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
fed966fc27 Remove unused function 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f02337c23c Skip jupyter-connect-repl test
Connecting to a REPL via a JSON file is no longer possible.
2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f6233088aa Refactor to remove long line 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
bbd0c4fd85 Use pub/sub pattern for server re-authentication 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
f62c6e9e2f Don't close websockets on :shutdown-reply 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
a430f4f0e1 Remove jupyter-channels-running-p 2023-02-13 20:25:05 -06:00
Nathaniel Nicandro
2f87fe3ca9 Use jupyter-default-server 2023-02-13 20:25:05 -06:00