ipython / ipython/ipykernel

cannot stop debugging session when there is long running evaluate request

未關閉
#1,245 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Python
星號
734
分支
412
平均合併
1 天 5 小時
30 天內合併 PR
8

描述

When you are in a debug session, if you run a long running evaluate request (e.g. sleep operations), the thread gets blocked, you cannot terminate the debug session or issue other evaluate request until the time runs out.
(you could still interrupt the kernel thought)

There seems to be an environment config in `debugpy` which will set a timeout on the long evaluation request `PYDEVD_INTERRUPT_THREAD_TIMEOUT`. I think vscode by default interrupt after 3 seconds
[src](https://github.com/microsoft/debugpy/blob/09b5af0bb730e2707ec3bbc14c509523eca116c0/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_constants.py#L344
)

https://github.com/ipython/ipykernel/assets/112444017/458ac247-0f00-4dcd-a59e-81709a39f3ce

貢獻指南

開啟貢獻指南

研究方向

Start by reproducing the long-running evaluate request during a debug session and confirm whether the kernel can still be interrupted. Then inspect the referenced debugpy pydevd_constants.py setting for PYDEVD_INTERRUPT_THREAD_TIMEOUT; done means the debug session can be terminated and another evaluate request can be issued before the original request finishes.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
jupyter, python
領域
developer-experience, tooling
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
需要釐清
新手友好度
35/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。