Debugging with shortly-lived subprocesses gives 'Server disconnected unexpectedly'
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- linux, python, vscode
- Ambito
- devtools, operating-systems
Direzione di ricerca
Non viene indicato alcun file sorgente o test. Inizia riproducendo il caso di sottoprocesso di breve durata dall’issue con subProcess: true in launch.json su Windows 11 con Debian 12 in WSL2, quindi traccia la gestione da parte di debugpy dell’attach e della disconnessione dei sottoprocessi. Il lavoro è completato quando il reproducer termina senza mostrare “Server disconnected unexpectedly”, mentre il normale comportamento del debugger rimane intatto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
VSCode shows an error when a subprocess in a program under debug exits very fast and the subProcess: true is defined in launch.json.
The problem disappears when subProcess: false is set.
Reproduced on two different machines (W11+WSL)
When running the debugger via Powershell on Windows the problem is not reproducible. Only W11+WSL.
Environment data
- debugpy version: v2025.8.0
- OS and version: Windows 11 + Debian GNU/Linux 12 (bookworm) (WSL2) [Remote host]
- Python version: 3.11.2
- Using VS Code: 1.101.0
Actual behavior
When debugging a python program that spawns a subprocess that exits too quickly this error is shown:
It happens randomly and is possibly related to the subprocess exiting while the debugger is being attached.
Expected behavior
Error does not pop up and the debugger handles such case gracefully.
Steps to reproduce:
- Run code that spawns another python subprocess - for example with a module that doesn't exist
import subprocess
def main():
cmd = "python3 -m idontexist"
for i in range(0, 20):
process = subprocess.Popen(cmd.split())
process.wait()
if __name__ == "__main__":
main()
- Lingua principale
- Python
- Stelle
- 2.5k
- Fork
- 202
- Merge medio
- 1g 20h
- PR unite (30g)
- 3
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/debugpy
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
Document "rules"-optionApertadocumentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
-
Adapter bootstrap fails with ConnectionRefusedError on WSL2 VirtioProxy or hostAddressLoopbackAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
Tutte le issue di microsoft/debugpy
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
raullenchai/Rapid-MLX#4042 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
LearningCircuit/local-deep-research#7067 ·
I maintainer di solito rispondono entro 1 giorno
-
#bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
apache/superset#44923 · 1 commento ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
lawndoc/stack-back#123 ·