Skip to content

Commit e6da675

Browse files
committed
fixes #2
1 parent a2732ce commit e6da675

File tree

2 files changed

+20
-14
lines changed

2 files changed

+20
-14
lines changed

conkernelclient/core.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,9 @@ async def start_channels(self, shell:bool=True, iopub:bool=True, stdin:bool=True
3838
super().start_channels(shell=shell, iopub=iopub, stdin=stdin, hb=hb, control=control)
3939
await self.wait_for_ready()
4040
self._pending = {}
41+
_ready = asyncio.Event()
4142
async def _reader():
43+
_ready.set()
4244
while True:
4345
try: reply = await self.get_shell_msg(timeout=None)
4446
except Exception as e:
@@ -47,6 +49,7 @@ async def _reader():
4749
q = self._pending.get(reply["parent_header"].get("msg_id"))
4850
if q: await q.put(reply)
4951
self._shell_reader_task = asyncio.create_task(_reader())
52+
await _ready.wait()
5053
return self
5154

5255
def stop_channels(self):

nbs/00_core.ipynb

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,9 @@
103103
" super().start_channels(shell=shell, iopub=iopub, stdin=stdin, hb=hb, control=control)\n",
104104
" await self.wait_for_ready()\n",
105105
" self._pending = {}\n",
106+
" _ready = asyncio.Event()\n",
106107
" async def _reader():\n",
108+
" _ready.set()\n",
107109
" while True:\n",
108110
" try: reply = await self.get_shell_msg(timeout=None)\n",
109111
" except Exception as e:\n",
@@ -112,6 +114,7 @@
112114
" q = self._pending.get(reply[\"parent_header\"].get(\"msg_id\"))\n",
113115
" if q: await q.put(reply)\n",
114116
" self._shell_reader_task = asyncio.create_task(_reader())\n",
117+
" await _ready.wait()\n",
115118
" return self\n",
116119
"\n",
117120
" def stop_channels(self):\n",
@@ -211,7 +214,7 @@
211214
{
212215
"data": {
213216
"text/plain": [
214-
"'3c390298-8280dc2636a968ecb67ec5c3_66839_1'"
217+
"'a2d721a7-d3a69082190b8110efa35236_96513_1'"
215218
]
216219
},
217220
"execution_count": null,
@@ -276,11 +279,11 @@
276279
{
277280
"data": {
278281
"text/plain": [
279-
"{'msg_id': '3c390298-8280dc2636a968ecb67ec5c3_66839_1',\n",
282+
"{'msg_id': 'a2d721a7-d3a69082190b8110efa35236_96513_1',\n",
280283
" 'msg_type': 'execute_request',\n",
281284
" 'username': 'jhoward',\n",
282-
" 'session': '3c390298-8280dc2636a968ecb67ec5c3',\n",
283-
" 'date': datetime.datetime(2026, 2, 25, 23, 47, 27, 999676, tzinfo=tzutc()),\n",
285+
" 'session': 'a2d721a7-d3a69082190b8110efa35236',\n",
286+
" 'date': datetime.datetime(2026, 2, 26, 22, 36, 10, 601820, tzinfo=tzutc()),\n",
284287
" 'version': '5.4'}"
285288
]
286289
},
@@ -322,23 +325,23 @@
322325
{
323326
"data": {
324327
"text/plain": [
325-
"{'header': {'msg_id': '56b3a92a-4ab2147e6a13d3987d1c6e81_66859_21',\n",
328+
"{'header': {'msg_id': '27ce75ec-224d82ffa15cf1a4eebe62cd_96540_21',\n",
326329
" 'msg_type': 'execute_reply',\n",
327330
" 'username': 'jhoward',\n",
328-
" 'session': '56b3a92a-4ab2147e6a13d3987d1c6e81',\n",
329-
" 'date': datetime.datetime(2026, 2, 25, 23, 47, 28, 524193, tzinfo=tzutc()),\n",
331+
" 'session': '27ce75ec-224d82ffa15cf1a4eebe62cd',\n",
332+
" 'date': datetime.datetime(2026, 2, 26, 22, 36, 11, 126459, tzinfo=tzutc()),\n",
330333
" 'version': '5.4'},\n",
331-
" 'msg_id': '56b3a92a-4ab2147e6a13d3987d1c6e81_66859_21',\n",
334+
" 'msg_id': '27ce75ec-224d82ffa15cf1a4eebe62cd_96540_21',\n",
332335
" 'msg_type': 'execute_reply',\n",
333-
" 'parent_header': {'msg_id': '3c390298-8280dc2636a968ecb67ec5c3_66839_1',\n",
336+
" 'parent_header': {'msg_id': 'a2d721a7-d3a69082190b8110efa35236_96513_1',\n",
334337
" 'msg_type': 'execute_request',\n",
335338
" 'username': 'jhoward',\n",
336-
" 'session': '3c390298-8280dc2636a968ecb67ec5c3',\n",
337-
" 'date': datetime.datetime(2026, 2, 25, 23, 47, 28, 521117, tzinfo=tzutc()),\n",
339+
" 'session': 'a2d721a7-d3a69082190b8110efa35236',\n",
340+
" 'date': datetime.datetime(2026, 2, 26, 22, 36, 11, 123474, tzinfo=tzutc()),\n",
338341
" 'version': '5.4'},\n",
339-
" 'metadata': {'started': '2026-02-25T23:47:28.522179Z',\n",
342+
" 'metadata': {'started': '2026-02-26T22:36:11.124458Z',\n",
340343
" 'dependencies_met': True,\n",
341-
" 'engine': '46632539-1ec7-48e9-bf3f-4608d9f3403f',\n",
344+
" 'engine': '2a006992-f2fe-4a88-9356-8df7ac1ae297',\n",
342345
" 'status': 'ok'},\n",
343346
" 'content': {'status': 'ok',\n",
344347
" 'execution_count': 2,\n",
@@ -395,7 +398,7 @@
395398
{
396399
"data": {
397400
"text/plain": [
398-
"'3c390298-8280dc2636a968ecb67ec5c3_66839_5'"
401+
"'a2d721a7-d3a69082190b8110efa35236_96513_5'"
399402
]
400403
},
401404
"execution_count": null,

0 commit comments

Comments
 (0)