ZIm/crates/project/src
Kirill Bulatov 8a7a78fafb
Avoid modifying the LSP message before resolving it (#26347)
Closes https://github.com/zed-industries/zed/issues/21277

To the left is current Zed, right is the improved version.
3rd message, from Zed, to resolve the item, does not have `textEdit` on
the right side, and has one on the left.
Seems to not influence the end result though, but at least Zed behaves
more appropriate now.

<img width="1727" alt="image"
src="https://github.com/user-attachments/assets/ca1236fd-9ce2-41ba-88fe-1f3178cdcbde"
/>


Instead of modifying the original LSP completion item, store completion
list defaults and apply them when the item is requested (except `data`
defaults, needed for resolve).

Now, the only place that can modify the completion items is this method,
and Python impl seems to be the one doing it:


ca9c3af56f/crates/languages/src/python.rs (L182-L204)

Seems ok to leave untouched for now.

Release Notes:

- Fixed LSP completion items modified before resolve request
2025-03-10 00:12:53 +02:00
..
lsp_command Remove language::markdown (#25136) 2025-02-19 08:55:36 -07:00
lsp_store lsp: Add support for clangd's inactiveRegions extension (#26146) 2025-03-06 21:30:05 +00:00
project_tree cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
buffer_store.rs Clear pending staged/unstaged diff hunks hunks when writing to the git index fails (#26173) 2025-03-05 18:45:09 -08:00
color_extractor.rs Simplify static expression to a constant (#23193) 2025-01-15 19:31:21 +00:00
connection_manager.rs Remove more references to 'model' in GPUI APIs (#23693) 2025-01-27 04:00:27 +00:00
debounced_delay.rs Rename model based variable names to entity (#24198) 2025-02-04 10:24:35 -08:00
direnv.rs Environment loading fixes (#19144) 2024-10-16 12:14:40 +02:00
environment.rs Remove worktree and project notifies (#26244) 2025-03-07 10:51:46 -07:00
git.rs Improve when the commit suggestions would show (#26313) 2025-03-07 23:33:48 +00:00
image_store.rs cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
lsp_command.rs Avoid modifying the LSP message before resolving it (#26347) 2025-03-10 00:12:53 +02:00
lsp_store.rs Avoid modifying the LSP message before resolving it (#26347) 2025-03-10 00:12:53 +02:00
prettier_store.rs cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
project.rs Avoid modifying the LSP message before resolving it (#26347) 2025-03-10 00:12:53 +02:00
project_settings.rs Change the default staging and unstaging state display (#26299) 2025-03-07 19:56:24 +00:00
project_tests.rs Support workspace/executeCommand for actions' data (#26239) 2025-03-06 23:26:46 +02:00
project_tree.rs cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
search.rs Revert "Use multi-line regex for '\s'" (#25926) 2025-03-03 10:32:49 -05:00
search_history.rs project search: Persist search history across session (#9932) 2024-04-02 11:13:18 +02:00
task_inventory.rs Use active worktree's task sources (#25784) 2025-02-27 22:57:59 +00:00
task_store.rs Rename model based variable names to entity (#24198) 2025-02-04 10:24:35 -08:00
terminals.rs vim: Fix tab title when using !! and disable rerun button for terminal tasks (#26122) 2025-03-05 08:47:49 -07:00
toolchain_store.rs cx.background_executor().spawn(...) -> cx.background_spawn(...) (#25103) 2025-02-18 20:30:33 +00:00
worktree_store.rs Fix git branches in non-active repository (#26148) 2025-03-05 21:16:46 +00:00
yarn.rs Eliminate GPUI View, ViewContext, and WindowContext types (#22632) 2025-01-26 03:02:45 +00:00