Skip to content

fix: dispose orphaned progress notifications on language server shutdown - #26130

Open
MOHAMMED WASIM KHAN (wasim-builds) wants to merge 1 commit into
microsoft:mainfrom
wasim-builds:fix/issue-16750-dispose-progress
Open

fix: dispose orphaned progress notifications on language server shutdown#26130
MOHAMMED WASIM KHAN (wasim-builds) wants to merge 1 commit into
microsoft:mainfrom
wasim-builds:fix/issue-16750-dispose-progress

Conversation

@wasim-builds

Copy link
Copy Markdown

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 the progressDeferred promise was never resolved during dispose().

This PR ensures that if the ProgressReporting instance is disposed, any pending progress deferred is resolved, closing the orphaned UI notification.

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.
Copilot AI lite review requested due to automatic review settings August 30, 2026 11:11

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@bschnurr

Bill Schnurr (bschnurr) commented Aug 31, 2026

Copy link
Copy Markdown
Member

🔒 Automated review in progress — Bill Schnurr (@bschnurr) is auto-reviewing this PR.

@bschnurr

Copy link
Copy Markdown
Member

Verification: The relevant tests could not be fully run in the isolated environment; this review is not fully verified.

Result: could-not-verify

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

  • ⚠️ Not run | Verification preflight and PR diff discovery | printf 'AUTOMATION_SANDBOX_PROFILE=%s\n' "${AUTOMATION_SANDBOX_PROFILE:-}"; git status --short; git diff --name-status upstream/main...HEAD; git diff --stat upstream/main...HEAD; if [ -d node_modules ]; then printf 'node_modules=present\n'; else printf 'node_modules=missing\n'; fi; if [ -d out ]; then printf 'out=present\n'; else printf 'out=missing\n'; fi; git diff --unified=20 upstream/main...HEAD
⚠️ Verification preflight and PR diff discovery diagnostic output
Container verification could not start: no trusted sandbox image is configured for microsoft/vscode-python, and local execution was not authorized.

@bschnurr Bill Schnurr (bschnurr) left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved via Review Center.

@bschnurr Bill Schnurr (bschnurr) added the review-auto:approved Automated review: no blocking findings (approval posted). label Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review-auto:approved Automated review: no blocking findings (approval posted).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dispose orphaned progress notifications behind when using progress reporting in language servers

3 participants