LSP Versions Save

Client implementation of the Language Server Protocol for Sublime Text

4070-2.0.0

4 weeks ago

⚠️ Sublime Text will need to be restarted more than once for things to work properly. ⚠️

Breaking changes

  • LSP and LSP-* packages are transitioning from Python 3.3 to Python 3.8.

FAQ

What are the most significant improvements that stem from the 3.3 to 3.8 change?

There are no new features. This is an internal LSP codebase change that affects all LSP-* packages.

LSP is broken after the update even if Sublime Text is restarted many times

If that is the case, follow these steps:

  • Check if "index_files" is set to false in Preferences.sublime-settings

From the command palette open Preferences: Settings and see if "index_files": false exists. If yes, remove that setting.

  • Check if "LSP" is put in "ignored_packages" in Preferences.sublime-settings

Ensure that LSP hasn't been added to the "ignored_packages" list during the update. If it has, remove it.

  • Reach for help

Feel free to open an issue or reach out to us on Discord if you encounter any problems during the update. Please provide logs from the Sublime Text console.

4070-1.30.0

1 month ago

Breaking changes

  • godot-editor client configuration default tcp_port value is now 6005 instead of 6008. Older versions of Godot(3.x) use port 6008 (#2447) (Предраг Николић)

Fixes and Improvements

  • Keep tab selection and focus when applying WorkspaceEdit (#2431) (Janos Wortmann)
  • Enhancements for the rename panel (#2428) (Janos Wortmann)
  • Fix URI format for res scheme (#2432) (Janos Wortmann)
  • If "log_debug" is enabled, window/logMessage will be printed to the Sublime Text Console instead of LSP log panel (#2444) (Janos Wortmann)

Documentation

  • docs: Add Toit (#2425) (Serjan Nasredin)
  • docs: Add Solidity (#2383) (Nikita Kozlov)

Plugin API changes

  • Allow plugins to ignore certain views (#2410) (Janos Wortmann)

4070-1.29.0

2 months ago

New features

  • add commands for opening "find references" in bottom or quick panel (#2409) (Rafał Chłodnicki)
  • Add format on paste (#2397) (Предраг Николић)

Fixes and Improvements

  • Fix usage of sublime.score_selector (#2427) (Benjamin Schaaf)
  • Fix find_open_file incompatibility with older ST versions (Janos Wortmann)

Refactoring

  • Remove hover provider count view setting (Janos Wortmann)
  • Remove unnecessary argument from lsp_symbol_rename command (Janos Wortmann)

Documentation

  • docs: add info about typst-lsp commands (#2424) (Ilia)
  • docs: add systemverilog/verible language server setup guide (#2416) (Johnny Martínez)
  • docs: rewrite self-help instructions (#2405) (Rafał Chłodnicki)
  • docs: rewritten "common problems" section (#2406) (Rafał Chłodnicki)
  • A few enhancements for the docs website (#2402) (jwortmann)
  • chore: deploy docs preview on docs changes (#2403) (Rafał Chłodnicki)

4070-1.28.0

3 months ago

New features

Fixes and Improvements

4070-1.27.0

4 months ago

Breaking changes

  • The default value of show_references_in_quick_panel has changed from false to true.

New features

  • Support all arguments of native save in lsp_save command (#2382) (jwortmann)
  • Add only_files argument for lsp_save_all command (#2376) (jwortmann)
  • Show diagnostics popup when hovering over gutter icons (#2349) (jwortmann)
  • Add menu item to toggle code lenses (#2351) (Rafał Chłodnicki)
  • Add menu item to disable/enable hover popups (#2316) (jwortmann)

Improvements

  • Workspace Symbols overhaul (#2333) (jwortmann)
  • Add NO_UNDO flags to all regions (less memory usage) (#2370) (Rafał Chłodnicki)
  • Try to match at least 2 components of base scope with the map (#2361) (Rafał Chłodnicki)
  • Small visual tweak for signature help popup (#2358) (jwortmann)
  • Prefer active view instead of leftmost one for Goto commands (#2356) (jwortmann)

Fixes

  • Empty command handling with tcp_port (#2378) (Alexey Bondarenko)
  • Document state getting out of sync in rare cases (#2375) (Rafał Chłodnicki)
  • Use simple error for code lenses that failed to resolve (Rafal Chlodnicki)
  • Fix performance regression in Goto Symbol overlay (#2348) (jwortmann)

4070-1.26.0

6 months ago

New features

  • Add support for remote images in hover popups (#2341) (jwortmann)
  • Add kind filter for Goto Symbol command (#2330) (jwortmann)
  • Handle multiple formatters (#2328) (jwortmann)
  • Add support for folding range request (#2304) (jwortmann)
  • Add support for multi-range formatting (#2299) (jwortmann)

Improvements

  • Handle custom URI schemes in hover text links (#2339) (Raoul Wols)
  • Sort and select closest result for Find References in quick panel (#2337) (jwortmann)
  • Improve signature help performance (#2329) (jwortmann)
  • Align "Expand Selection" fallback behavior with "Goto Definition" and "Find References" (#2325) (Janos Wortmann)
  • support client config with tcp_port but without command (#2300) (Marek Budík)

Fixes

  • check codeAction/resolve capability against session buffer (#2343) (1900 TD Lemon)
  • Minor visual tweaks to ShowMessageRequest popup (#2340) (Rafał Chłodnicki)
  • fix "formatting on save" potentially running on outdated document state (#2336) (Rafal Chlodnicki)

4070-1.25.0

9 months ago

⚠️ To ensure that everything works properly after LSP package is updated, it's strongly recommended to restart Sublime Text once it finishes updating all packages. ⚠️

New features

  • Add option to show diagnostics as annotations (#1702) (Rafał Chłodnicki)
  • Add argument "include_declaration" to "lsp_symbol_references" (#2275) (Magnus Karlsson)

Fixes

  • Fix rare KeyError (Janos Wortmann)
  • fix "Error rewriting command" warning triggered on startup (#2277) (Rafał Chłodnicki)
  • fix crash on checking excluded folders with missing project data (#2276) (Rafał Chłodnicki)
  • Fix tagged diagnostics flickering on document changes (#2274) (Rafał Chłodnicki)

Improvements

  • Show server crashed dialog on unexpected output in server's stdout (Rafal Chlodnicki)
  • Only do a single pass on running code actions on save (#2283) (Rafał Chłodnicki)
  • Take font style of sighelp active parameter from color scheme (#2279) (jwortmann)

4070-1.24.0

1 year ago

⚠️ To ensure that everything works properly after LSP package is updated, it's strongly recommended to restart Sublime Text once it finishes updating all packages. ⚠️

Breaking changes

  • Diagnostics for files that are not within the project folders are no longer ignored. You can set "diagnostics_mode": "workspace" in server-specific configuration to enable old behavior.

New features

  • Add support for pull diagnostics (#2221) (jwortmann)
  • Add "outline" as an option for "document_highlight_style" (#2234) (Terminal)
  • add "show_multiline_document_highlights" setting (#2247) (Tito)

Fixes

  • Fix handling of folder_exclude_patterns in projects (#2237) (Rafał Chłodnicki)
  • html-escape diagnostic-related strings (#2228) (Rafał Chłodnicki)
  • Fix exception for null response id (#2233) (jwortmann)
  • Fix some features might not work with dynamical registration (#2222) (jwortmann)

Improvements

  • use class for diagnostic info instead of hardcoding color (#2257) (Rafał Chłodnicki)
  • Use regular font style in sighelp popup if already highlighted by color scheme (#2259) (jwortmann)
  • Add support and mode for workspace pull diagnostics (#2225) (jwortmann)
  • don't send params for requests/notifications that don't expect them (#2240) (Rafał Chłodnicki)
  • optimize creation of code actions annotation region (#2239) (Rafał Chłodnicki)
  • Allow style overrides for inlay_hints.css (#2232) (jwortmann)
  • Improve label detail support in completions (#2212) (ryuukk)
  • Update clojure-lsp docs (#2226) (Raffael Stein)

4070-1.23.0

1 year ago

⚠️ To ensure that everything works properly after LSP package is updated, it's strongly recommended to restart Sublime Text once it finishes updating all packages.

Breaking changes

If you had one of those configs enabled in your LSP Settings then it will no longer do anything. You can restore the removed config from https://github.com/sublimelsp/LSP/pull/2206 into your LSP Settings but we instead recommend installing the relevant helper package which takes care of managing the server dependency and includes all necessary settings that the server can use.

Features

  • (inlay hints) toggle inlay hints command/menu item (#2023) (Предраг Николић)
  • (completions) add support for CompletionList.itemDefaults (#2194) (Предраг Николић)

Fixes and Improvements

  • (settings) better grouping of default settings (#2206) (Rafał Chłodnicki)
  • (general) don't initialize TextChange listeners for widgets (#2213) (Rafał Chłodnicki)
  • (general) protect again invalid auto_complete_triggers values (#2209) (Rafał Chłodnicki)
  • (general) tell if any selection changed in addition to just the first region (#2204) (Rafał Chłodnicki)
  • (general) Don't run non-essential requests during save (#2203) (Rafał Chłodnicki)
  • (general) add language ID mapping for TailwindCSS syntax (#2198) (Предраг Николић)
  • (general) fix hidden code action menu entries sometimes being visible (#2187) (jwortmann)
  • (completions) optimize performance of handling huge completion payloads (#2190) (Rafał Chłodnicki)
  • (completions) tweak formatting with labelDetails (#2207) (jwortmann)
  • (diagnostics) do not wrongly ignore diagnostics when symlinks are involved (#2210) (Rafał Chłodnicki)
  • (diagnostics) notify opened files immediately if there are pending diagnostics (#2211) (Rafał Chłodnicki)
  • (call hierarchy) highlight call location for incoming calls (#2208) (jwortmann)
  • (code actions) check capabilities against buffer when requesting code actions (#2202) (Rafał Chłodnicki)
  • (docs) add Digestif server configuration (#2205) (jwortmann)
  • (logging) fix log panel not scrolling on initial open (#2188) (Rafał Chłodnicki)

4070-1.22.0

1 year ago

Breaking changes

  • don't show diagnostics panel on save by default (#2179) (Glauco Custódio)

Features

  • Implement type hierarchy request (#2180) (jwortmann)
  • Implement call hierarchy request (#2151) (jwortmann)

Fixes and Improvements

  • Perform inlay hint action on double instead of single click (#2175) (Предраг Николић)
  • support canceling pending completions request (#2177) (Rafał Chłodnicki)
  • fix stale state or lack of updates on changing branches (#2182) (Rafał Chłodnicki)
  • Add timestamp and request duration in LSP logs (#2181) (Rafał Chłodnicki)
  • workaround for View Listeners not being attached for new transient view (#2174) (Rafał Chłodnicki)
  • Make Document Symbols behavior more consistent with built-in Goto Symbol (#2166) (jwortmann)
  • Allow missing window/workDoneProgress/create request from the server (#2159) (Raoul Wols)
  • Use "plaintext" language ID for plain text files (#2164) (Предраг Николић)
  • Don't use "escapeall" extension when formatting with mdpopups (#2163) (Rafał Chłodnicki)
  • support "force_group" and "group" arguments in "lsp_symbol_references" (#2186) (Rafał Chłodnicki)

Plugin API changes

  • trigger "on_server_response_async" also for "initialize" response (#2172) (Rafał Chłodnicki)
  • allow setting additional text in permanent server status (#2173) (Rafał Chłodnicki)