Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

`Processing lsp` never exits and leaves orphaned processes

Offen Anfängerfreundlich
#1,578 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

@overcast302 arbeitet bereits daran.

Seit 10.10.2026.

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
72/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
java, vscode
Bereich
devtools

Rechercherichtung

Beginne in java/src/processing/mode/java/lsp/PdeLanguageServer.java und schau dir exit() an, das nur eine Zeile ausgibt, sowie main(), das das von launcher.startListening() zurückgegebene Future verwirft. Prüfe, was passiert, wenn stdin EOF erreicht, und wie der Prozess dann enden sollte. Fertig ist es, wenn der LSP-Prozess beendet wird, sobald VS Code geschlossen wird oder abstürzt. Das kannst du nach dem Beenden des Editors mit pgrep -af 'Processing lsp' überprüfen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug
Most appropriate sub-area of Processing 4?

Other (specify if possible)

Processing version

4.5.7 (AUR processing-bin)

Operating system

Arch Linux x86_64

Bug description

The LSP server never terminates when the client goes away. This way, after closing Visual Studio Code with official Processing extension via File > Exit (or Ctrl+Q), the Processing LSP process is left running. The process also survives abrupt client death, since nothing on the server side reacts to the client disappearing.

Steps to reproduce this
  1. Install Processing 4.5.7 and the official Processing Visual Studio Code extension.
  2. Open Visual Studio Code
  3. Quit Visual Studio Code with Ctrl+Q (File > Exit).
  4. Run: pgrep -af 'Processing lsp'
  5. The process is still running.
snippet

No response

Additional context

PdeLanguageServer.exit() only prints a line and never calls System.exit(). PdeLanguageServer.main() also ignores the future returned by launcher.startListening(), so nothing happens when stdin reaches EOF. As a result, nothing in the server can end the LSP process when the client disappears.

Would you like to work on the issue?

Yes, I’d like to help with this

Vorherrschende Sprache
Java
Sterne
513
Forks
183
Ø Merge
4 Std. 6 Min.
Gemergte PRs (30 T.)
4

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus processing/processing4

Alle Issues in processing/processing4

Ähnliche Issues

Weitere Issues zu Java

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.