- 09 Sep, 2019 11 commits
-
-
Ludovic Courtès authored
* jupyter/kernels.scm (read-message): Remove call to non-existent 'zmq-get-msg-bytevector'.
-
Ludovic Courtès authored
* jupyter/kernels.scm (<kernel>): Use 'define-immutable-record-type'. Add 'set-kernel-name' and 'set-kernel-pid'. (find-kernel-by-name): Rename to... (find-kernel-specs-file): ... this. (find-kernel-specs): New procedure. (<connection>): New record type. (new-connection-file, kernel-arguments, exec-kernel): Remove. (allocate-connection, spawn-kernel): New procedure. (run-kernel): Rewrite to take a <kernel-spec> and to use 'allocate-connection'. * tests/kernels.scm (%python3-specs): New variable. ("run-kernel python3"): Adjust accordingly. * guix-jupyter-container.scm (reply-execute-request): Likewise.
-
Ludovic Courtès authored
* jupyter/kernels.scm (<kernel-specs>): New record type. (kernel-arguments): Use 'json->kernel-specs' and 'kernel-specs-arguments'.
-
Ludovic Courtès authored
* jupyter/kernels.scm (read-message): Return heartbeat messages.
-
Ludovic Courtès authored
Guile-JSON 3.x is incompatible with Guile-JSON 1.x, which we relied on until now: it maps JSON dictionaries to alists (instead of hash tables), and JSON arrays to vectors (instead of lists). This commit is about adjusting all the existing code to this new mapping. * jupyter/kernels.scm (kernel-arguments): Use 'assoc-ref' instead of 'hash-ref'; pass JSON array through 'vector->list'. (relay-message, reply-html): Likewise. * jupyter/messages.scm (string->header): Likewise. * guix-jupyter-container.scm (local-eval, reply-execute-request): Likewise. * guix-jupyter-kernel.scm (reply-execute-request): Likewise. * guix-kernel/jupyter-client.scm (json->kernel): Likewise. * tests/kernels.scm: Likewise. * environment.scm (propagated-inputs): Replace GUILE-JSON with GUILE-JSON-3.
-
Ludovic Courtès authored
* jupyter/kernels.scm (read-message): Rewrite to use 'zmq-poll'. Add optional 'timeout' parameter. * tests/kernels.scm ("execute_request"): Call 'read-message' thrice and check all three replies.
-
Ludovic Courtès authored
* jupyter/kernels.scm (run-kernel): Remove 'uuid' parameter and add #:identity parameter. Do not set ZMQ_IDENTITY on SOCKET-SHELL when #:identity is #f. * guix-jupyter-container.scm (reply-execute-request): Pass #:identity to 'run-kernel'. * tests/kernels.scm (%kernel-uuid): Remove. ("run-kernel python3"): Remove %KERNEL-UUID argument from 'run-kernel' call. ("execute_request"): Remove #:recipient argument to 'send-message'. Remove reference to %KERNEL-UUID.
-
Ludovic Courtès authored
* jupyter/kernels.scm (kernel-sockets): New procedure. (close-kernel): Use it.
-
Ludovic Courtès authored
* guix-kernel/jupyter-client.scm (read-message, send-message, pub) (pub-busy, pub-idle, reply-html): Move to... * jupyter/kernels.scm: ... here.
-
Ludovic Courtès authored
* guix-kernel/jupyter-server.scm: Rename to... * jupyter/kernels.scm: ... this. * guix-jupyter-container.scm, guix-jupyter-kernel.scm, guix-kernel/jupyter-client.scm: Adjust accordingly. * Makefile.am (SOURCES): Likewise.
-
Ludovic Courtès authored
* guix-kernel/jupyter-client.scm (<notebook>, notebook): Remove. (json->notebook): Rename to... (json->kernel): ... this, and adjust accordingly. (read-message, send-message, relay-message, pub, pub-busy) (pub-idle, reply-html): Adjust accordingly. * guix-kernel/jupyter-server.scm (<kernel>)[key]: New field. (kernel-iopub): New macro. (kernel): Add #:key. (close-kernel): New procedure. * guix-jupyter-kernel.scm: Adjust, replacing "notebook" with "kernel". * guix-jupyter-container.scm: Likewise.
-
- 11 Oct, 2018 1 commit
-
-
Ludovic Courtès authored
* guix-kernel/jupyter-server.scm (<kernel>): New record type. (kernel): New procedure. (run-kernel): Return a <kernel> instead of an alist. * guix-jupyter-container.scm (register-kernel): Replace 'name' and 'values' parameters with 'kernel'. (kernel-by-name): Return the kernel itself, not the pair. (kernel-shell-by-name, kernel-iosub-by-name): Remove. (proxy-exec-kernel): Adjust accordingly.
-
- 24 Sep, 2018 2 commits
-
-
Ludovic Courtès authored
* guix-kernel/jupyter-server.scm (new-connection-file): Change to use keyword arguments. Use 'call-with-output-file' instead of 'open-output-file'. (run-kernel): Adjust accordingly.
-
Ludovic Courtès authored
This avoids the occasional string decoding error for byte streams that were not actual UTF-8 strings. This is based on commit fbab29d738b46d8637579ccec93be49520a4606f ("Fixed a bug when the kernel could not send kernel_info (1 minute pause after notebook starts)") of <https://github.com/jerry40/guile-kernel >. * guix-jupyter-container.scm (reply-execute-request): Turn UUID into a bytevector. * guix-jupyter-kernel.scm (send-to-container): Turn NAME into a bytevector and use 'zmq-send-msg-parts-bytevector'. (heartbeat-handler): Use '-bytevector' send and receive procedures. (general-handler): Likewise. Add calls to 'utf8->string' as needed. * guix-kernel/jupyter-client.scm (send-to-jupyter) (pub): Likewise. * guix-kernel/jupyter-server.scm (run-kernel): Likewise. Co-authored-by:
jerry40 <epanfilov@gmail.com>
-
- 21 Sep, 2018 3 commits
-
-
Ludovic Courtès authored
* guix-kernel/jupyter-server.scm (get-argv-from-file): Rename to... (kernel-arguments): ... this; rewrite. (exec-kernel): Simplify.
-
Ludovic Courtès authored
Fixes a regression introduced in cd370ab1 whereby kernels other than ipython would not be found because JUPYTER_PATH was unset. * guix-kernel/jupyter-server.scm (jupyter-kernel-path): New procedure. (find-kernel-by-name): Rewrite and search in (jupyter-kernel-path) by default. * guix-kernel/environ.scm (env-profile->str): Remove. (make-new-environment): Set 'GUIX_PROFILE'.
-
Ludovic Courtès authored
* guix-kernel/jupyter-server.scm (get-argv-from-file): Use 'call-with-input-file' instead of 'open-file'.
-
- 11 Sep, 2018 1 commit
-
-
Ludovic Courtès authored
Previously we assumed $PATH contained a single entry. * guix-kernel/jupyter-server.scm (search-path->list): New procedure. (exec-kernel): Use it along with 'search-path' to determine the absolute file name of 'ipython'.
-
- 17 Jul, 2018 1 commit
-
-
ROUBY Pierre-Antoine authored
* guix-jupyter-container.scm (proxy-exec-kernel): Get streams message type. (local-eval): Send 'guix-end-of-eval' message. * guix-jupyter-kernel.scm (proxy-exec-container): Get streams message type. * guix-kernel/jupyter-client.scm (reply-html): Send 'guix-end-of-eval' message. * guix-kernel/jupyter-server.scm (exec-kernel): Add IPython.
-
- 05 Jul, 2018 1 commit
-
-
ROUBY Pierre-Antoine authored
* guix-jupyter-container.scm: Add magic kernel command. * guix-jupyter-kernel.scm: Add magic kernel command. * guix-kernel/jupyter-server.scm: New file. * Makefile.am: Add jupyter-server to SOURCE. * guix-kernel/magic.scm (magic-kernel?, magic-get-kernel-name): Add procedure. (magic?): Change '%%' by ';;'. * guix-kernel-demo.ipynb: Add new guix-kernel features. * logo.png: New file.
-