Conversation
…task Removes the consent dialog + install bar + problems-panel row for the PHP and Python language servers (user feedback: too many dialogs). The servers now install automatically on the first relevant file open, announced only through the status-bar task whose popup is opened for every install/upgrade (download size in the message) with a stop icon. - cancel: downloadFile/_npmInstallInFolder return promises carrying a cancel() handle (node-side keyed RPC under the hood; AbortController for downloads, retained child process for npm). Cancel cleans partial files and defers retry to the next app launch; the master prefs (python/php.codeIntelligence) stay the durable opt-out. - npm installs on the same folder are now mutually exclusive, and the in-flight registries are cleaned on every failure path so retries always work. - offline is a non-event: no task/toast, auto-retry when connectivity returns (window online) or next launch. Network errors mid-install take the same quiet path. - real failures roll back the partial install, turn the task red with a retry icon, open the popup and raise a subtle toast; metrics (lsp/pyInst|phpInst x ok/upOk/fail/cancel/waitNet) and logger error reports added. - corrupt-but-present installs self-repair (wipe + reinstall once per session) instead of staying silently broken. - server versions now live in src/config.json (lsp_server_pins), flowing through generated appConfig.js; a missing pins block alerts (stale build tripwire). npm run updateBuiltInLSPS bumps all built-in servers (runtime pins + bundled vtsls/json in src-node) to latest stable, and a monthly workflow opens a reviewed PR gated by the LSP suites. - auto-install never runs in test windows; suites acquire servers via installNow() explicitly (new guard specs).
jsdoc cannot parse TypeScript intersection types - the
"Promise<void> & {cancel...}" return annotations broke the API docs
generator. Replaced with a CancellablePromise typedef.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Removes the consent dialog + install bar + problems-panel row for the
PHP and Python language servers (user feedback: too many dialogs). The
servers now install automatically on the first relevant file open,
announced only through the status-bar task whose popup is opened for
every install/upgrade (download size in the message) with a stop icon.
cancel() handle (node-side keyed RPC under the hood; AbortController
for downloads, retained child process for npm). Cancel cleans partial
files and defers retry to the next app launch; the master prefs
(python/php.codeIntelligence) stay the durable opt-out.
in-flight registries are cleaned on every failure path so retries
always work.
returns (window online) or next launch. Network errors mid-install
take the same quiet path.
retry icon, open the popup and raise a subtle toast; metrics
(lsp/pyInst|phpInst x ok/upOk/fail/cancel/waitNet) and logger error
reports added.
session) instead of staying silently broken.
through generated appConfig.js; a missing pins block alerts (stale
build tripwire). npm run updateBuiltInLSPS bumps all built-in servers
(runtime pins + bundled vtsls/json in src-node) to latest stable, and
a monthly workflow opens a reviewed PR gated by the LSP suites.
installNow() explicitly (new guard specs).