zed/crates
Cameron Mcloughlin 4d6a3c7e11
gpui: Application::inaccessible() (#57954)
Provide a way to prevent GPUI from creating AccessKit adapters, and
enable this in Zed.

This will allow us to test AccessKit support in Zed without rolling it
out more broadly, while we gain confidence in the implementation in
GPUI.

I've also added a log statement

## Motivation (i.e. a mini post-mortem about the #56065 panics)

Merging #56065 caused some nasty panics in nightly. This was caused by a
bug in the logic for selecting a focus node for a `TreeUpdate`.
AccessKit panics when an invalid `TreeUpdate` is provided.

My assumption was that, since Zed uses no a11y APIs, and also that
essentially 0 zed users would have AT apps running, that merging this PR
would have no effect on the behaviour of Zed itself. However, two issues
combined to cause the panics:
- It seems like many people (everyone?) on mac gets the activation
callback called by accesskit_macos. A quick search suggests this might
be due to password managers searching for password fields, but not sure
how true that is.
- The bug in question related to *forgetting to check* whether a node
used a11y APIs, so we *were* pushing non-empty `TreeUpdate`s

As a (probably temporary) defensive measure, I added a function to try
to detect the bad cases and fix them. But it would be lovely if this
could live in AccessKit itself, since it would mean we wouldn't have to
do the check twice (once in GPUI, once in AccessKit). This would also
help prevent drift when updating accesskit versions if new invariants
are added.

We also cannot protect against this with `catch_unwind`, since we use
`panic=abort`. So our only option unfortunately is to temporarily
disable AccessKit until we know our implementation is stable.

Release Notes:

- N/A or Added/Fixed/Improved ...
2026-05-28 13:36:24 +00:00
..
acp_thread ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
acp_tools markdown: Add ability to wrap/unwrap codeblock content (#57312) 2026-05-20 20:51:56 +00:00
action_log sidebar: Improve performance of rebuild_contents (#57717) 2026-05-27 10:31:57 +00:00
activity_indicator Fix activity indicator menu opening when actions are running (#56865) 2026-05-15 12:01:31 +00:00
agent ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
agent_servers agent_ui: Persist external agent selections as defaults (#57511) 2026-05-26 15:11:19 +00:00
agent_settings git_ui: Respect global AGENTS.md when generating commit message (#57827) 2026-05-27 14:08:15 +00:00
agent_skills agent_skills: Read SKILL.md in one shot via fs.load (#57510) 2026-05-27 13:52:40 +00:00
agent_ui ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
ai_onboarding gpui: Add support for inset shadow (#57685) 2026-05-26 14:32:45 +00:00
anthropic anthropic: Pass beta header for speed in BYOK (#57707) 2026-05-26 09:00:33 +00:00
askpass Fix bad GitHub merge queue merge (#54721) 2026-04-23 23:47:30 +00:00
assets
audio audio: Remove rodio audio backend (#51945) 2026-03-24 00:58:09 +01:00
auto_update Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
auto_update_helper Fix Windows icon resource for bin zed.exe (#54738) 2026-05-01 22:33:54 +00:00
auto_update_ui Iterate on skill announcement copywriting (#57532) 2026-05-26 20:49:22 +00:00
aws_http_client
bedrock language_models: Remove unused cache_configuration API (#56884) 2026-05-15 16:27:11 +00:00
breadcrumbs editor: Replace BreadcrumbText with HighlightedText (#51083) 2026-03-13 08:00:22 +00:00
buffer_diff Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
call Disable auto watch when leaving a call (#57196) 2026-05-19 21:31:34 +00:00
channel client: Rename UserId to LegacyUserId (#56185) 2026-05-08 15:53:40 +00:00
cli Stop using wrong paths for zed --diff (#56380) 2026-05-11 15:53:20 +00:00
client client: Refresh cloud models on websocket reconnect (#57528) 2026-05-27 16:39:19 +00:00
clock
cloud_api_client cloud_api_client: Add update_system_settings (#56843) 2026-05-18 14:49:40 +00:00
cloud_api_types Deprecate and migrate ACP extensions (#57133) 2026-05-21 08:32:23 +00:00
cloud_llm_client ep: Send trigger in header (#56433) 2026-05-11 15:22:43 +00:00
codestral language_model: Decouple from Zed-specific implementation details (#52913) 2026-04-02 17:06:57 -03:00
collab Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
collab_ui client: Rename UserId to LegacyUserId (#56185) 2026-05-08 15:53:40 +00:00
collections Add VecMap::entry_ref (#52601) 2026-03-27 18:06:56 -07:00
command_palette Add Actions to open AGENTS.md (#57847) 2026-05-27 16:08:52 +00:00
command_palette_hooks
component
component_preview Simplify parallel agents onboarding (#53854) 2026-04-15 21:51:15 -03:00
context_server Implement MCP OAuth client preregistration (#52900) 2026-05-19 17:45:07 +00:00
copilot node_runtime: Respect npm release-age filters for managed npm installs (#56957) 2026-05-18 21:10:06 +00:00
copilot_chat copilot: Fix issue when switching between OpenAI and Anthropic models (#56655) 2026-05-18 09:57:08 +00:00
copilot_ui agent_ui: Adjust settings UI for some providers (#56879) 2026-05-15 17:08:40 +00:00
crashes Cleanup crashes crate (#54927) 2026-05-04 06:30:47 +00:00
credentials_provider language_model: Decouple from Zed-specific implementation details (#52913) 2026-04-02 17:06:57 -03:00
csv_preview csv_preview: Implement data_table columns pining (#56619) 2026-05-15 11:12:41 +00:00
dap dap: Support IPv6 addresses in TCP transport (#52244) 2026-04-27 08:42:45 +00:00
dap_adapters Rust 1.95 (#55104) 2026-04-29 10:27:47 +00:00
db Remove smol as a dependency from a bunch of crates (#53603) 2026-04-24 10:29:51 +00:00
debug_adapter_extension
debugger_tools Fix macOS find query seeding (#56681) 2026-05-13 23:35:10 +00:00
debugger_ui Make project panel to auto reveal multi buffer excerpts with latest selection (#57236) 2026-05-25 11:53:12 +00:00
deepseek deepseek: Simplify error mapping in DeepSeek stream_completion (#57582) 2026-05-25 17:01:58 +00:00
denoise Rust 1.95 (#55104) 2026-04-29 10:27:47 +00:00
dev_container Respect override command in devcontainer (#57204) 2026-05-28 11:22:41 +00:00
diagnostics Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
docs_preprocessor Staged docs releases (#50136) 2026-04-30 11:10:14 +00:00
edit_prediction ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
edit_prediction_cli ep: Make tree-sitter dependency optional in edit_prediction_metrics (#57829) 2026-05-27 14:11:23 +00:00
edit_prediction_context ep: Don't open unnecessary files during context collection (#57318) 2026-05-20 22:42:31 +00:00
edit_prediction_metrics ep: Make tree-sitter dependency optional in edit_prediction_metrics (#57829) 2026-05-27 14:11:23 +00:00
edit_prediction_types edit_prediction: Disable training data collection based on organization configuration (#53639) 2026-04-10 13:27:04 -04:00
edit_prediction_ui ep: Increase example capture rate (#57208) 2026-05-21 15:23:20 +00:00
editor ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
editor_benchmarks editor: Improve find_matches and replace_all perf (#51941) 2026-05-06 09:28:05 +00:00
encoding_selector Make all status bar tools able to hide its button via UI (#54971) 2026-05-08 10:36:03 +00:00
env_var language_models: Refactor deps and extract cloud (#53270) 2026-04-07 12:28:19 -03:00
etw_tracing
eval_cli Stop loading deprecated agent rules (#57844) 2026-05-27 16:21:30 +00:00
eval_utils
explorer_command_injector
extension Deprecate and migrate ACP extensions (#57133) 2026-05-21 08:32:23 +00:00
extension_api extension_api: Add IPv6 support in DAP extensions API (#54984) 2026-04-29 07:27:05 +00:00
extension_cli Deprecate and migrate ACP extensions (#57133) 2026-05-21 08:32:23 +00:00
extension_host Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
extensions_ui Deprecate and migrate ACP extensions (#57133) 2026-05-21 08:32:23 +00:00
feature_flags Render terminal sandbox section in system prompt behind feature flag (#57430) 2026-05-27 21:11:27 +00:00
feature_flags_macros Feature flag overrides (#54206) 2026-04-18 06:34:19 +00:00
feedback Cleanup crashes crate (#54927) 2026-05-04 06:30:47 +00:00
file_finder Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
file_icons
fs Add cooldown when file watch limit is reached (#57720) 2026-05-27 15:35:46 +00:00
fs_benchmarks
fuzzy fuzzy: Fix crash with Unicode chars whose lowercase expands to multiple codepoints (#52989) 2026-04-03 11:00:13 +00:00
fuzzy_nucleo fuzzy_nucleo: Refactor multi-atom code to use nucleo::Pattern (#55264) 2026-05-06 10:56:20 +00:00
git Update git2 to 0.21.0 and add support for SHA-256 object formatted repos (#57587) 2026-05-27 20:59:01 +00:00
git_graph Add icons for Bitbucket, Codeberg, Forgejo, Gitea, and GitLab remotes (#57500) 2026-05-26 02:10:47 +00:00
git_hosting_providers Fix GitHub bot avatar URL (#55297) 2026-04-30 14:17:32 +00:00
git_ui Auto-scroll hover popup while selecting text (#57518) 2026-05-28 09:55:14 +00:00
go_to_line go_to_line: Fix go to line in multibuffers (#57700) 2026-05-26 13:41:28 +00:00
google_ai google: Add Google thinking level support (#57358) 2026-05-21 10:00:29 +00:00
gpui gpui: Application::inaccessible() (#57954) 2026-05-28 13:36:24 +00:00
gpui_linux gpui: Accesskit support (#56065) 2026-05-27 18:17:59 +00:00
gpui_macos gpui: Accesskit support (#56065) 2026-05-27 18:17:59 +00:00
gpui_macros gpui: Add support for inset shadow (#57685) 2026-05-26 14:32:45 +00:00
gpui_platform agent: Fix cargo test -p agent on windows (#52311) 2026-03-24 11:05:12 +00:00
gpui_shared_string gpui_shared_string: Implement SharedString via smol_str (#54649) 2026-04-24 08:58:26 +00:00
gpui_tokio gpui_tokio: Use shutdown_background to avoid WASI panic on exit (#53904) 2026-04-14 18:14:31 +02:00
gpui_util Fix bad GitHub merge queue merge (#54721) 2026-04-23 23:47:30 +00:00
gpui_web Remove CRLF line endings (#57680) 2026-05-26 12:59:21 +00:00
gpui_wgpu gpui: Add support for inset shadow (#57685) 2026-05-26 14:32:45 +00:00
gpui_windows gpui: Accesskit support (#56065) 2026-05-27 18:17:59 +00:00
grammars Recognize HIP files as C++ (#57333) 2026-05-26 16:22:19 +00:00
html_to_markdown
http_client http_client: Fix GitHub download unpack failures on some filesystems (#53286) 2026-04-07 11:19:21 +05:30
http_client_tls
icons Add icons for Bitbucket, Codeberg, Forgejo, Gitea, and GitLab remotes (#57500) 2026-05-26 02:10:47 +00:00
image_viewer Make all status bar tools able to hide its button via UI (#54971) 2026-05-08 10:36:03 +00:00
input_latency_ui telemetry: Add latency metrics (#54454) 2026-04-22 22:22:10 +00:00
inspector_ui agent_ui: Render skills as creases (#56689) 2026-05-14 22:20:34 +00:00
install_cli Remove CRLF line endings (#57680) 2026-05-26 12:59:21 +00:00
journal Merge gpui::Task and scheduler::Task (#53674) 2026-05-05 22:41:13 +00:00
json_schema_store Rust 1.95 (#55104) 2026-04-29 10:27:47 +00:00
keymap_editor agent_ui: Render skills as creases (#56689) 2026-05-14 22:20:34 +00:00
language ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
language_core editor: Fix soft-wrap in auto-height editors (#54051) 2026-04-18 00:55:44 +02:00
language_extension language_core: Introduce fallback highlights (#52575) 2026-04-02 12:52:42 +00:00
language_model agent_ui: Put fast mode behind confirmation popover (#57482) 2026-05-27 13:05:55 +00:00
language_model_core agent: Make messages vec cheap to clone (#57712) 2026-05-26 10:00:34 +00:00
language_models client: Refresh cloud models on websocket reconnect (#57528) 2026-05-27 16:39:19 +00:00
language_models_cloud language_models: Remove unused cache_configuration API (#56884) 2026-05-15 16:27:11 +00:00
language_onboarding Remove some outdated comments (#52432) 2026-03-25 12:07:34 -06:00
language_selector Make all status bar tools able to hide its button via UI (#54971) 2026-05-08 10:36:03 +00:00
language_tools Stop building semantic highlights on the main thread (#57264) 2026-05-20 14:12:42 +00:00
languages languages: Use rustup rust-analyzer when toolchain override is present (#57696) 2026-05-26 14:58:09 +00:00
line_ending_selector Make all status bar tools able to hide its button via UI (#54971) 2026-05-08 10:36:03 +00:00
livekit_api
livekit_client Add ability to auto watch screens (#54839) 2026-05-01 17:29:27 +00:00
lmstudio ai: Add LMStudio API URL & API key support (#48309) 2026-03-06 16:49:55 +00:00
lsp Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
markdown markdown: Merman (#57644) 2026-05-27 16:27:18 +00:00
markdown_preview markdown: Add ability to wrap/unwrap codeblock content (#57312) 2026-05-20 20:51:56 +00:00
media
menu
mermaid_render markdown: Merman (#57644) 2026-05-27 16:27:18 +00:00
migrator Handle hiding cursor on keyboard input at GPUI level (#55664) 2026-05-04 22:51:56 +00:00
miniprofiler_ui Disable miniprofiler by default (#54645) 2026-04-23 18:41:52 +00:00
mistral Cleanup and update mistral models based on their documentation (#55443) 2026-05-06 12:27:58 +00:00
multi_buffer ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
nc
net
node_runtime node_runtime: Tolerate non-string values in npm time metadata (#57765) 2026-05-27 04:39:26 +00:00
notifications Remove smol as a dependency from a bunch of crates (#53603) 2026-04-24 10:29:51 +00:00
oauth_callback_server Add ChatGPT subscription provider via OAuth 2.0 PKCE (#53166) 2026-05-14 21:03:56 +00:00
ollama Prefer Ollama configured model context length over model architecture context length (#53543) 2026-04-15 02:21:56 -04:00
onboarding zed: Add OpenStatusPage action (#57316) 2026-05-25 14:41:33 +00:00
open_ai language_models: Support fast mode on ChatGPT subscription provider (#57436) 2026-05-27 09:22:00 +00:00
open_path_prompt Fix race condition in OpenPathDelegate (#57290) 2026-05-21 03:59:50 +00:00
open_router agent: Make messages vec cheap to clone (#57712) 2026-05-26 10:00:34 +00:00
opencode opencode: Model updates (#57792) 2026-05-27 18:55:23 +00:00
outline outline: Fix panic due to stale outline hover selection (#55674) 2026-05-05 05:10:46 +00:00
outline_panel Fix outline panel hangs during massive project searches (#57814) 2026-05-27 12:43:06 +00:00
panel git_panel: Add commit history view (#56500) 2026-05-12 15:52:52 +00:00
paths Migrate Rules to global Skills and AGENTS.md (#56672) 2026-05-14 16:30:08 +00:00
picker recent_projects: Allow bulk deleting entries without scroll jumping (#54777) 2026-05-06 14:06:48 +00:00
platform_title_bar Remove Agent V2 feature flag (#52792) 2026-04-08 00:34:54 +00:00
prettier Fix FormatSelections to only format selected ranges, not entire document (#51593) 2026-03-31 12:48:22 +03:00
project ep: Fix agent edits triggering edit predictions due to diagnostic refresh (#57832) 2026-05-28 13:27:55 +00:00
project_benchmarks Merge gpui::Task and scheduler::Task (#53674) 2026-05-05 22:41:13 +00:00
project_panel project_panel: Color worktree-modified files as modified, not warning (#57716) 2026-05-26 13:41:44 +00:00
project_symbols Merge gpui::Task and scheduler::Task (#53674) 2026-05-05 22:41:13 +00:00
prompt_store Avoid duplicate migrated skills (#57853) 2026-05-27 16:46:54 +00:00
proto Support LSP document links (#56011) 2026-05-26 07:09:47 +00:00
recent_projects recent_projects: Fix activation defaulting to main worktree (#57321) 2026-05-21 19:48:43 +00:00
refineable
release_channel Add a function to produce docs scoped to release channel (#56917) 2026-05-15 21:17:43 +00:00
remote Remove CRLF line endings (#57680) 2026-05-26 12:59:21 +00:00
remote_connection agent: Fix find_or_create repository to support remote (#54074) 2026-04-16 16:36:09 -07:00
remote_server Cap and rotate remote logs (#57672) 2026-05-26 19:41:24 +00:00
repl repl: Refresh Python kernelspecs on buffer language change (#54709) 2026-05-15 12:07:32 +00:00
reqwest_client Actually remove file (#56223) 2026-05-08 21:03:40 +00:00
rope Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
rpc Support LSP document links (#56011) 2026-05-26 07:09:47 +00:00
rules_library Merge gpui::Task and scheduler::Task (#53674) 2026-05-05 22:41:13 +00:00
sandbox Add sandbox crate with macOS Seatbelt integration (#57429) 2026-05-27 20:35:32 +00:00
scheduler scheduler: Fix scheduler retention cycle (#57789) 2026-05-27 10:32:14 +00:00
schema_generator theme: Split out theme_settings crate (#52569) 2026-03-27 14:41:25 +01:00
search Make project panel to auto reveal multi buffer excerpts with latest selection (#57236) 2026-05-25 11:53:12 +00:00
session Fix shared database test isolation (#51809) 2026-03-18 12:05:57 -07:00
settings Support LSP document links (#56011) 2026-05-26 07:09:47 +00:00
settings_content Support LSP document links (#56011) 2026-05-26 07:09:47 +00:00
settings_json Remove some outdated comments (#52432) 2026-03-25 12:07:34 -06:00
settings_macros
settings_profile_selector Settings profile base option (#52456) 2026-04-02 00:44:53 +00:00
settings_ui feature_flags: Only respect feature flag overrides for Zed staff (#57860) 2026-05-27 18:16:04 +00:00
shell_command_parser Extract nested command substitutions from arithmetic expansions (#54690) 2026-05-05 16:25:56 +00:00
sidebar sidebar: Improve performance of rebuild_contents (#57717) 2026-05-27 10:31:57 +00:00
skill_creator skill_creator: Use the status toast for confirming creation (#57855) 2026-05-27 18:09:52 +00:00
snippet
snippet_provider Rust 1.95 (#55104) 2026-04-29 10:27:47 +00:00
snippets_ui Merge gpui::Task and scheduler::Task (#53674) 2026-05-05 22:41:13 +00:00
sqlez Remove smol as a dependency from a bunch of crates (#53603) 2026-04-24 10:29:51 +00:00
sqlez_macros
streaming_diff Speed up StreamingDiff::push_new part two (#57849) 2026-05-27 19:33:04 +00:00
sum_tree Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
svg_preview gpui: Fix BGRA conversion for SVG rendering (#52641) 2026-03-29 14:43:05 +00:00
syntax_theme Extract syntax_theme crate (#52798) 2026-03-31 08:06:37 -06:00
system_specs Cleanup crashes crate (#54927) 2026-05-04 06:30:47 +00:00
tab_switcher Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
task Add support for custom git commands in the git graph context menu (#56354) 2026-05-12 16:20:53 +00:00
tasks_ui Merge gpui::Task and scheduler::Task (#53674) 2026-05-05 22:41:13 +00:00
telemetry
telemetry_events
terminal terminal: Forward Shift navigation keys to alternate-screen programs (#57479) 2026-05-28 09:34:57 +00:00
terminal_view terminal: Forward Shift navigation keys to alternate-screen programs (#57479) 2026-05-28 09:34:57 +00:00
text Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
theme Add file icon for Ballerina (.bal) files (#56799) 2026-05-20 02:33:07 +00:00
theme_extension theme: Split out theme_settings crate (#52569) 2026-03-27 14:41:25 +01:00
theme_importer theme: Split out theme_settings crate (#52569) 2026-03-27 14:41:25 +01:00
theme_selector Fix bad GitHub merge queue merge (#54721) 2026-04-23 23:47:30 +00:00
theme_settings Make the commit editor's font size independently configurable (#56077) 2026-05-21 22:16:01 +00:00
time_format
title_bar Remove leftover test a11y label (#57868) 2026-05-27 20:02:48 +00:00
toolchain_selector Make all status bar tools able to hide its button via UI (#54971) 2026-05-08 10:36:03 +00:00
ui Rename agent threads from the sidebar (#57656) 2026-05-26 17:55:09 +00:00
ui_input agent_ui: Mask API key input in Add LLM provider modal (#50379) 2026-03-13 19:37:18 -03:00
ui_macros ui: Make UI independent from settings crate (#52578) 2026-03-27 15:31:49 +00:00
ui_prompt theme: Split out theme_settings crate (#52569) 2026-03-27 14:41:25 +01:00
util Fix git hang caused by accidental inheritance of stdin FD (#57572) 2026-05-25 16:20:30 +00:00
util_macros
vim helix: Fix a cursor position in helix_select mode` (#57610) 2026-05-28 02:36:38 +00:00
vim_mode_setting workspace: Only suppress auto-save on focus transfer for the Vim/Helix command palette (#51949) 2026-03-19 12:53:26 -04:00
watch Bump ctor (#57728) 2026-05-27 10:31:53 +00:00
web_search
web_search_providers Fix token refresh for HTTP requests (#56559) 2026-05-12 19:40:00 +00:00
which_key theme: Split out theme_settings crate (#52569) 2026-03-27 14:41:25 +01:00
windows_resources Fix Windows icon resource for bin zed.exe (#54738) 2026-05-01 22:33:54 +00:00
workspace gpui: Add support for inset shadow (#57685) 2026-05-26 14:32:45 +00:00
worktree Fix the filtering of index.lock + COMMIT_MESSAGE FS events to work in linked worktrees (#57763) 2026-05-27 00:04:30 +00:00
worktree_benchmarks
x_ai x_ai: Update models list (#55931) 2026-05-07 09:56:04 +00:00
zed gpui: Application::inaccessible() (#57954) 2026-05-28 13:36:24 +00:00
zed_actions Add Actions to open AGENTS.md (#57847) 2026-05-27 16:08:52 +00:00
zed_credentials_provider language_model: Decouple from Zed-specific implementation details (#52913) 2026-04-02 17:06:57 -03:00
zed_env_vars language_model: Decouple from Zed-specific implementation details (#52913) 2026-04-02 17:06:57 -03:00
zeta_prompt ep: Various ep CLI improvements (#56587) 2026-05-13 11:34:50 +00:00
zlog
zlog_settings
ztracing
ztracing_macro