From 3000d8d67a3d1ff9e46566bc365fc363683a4b3d Mon Sep 17 00:00:00 2001 From: chengcong1 Date: Tue, 24 Jun 2025 16:38:56 +0800 Subject: [PATCH 1/3] support gateway kernel client --- jupyter_server_nbmodel/actions.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/jupyter_server_nbmodel/actions.py b/jupyter_server_nbmodel/actions.py index 65e991e..3880fa4 100644 --- a/jupyter_server_nbmodel/actions.py +++ b/jupyter_server_nbmodel/actions.py @@ -145,7 +145,7 @@ def _stdin_hook(kernel_id: str, request_id: str, pending_input: PendingInput, ms f"Execution request {kernel_id} received a input request while waiting for an input.\n{msg}" # noqa: E501 ) header = msg["header"].copy() - header["date"] = header["date"].isoformat() + header["date"] = header["date"] if isinstance(header["date"],str) else header["date"].isoformat() pending_input.request_id = request_id pending_input.content = InputDescription( parent_header=header, input_request=InputRequest(**msg["content"]) @@ -269,6 +269,10 @@ async def kernel_worker( client.session.session = uid # FIXME # client.session.username = username + from jupyter_server.gateway.managers import GatewayKernelClient + if isinstance(client,GatewayKernelClient) and client.channel_socket is None: + get_logger().debug(f"start channels {kernel_id}") + await client.start_channels() results[uid] = await _execute_snippet( client, ydoc, snippet, metadata, partial(_stdin_hook, kernel_id, uid, pending_input) ) From 0a2f5da6e6d2d0b9405031709e79e678e258698b Mon Sep 17 00:00:00 2001 From: dualc <294862532@qq.com> Date: Wed, 25 Jun 2025 17:34:05 +0800 Subject: [PATCH 2/3] Update jupyter_server_nbmodel/actions.py lint Co-authored-by: Eric Charles <226720+echarles@users.noreply.github.com> --- jupyter_server_nbmodel/actions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jupyter_server_nbmodel/actions.py b/jupyter_server_nbmodel/actions.py index 3880fa4..c289e28 100644 --- a/jupyter_server_nbmodel/actions.py +++ b/jupyter_server_nbmodel/actions.py @@ -145,7 +145,7 @@ def _stdin_hook(kernel_id: str, request_id: str, pending_input: PendingInput, ms f"Execution request {kernel_id} received a input request while waiting for an input.\n{msg}" # noqa: E501 ) header = msg["header"].copy() - header["date"] = header["date"] if isinstance(header["date"],str) else header["date"].isoformat() + header["date"] = header["date"] if isinstance(header["date"], str) else header["date"].isoformat() pending_input.request_id = request_id pending_input.content = InputDescription( parent_header=header, input_request=InputRequest(**msg["content"]) From 5d70ac9c185e4f447d46253e5c3be4ec14d643d6 Mon Sep 17 00:00:00 2001 From: dualc <294862532@qq.com> Date: Wed, 25 Jun 2025 17:45:00 +0800 Subject: [PATCH 3/3] Update jupyter_server_nbmodel/actions.py lint Co-authored-by: Eric Charles <226720+echarles@users.noreply.github.com> --- jupyter_server_nbmodel/actions.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jupyter_server_nbmodel/actions.py b/jupyter_server_nbmodel/actions.py index c289e28..9f54a4f 100644 --- a/jupyter_server_nbmodel/actions.py +++ b/jupyter_server_nbmodel/actions.py @@ -270,7 +270,7 @@ async def kernel_worker( # FIXME # client.session.username = username from jupyter_server.gateway.managers import GatewayKernelClient - if isinstance(client,GatewayKernelClient) and client.channel_socket is None: + if isinstance(client, GatewayKernelClient) and client.channel_socket is None: get_logger().debug(f"start channels {kernel_id}") await client.start_channels() results[uid] = await _execute_snippet(