ZIm/crates
Cole Miller ea42013746
acp: Eagerly load all kinds of mentions (#36741)
This PR makes it so that all kinds of @-mentions start loading their
context as soon as they are confirmed. Previously, we were waiting to
load the context for file, symbol, selection, and rule mentions until
the user's message was sent. By kicking off loading immediately for
these kinds of context, we can support adding selections from unsaved
buffers, and we make the semantics of @-mentions more consistent.

Loading all kinds of context eagerly also makes it possible to simplify
the structure of the MentionSet and the code around it. Now MentionSet
is just a single hash map, all the management of creases happens in a
uniform way in `MessageEditor::confirm_completion`, and the helper
methods for loading different kinds of context are much more focused and
orthogonal.

Release Notes:

- N/A

---------

Co-authored-by: Conrad <conrad@zed.dev>
2025-08-23 01:21:20 -04:00
..
acp_thread acp: Eagerly load all kinds of mentions (#36741) 2025-08-23 01:21:20 -04:00
acp_tools ACP debug tools pane (#36768) 2025-08-22 19:32:49 +00:00
action_log Enforce style lints which do not have violations (#36580) 2025-08-20 14:07:37 +02:00
activity_indicator Enforce style lints which do not have violations (#36580) 2025-08-20 14:07:37 +02:00
agent acp: Eagerly load all kinds of mentions (#36741) 2025-08-23 01:21:20 -04:00
agent2 acp: Eagerly load all kinds of mentions (#36741) 2025-08-23 01:21:20 -04:00
agent_servers acp: Remove ACP v0 (#36785) 2025-08-22 22:09:08 -06:00
agent_settings lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
agent_ui acp: Eagerly load all kinds of mentions (#36741) 2025-08-23 01:21:20 -04:00
ai_onboarding onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
anthropic Add Claude Opus 4.1 (#35653) 2025-08-05 18:16:47 +00:00
askpass Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
assets Use IBM Plex Sans / Lilex (#36084) 2025-08-13 13:25:52 -06:00
assistant_context Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
assistant_slash_command lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
assistant_slash_commands Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
assistant_tool Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
assistant_tools Fix clippy::len_zero lint style violations (#36589) 2025-08-20 14:35:59 +00:00
audio Add Rodio audio pipeline as alternative to current LiveKit pipeline (#36607) 2025-08-21 15:56:16 +02:00
auto_update Fix unnecessary-mut-passed lint (#36490) 2025-08-19 14:20:01 +00:00
auto_update_helper lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
auto_update_ui Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
aws_http_client bedrock: Fix remaining streaming delays (#33931) 2025-07-22 11:55:24 -04:00
bedrock Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
breadcrumbs Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
buffer_diff acp: Fix panic with edit file tool (#36732) 2025-08-22 03:48:47 -04:00
call Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
channel Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
cli Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
client Add a few more testing features (#36778) 2025-08-22 22:17:02 +00:00
clock Add the ability to follow the agent as it makes edits (#29839) 2025-05-04 08:28:39 +00:00
cloud_api_client onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
cloud_api_types Establish WebSocket connection to Cloud (#35734) 2025-08-07 01:28:41 +00:00
cloud_llm_client agent2: Add now, grep, and web search tools (#35974) 2025-08-11 15:34:34 +02:00
collab Ensure pane: swap item right does not panic (#36765) 2025-08-22 23:28:55 +02:00
collab_ui collab_ui: Fix channel text bleeding through buttons on hover (#36710) 2025-08-21 18:50:06 +00:00
collections
command_palette Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
command_palette_hooks
component Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
context_server acp: Support calling tools provided by MCP servers (#36752) 2025-08-22 13:16:42 +00:00
copilot Make word completions less intrusive (#36745) 2025-08-22 13:58:17 +00:00
crashes Add GPU info to Sentry crashes (#36624) 2025-08-21 19:59:42 -04:00
credentials_provider Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
dap lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
dap_adapters Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
db Silence a bucketload of logs (#36534) 2025-08-19 20:26:56 -06:00
debug_adapter_extension Allow remote loading for DAP-only extensions (#33981) 2025-07-06 14:52:16 +02:00
debugger_tools Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
debugger_ui remote: Fetch shell on ssh remote to use for preparing commands (#36690) 2025-08-21 19:08:26 +02:00
deepseek language_models: Emit UsageUpdate events for token usage in DeepSeek and OpenAI (#33242) 2025-06-25 09:42:30 +02:00
diagnostics Be more lenient when dealing with rust-analyzer's flycheck commands (#36782) 2025-08-22 22:55:50 +00:00
docs_preprocessor docs: Add table of all actions (#36642) 2025-08-20 23:41:06 +00:00
edit_prediction onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
edit_prediction_button onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
editor Be more lenient when dealing with rust-analyzer's flycheck commands (#36782) 2025-08-22 22:55:50 +00:00
eval Fix clippy::println_empty_string, clippy::while_let_on_iterator, clippy::while_let_on_iterator lint style violations (#36613) 2025-08-20 20:14:30 +02:00
explorer_command_injector Just Zed instead of Zed Editor (#34146) 2025-07-10 21:08:43 +02:00
extension Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
extension_api lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
extension_cli Remove /docs slash command (#36325) 2025-08-16 19:00:31 +00:00
extension_host Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
extensions_ui Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
feature_flags Rename acp flag (#36541) 2025-08-20 02:11:17 +00:00
feedback Add GPU info to Sentry crashes (#36624) 2025-08-21 19:59:42 -04:00
file_finder Fix clippy::manual_map lint violations (#36584) 2025-08-20 15:17:28 +02:00
file_icons Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
fs Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
fsevent Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
fuzzy Prevent out of bounds access in recursive_score_match (#35630) 2025-08-06 10:53:20 +02:00
git Fix clippy::println_empty_string, clippy::while_let_on_iterator, clippy::while_let_on_iterator lint style violations (#36613) 2025-08-20 20:14:30 +02:00
git_hosting_providers Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
git_ui ai: Auto select user model when there's no default (#36722) 2025-08-22 01:12:12 -04:00
go_to_line Enforce style lints which do not have violations (#36580) 2025-08-20 14:07:37 +02:00
google_ai Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
gpui Add GPU info to Sentry crashes (#36624) 2025-08-21 19:59:42 -04:00
gpui_macros clippy: println_empty_string & non_minimal_cfg (#36614) 2025-08-20 18:45:40 +00:00
gpui_tokio Use Tokio::spawn instead of getting an executor handle (#36701) 2025-08-21 17:19:57 +00:00
html_to_markdown Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
http_client Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
http_client_tls
icons thread view: Add more UI improvements (#36750) 2025-08-22 09:52:44 -03:00
image_viewer Option to auto-close deleted files with no unsaved edits (#31920) 2025-06-03 13:18:29 +02:00
inspector_ui Some clippy fixes (#36544) 2025-08-20 03:40:39 +00:00
install_cli Fix clippy::needless_borrow lint violations (#36444) 2025-08-18 21:54:35 +00:00
jj Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
jj_ui editor: Improve code completion filtering to provide fewer and more accurate suggestions (#32928) 2025-06-18 16:01:28 +05:30
journal Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
language Make word completions less intrusive (#36745) 2025-08-22 13:58:17 +00:00
language_extension Fix clippy::needless_borrow lint violations (#36444) 2025-08-18 21:54:35 +00:00
language_model onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
language_models onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
language_selector Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
language_tools Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
languages Capture shorthand_field_initializer and modules in Rust highlights (#35842) 2025-08-22 20:16:43 +00:00
livekit_api Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
livekit_client Add Rodio audio pipeline as alternative to current LiveKit pipeline (#36607) 2025-08-21 15:56:16 +02:00
lmstudio lmstudio: Propagate actual error message from server (#34538) 2025-07-25 09:36:43 -04:00
lsp Stop waiting for part of LSP responses on remote Collab clients' part (#36557) 2025-08-21 09:24:34 +03:00
markdown thread view: Add small refinements to tool call UI (#36723) 2025-08-21 20:51:36 -03:00
markdown_preview Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
media Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
menu gpui: Store action documentation (#33809) 2025-07-02 21:14:33 -04:00
migrator Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
mistral language_models: Add thinking to Mistral Provider (#32476) 2025-08-09 15:25:47 -04:00
multi_buffer Fix typo in Excerpt::contains (#36621) 2025-08-20 19:30:11 +00:00
nc Claude experiment (#34577) 2025-07-17 14:25:55 +00:00
net windows: Add support for SSH (#29145) 2025-07-08 14:34:57 +00:00
node_runtime Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
notifications Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
ollama ollama: Add support for gpt-oss (#35648) 2025-08-06 10:44:15 -04:00
onboarding onboarding: Improve Windows/Linux keyboard shortcuts; example ligature (#36712) 2025-08-22 11:51:01 -04:00
open_ai Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
open_router Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
outline Remove into SelectionEffects from .change_selections (#33554) 2025-06-27 14:31:31 -06:00
outline_panel Fix more improper uses of the buffer_id field of Anchor (#36636) 2025-08-21 09:24:34 -04:00
panel Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
paths lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
picker Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
prettier Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
project Be more lenient when dealing with rust-analyzer's flycheck commands (#36782) 2025-08-22 22:55:50 +00:00
project_panel Show file open error view instead of the modal (#36764) 2025-08-22 17:04:39 +00:00
project_symbols Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
prompt_store Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
proto Be more lenient when dealing with rust-analyzer's flycheck commands (#36782) 2025-08-22 22:55:50 +00:00
recent_projects Restructure persistence of remote workspaces to make room for WSL and other non-ssh remote projects (#36714) 2025-08-22 14:10:45 -07:00
refineable Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
release_channel Use shortened SHA when displaying version to install (#31281) 2025-05-23 14:53:53 +00:00
remote Clean up handling of serialized ssh connection ids (#36781) 2025-08-22 15:44:58 -07:00
remote_server remote: Fix toolchain RPC messages not being handled because of the entity getting dropped (#36665) 2025-08-21 09:37:45 +00:00
repl Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
reqwest_client lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
rich_text Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
rope Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
rpc Fix overlooked Clippy lints (#36659) 2025-08-21 06:48:04 +00:00
rules_library Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
schema_generator
search Ensure pane: swap item right does not panic (#36765) 2025-08-22 23:28:55 +02:00
semantic_index Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
semantic_version Use anyhow more idiomatically (#31052) 2025-05-20 23:06:07 +00:00
session Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
settings Add Rodio audio pipeline as alternative to current LiveKit pipeline (#36607) 2025-08-21 15:56:16 +02:00
settings_profile_selector Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
settings_ui keymap_ui: Improve conflict resolution for semantically equal contexts (#36204) 2025-08-22 00:18:25 +00:00
snippet Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
snippet_provider Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
snippets_ui Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
sqlez Auto-fix clippy::collapsible_if violations (#36428) 2025-08-19 13:27:24 +00:00
sqlez_macros
story Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
storybook Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
streaming_diff Fix clippy::needless_borrow lint violations (#36444) 2025-08-18 21:54:35 +00:00
sum_tree Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
supermaven Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
supermaven_api Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
svg_preview Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
system_specs Add GPU info to Sentry crashes (#36624) 2025-08-21 19:59:42 -04:00
tab_switcher Make tab switcher show preview of selected tab (#36718) 2025-08-22 00:21:36 +02:00
task remote: Fetch shell on ssh remote to use for preparing commands (#36690) 2025-08-21 19:08:26 +02:00
tasks_ui Fix clippy::len_zero lint style violations (#36589) 2025-08-20 14:35:59 +00:00
telemetry Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
telemetry_events Remove old telemetry events and transformation layer (#36263) 2025-08-15 15:37:52 -04:00
terminal Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
terminal_view Move APCA contrast from terminal_view to ui utils (#36731) 2025-08-22 10:17:37 +05:30
text Fix a bunch of other low-hanging style lints (#36498) 2025-08-19 21:26:17 +02:00
theme Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
theme_extension
theme_importer Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
theme_selector Redesign and clean up all icons across Zed (#35856) 2025-08-08 15:34:36 -03:00
time_format agent: Add date separators to Thread History (#29961) 2025-05-06 10:18:48 +00:00
title_bar Enforce style lints which do not have violations (#36580) 2025-08-20 14:07:37 +02:00
toolchain_selector remote: Fix toolchain RPC messages not being handled because of the entity getting dropped (#36665) 2025-08-21 09:37:45 +00:00
ui thread_view: Adjust empty state and error displays (#36774) 2025-08-22 20:40:52 +00:00
ui_input Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
ui_macros Update syn crate from 1.0.109 to 2.0.101 (#31301) 2025-05-23 19:31:25 +00:00
ui_prompt ui_prompt: Fix prompt dialog is hard to see on large screen (#35348) 2025-07-30 23:03:53 +05:30
util remote: Fetch shell on ssh remote to use for preparing commands (#36690) 2025-08-21 19:08:26 +02:00
util_macros Remove separator! macro and make path! handle relative paths (#32527) 2025-06-13 06:32:29 +00:00
vercel openai: Don't send prompt_cache_key for OpenAI-compatible models (#36231) 2025-08-15 13:54:24 +03:00
vim vim: Fix cursor jumping past empty lines with inlay hints in visual mode (#35757) 2025-08-21 21:20:22 -06:00
vim_mode_setting vim: Fix escape key switching back to default mode instead of normal mode (#31843) 2025-06-18 21:26:12 +00:00
watch Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
web_search Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
web_search_providers Another batch of lint fixes (#36521) 2025-08-19 20:33:44 +00:00
workspace Clean up handling of serialized ssh connection ids (#36781) 2025-08-22 15:44:58 -07:00
worktree Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
x_ai lints: A bunch of extra style lint fixes (#36568) 2025-08-20 12:05:58 +02:00
zed Restructure persistence of remote workspaces to make room for WSL and other non-ssh remote projects (#36714) 2025-08-22 14:10:45 -07:00
zed_actions Show file open error view instead of the modal (#36764) 2025-08-22 17:04:39 +00:00
zeta onboarding: Remove accept AI ToS from within Zed (#36612) 2025-08-22 11:45:47 -04:00
zeta_cli Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
zlog Fix clippy::redundant_clone lint violations (#36558) 2025-08-20 12:20:13 +02:00
zlog_settings VSCode Settings import (#29018) 2025-04-23 20:54:09 +00:00