cannot stop debugging session when there is long running evaluate request
- 主要語言
- 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