Skip to content

fix: apply all external configs registered within one debounce window - #3075

Merged
rwols merged 3 commits into
mainfrom
fix/debounced-external-configs
Oct 17, 2026
Merged

rwols merged 3 commits into
mainfrom
fix/debounced-external-configs

Conversation

@rchl

@rchl rchl commented Oct 13, 2026

Copy link
Copy Markdown
Member

Fixes #3074

When a helper package registers more than one plugin in the same plugin_loaded (e.g. LSP-R registers LSP-R and rlang), the debounced notification in ClientConfigs.add_external_config only fired for the last call and passed only that config's name to WindowConfigManager.update. The other configs were never applied to the open windows until Sublime Text was restarted.

Changes:

  • ClientConfigs collects the names of external configs registered during the debounce window and notifies them together.
  • WindowConfigManager.update (and LspSettingsChangeListener.on_client_config_updated) now take a set of config names instead of a single name. None still means "update all configs", so startup still does a single update pass per window.
  • When updating a subset of configs, all matching configs are processed (previously only the first result was used) and removals are restricted to the requested names. Previously, an update for a name that no longer existed could pick an unrelated config marked as removed.

Assisted-By: Claude Code:claude-opus-5-5

rchl added 3 commits October 13, 2026 19:03
When a helper package registers more than one plugin at once (e.g. LSP-R
registers "LSP-R" and "rlang"), only the last registered config was passed
to WindowConfigManager.update, so the other configs were never applied to
open windows until restart.

Collect the names registered during the debounce window and update them
together. WindowConfigManager.update now accepts a set of config names.

Fixes #3074

Assisted-By: Claude Code:claude-opus-5-5
Assisted-By: Claude Code:claude-opus-5-5
Assisted-By: Claude Code:claude-opus-5-5
@rwols
rwols merged commit 3e8ab78 into main Oct 17, 2026
9 checks passed
@rwols
rwols deleted the fix/debounced-external-configs branch October 17, 2026 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

A helper package that registers two plugins (LSP-R) is not applied to the window after a live install

2 participants