d164034
Allow all completions with preresolved additional text edits (#2711)
Click to expand commit body
Deals with https://github.com/zed-industries/community/issues/752
Deals with https://github.com/zed-industries/community/issues/566
Currently, when converting from LSP to Zed objects, completions with
non-empty `additional_text_edits` are filtered out.
Later, all other completions form a list and the selected one gets the
`Editor::confirm_completion` call, which always queries an LSP
completion resolve request to get the `additional_text_edits` field.
Otherwise, `additional_text_edits` field is ignored entirely for the
rest of the completion lifetime — and we always pass the selected
completion through the resolve request.
The PR changes the logic, removing the `additional_text_edits` filtering
and instead of resolving every completion, now we check for
`additional_text_edits` in the completion before resolving: resolve
happens only if the data is absent.
Generally, feels like resolve has to happen before the completion
selection: LSP servers may send us markdown for completion documentation
preview pop ups and similar extra info.
Also, the server may lack resolve capabilities entirely, always sending
the request seems dangerous.
For now, the PR does not attempt to change either.
Release Notes:
- Brings rust-analyzer's postfix completions and others completions with
preresolved additional text edits
This PR includes a new crate, aimed at maintaining a consistent semantic
embedding database, for any project opened with Zed. At a high level,
for each file in a project, we parse the file with treesitter, embed the
symbol "document" objects with OpenAI, and maintain a consistent
database of these embeddings and offset locations in a sqlite database.
Once stored, we have built a simple modal interface for querying on
these symbols embeddings using natural language, offering the
opportunity to navigate to the selected symbol.
This initial PR is intended to provide this functionality only in preview,
as we explore, evaluate and iterate on the vector store.
- Full task details are provided in the [Semantic Search Linear
Project](https://linear.app/zed-industries/project/semantic-search-7c787d198ebe/Z)
Co-Authored-By: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Nate Butler
and
Piotr Osiewicz
created
2ac485a
Merge branch 'main' into piotr/z-2556-add-create-branch-button
Piotr Osiewicz
created
c12821f
Increase trailoff limit for modal branch picker. (#2710)
Click to expand commit body
Z-2601
Follow-up to modal branch picker, this is the updated version:

Previously a trail off limit was much smaller:

Release notes:
- N/A
Piotr Osiewicz
created
6260d97
Increase trailoff limit for modal branch picker.
3db1aac
Avoid user menu toggle button overlapping with tab bar top border (#2707)
Click to expand commit body
Something little I noticed today
| | Normal | Hovered |
| ------------- | ------------- | - |
| Before | 

| 

|
| After | 

| 

|
Also makes it match the contacts button and seems to more closely
resemble the mockups as far as I can tell

Release Notes:
- Fixed the titlebar user menu button obscuring part of the border below
it.
Julia
created
99c2395
chore: Disable http2 feature in isahc. (#2709)
Click to expand commit body
This removes transitive dependency on libnghttp2, which is pretty heavy.
Release Notes:
- N/A
This removes transitive dependency on libnghttp2, which is pretty heavy.
Piotr Osiewicz
created
10c6277
chore: Bump ipc-channel to 0.16.1. (#2708)
Click to expand commit body
Kevin Hovsäter reported a crash in cli when running 'cargo run -p cli --
--bundle-path target/debug/Zed'. It was caused by unaligned pointer
access in ipc-channel library; rustc started generating debug_asserts
for pointer alignment starting with 1.70, which we have
oh-so-conveniently upgraded to shortly before Kevin noticed a crash.
Rust 1.70 did not introduce this panic, it merely started triggering on
UB that was previously ignored.
/cc @hovsater @SomeoneToIgnore
Release Notes:
- N/A
Kevin Hovsäter reported a crash in cli when running 'cargo run -po cli -- --bundle-path target/debug/Zed'. It was caused by unaligned pointer access in ipc-channel library; rustc started generating debug_asserts for pointer alignment starting with 1.70, which we have oh-so-conveniently upgraded to shortly before Kevin noticed a fix.
Rust 1.70 did not introduce this panic, it merely started triggering on UB that was previously ignored.
Piotr Osiewicz
created
b9f5cb0
recent_projects: Perform fuzzy search on compacted paths. (#2703)
Click to expand commit body
Match highlighting for recent projects picker was off, because the path
representation was compacted - for a path '/Users/hiro/Projects/zed' we
compact it to use a tilde instead of home directory. However, the
highlight positions were always calculated for a full path, leading to a
mismatch in highlights. This commit addresses this by running fuzzy
search on compacted paths instead of using long paths. This might lead
to a slight performance hit, but given that recent projects modal
shouldn't have that many items in the first place, it should be okay.
Z-2546
Release Notes:
- Fixed result highlighting in "Recent projects" modal.
Piotr Osiewicz
created
33e2b52
added test registration for project settings
KCaverly
created
297fa02
Merge branch 'main' of github.com:zed-industries/zed into vector_store
KCaverly
created
b68cd58
updated vector store settings to remove batch embeddings size
KCaverly
created
4b3bb2c
Define semantic search action regardless of whether the feature is enabled
Instead of storing `initialization_options` in every LSP adapter as
before, store previous LSP settings in `Project` entirely.
This way, we can later have use multiple different project
configurations per single LSP with its associated adapter.
Release Notes:
- N/A
Instead of storing `initialization_options` in every LSP adapter as
before, store previous LSP settings in `Project` entirely.
This way, we can later have use multiple different project
configurations per single LSP with its associated adapter.
co-authored-by: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Joseph T. Lyons
and
Max Brunsfeld
created
efe8b8b
Revert "Fix language servers improper restarts"
Click to expand commit body
This reverts commit 91832c8cd8de4743a5c8dad87005a67d9601d7e5.
Kirill Bulatov
created
298c221
added opt-in default settings for vector store
KCaverly
created
8161438
Fix language servers improper restarts (#2702)
Click to expand commit body
Fixes
https://linear.app/zed-industries/issue/Z-2595/language-servers-are-unnecessarily-restarted-when-unrelated-settings
Language servers mixed `initialization_options` from hardcodes and user
settings, fix that to ensure we restart servers on their settings
changes only.
Release Notes:
- N/A