`Processing lsp` never exits and leaves orphaned processes
@overcast302 arbeitet bereits daran.
Seit 10.10.2026.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 72/100
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
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
- Install Processing 4.5.7 and the official Processing Visual Studio Code extension.
- Open Visual Studio Code
- Quit Visual Studio Code with Ctrl+Q (File > Exit).
- Run:
pgrep -af 'Processing lsp' - 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
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus processing/processing4
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
processing/processing4#1554 · 1 Kommentar ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
processing/processing4#1515 · 1 Reaktion ·
-
bug
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
processing/processing4#1573 · 3 Kommentare ·
-
startup errorOffen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
processing/processing4#1569 · 7 Kommentare ·
-
Binaries under bin directory lack executable permissions for the snap and .deb packages for LinuxEvtl. vergeben @catilac hat das vor 23 Tagen übernommen. Offenbug
processing/processing4#1567 · 3 Kommentare · 1 Reaktion · 1 zugewiesene Person ·
Alle Issues in processing/processing4
Ähnliche Issues
-
enhancement good first issue
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 66/100
apache/fineract-consumer-facing#175 ·
Maintainer antworten meist innerhalb von 1 Tag
-
[BUG] 订单:会员凭订单号即可取消其他会员的待付款订单(取消接口不校验订单归属)Evtl. vergeben @dadiyang hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
macrozheng/mall#1016 ·
-
[Bug] The producer summary counts an unreported client version as a second version and warns about a version mixEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
apache/rocketmq-dashboard#6110 ·
Maintainer antworten meist innerhalb von 4 Tagen
-
Feature:Resolution
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
intellij-elixir/intellij-elixir#4396 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Python 3.15 supportEvtl. vergeben @amnesiaof hat das heute übernommen. OffenL: python L: python:uv
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
dependabot/dependabot-core#16524 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag