fix: dispose orphaned progress notifications on language server shutdown - #26130
MOHAMMED WASIM KHAN (wasim-builds) wants to merge 1 commit into
Conversation
Fixes microsoft#16750 Ensures that any pending progress UI notifications are resolved when the Language Server progress tracking is disposed, preventing orphaned progress bars from hanging indefinitely in the status bar if the server restarts or crashes.
|
🔒 Automated review in progress — Bill Schnurr (@bschnurr) is auto-reviewing this PR. |
|
Verification: The relevant tests could not be fully run in the isolated environment; this review is not fully verified. Result: Summary: Verification could not run because no trusted sandbox image is configured for `microsoft/vscode-python`. The PR adds no tests, and existing tests do not reference `ProgressReporting` or its progress notifications. The new disposal behavior therefore remains unverified and uncovered. Test runs: 1 not run
|
Bill Schnurr (bschnurr)
left a comment
There was a problem hiding this comment.
Approved via Review Center.
|
Hello everyone, Checking in regarding this contribution for microsoft/vscode-python (fix: dispose orphaned progress notifications on language server shutdown). Contributing around VS Code Python language tooling and language server lifecycle management has been exciting, and I'd love to help out with additional improvements and features across microsoft/vscode-python. I am available for freelance/contract projects, full-time opportunities, or joining the team as a regular contributor. You're welcome to connect or view my profile and repositories at https://github.com/wasim-builds. |
Fixes #16750
When a language server crashed or was restarted, any active progress notifications (started via
python/beginProgress) would remain orphaned in the UI because theprogressDeferredpromise was never resolved duringdispose().This PR ensures that if the
ProgressReportinginstance is disposed, any pending progress deferred is resolved, closing the orphaned UI notification.