Commit log

585192b zed 0.95.2

Max Brunsfeld created

ea709a7 Make macOS application menu aware of which key bindings are disabled (#2735)

Click to expand commit body
Follow-up of https://github.com/zed-industries/zed/pull/2678
Deals with https://github.com/zed-industries/community/issues/772

Refreshes macOs menu panel on keymap file change and properly ignore
disabled actions.

Release Notes:

- Fixes a bug when disabled actions from macOs menu were still working

Max Brunsfeld created

4598770 Optimize two slow code paths (#2728)

Click to expand commit body
Linear:
https://linear.app/zed-industries/issue/Z-2578/zed-launches-very-slow-for-user

I was searching for the cause of a slow startup time reported in the
above issue, and I don't think I found it, but I did find two very
noticeable slow code paths while profiling, and fixed them.

###  Notes

1. When starting the JSON language server, we provide it with a JSON
schema for our settings. For the `theme` setting, the JSON schema needs
to read all of the themes in the registry, to generate a list of valid
theme names. Previously, as part of this, we were deserializing each
theme from JSON, which took a lot of CPU. Now, we don't do that.
2. When an FS event occurs within a git repository, we reload the git
status for all entries in that git repository. Previously, we did that
via a separate `libgit2` call per FS entry (including ignored entries,
so many thousands in the case of the `zed` repo). Now we do one
`libgit2` call, asking for all of the statuses. Git carries an index of
all of the files with statuses, so this is fast.

Release Notes:

- Improved the the performance of starting up a  JSON language server.
- Improved the performance of handling changes to git repositories, such
as changing branches or committing.

Max Brunsfeld created

5957780 zed 0.95.1

Joseph T. Lyons created

c3e03d8 Fix screen sharing panic introduced by call events (#2714)

Click to expand commit body
Release Notes:

- Fixed a bug where Zed would crash when enabling screen share.

Joseph T. Lyons created

30ab23c v0.95.x preview

Joseph T. Lyons created

37568cc Vector store (#2658)

Click to expand commit body
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)

Kyle Caverly created

c141519 merged with main

KCaverly created

dc09a11 Update README.md

Derek Briggs created

2cb7d8a Update README.md

Derek Briggs created

e69240c Piotr/z 2556 add create branch button (#2696)

Click to expand commit body
Release Notes:

- N/A

Piotr Osiewicz created

001e848 Update picker footer button style

Click to expand commit body
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:

![image](https://github.com/zed-industries/zed/assets/24362066/1017e2d9-7107-4e4c-805e-bae46412079a)
Previously a trail off limit was much smaller:

![image](https://github.com/zed-industries/zed/assets/24362066/efb6c7cf-d90d-4fbc-8c28-84872f215ac5)

Release notes:
- N/A

Piotr Osiewicz created

6260d97 Increase trailoff limit for modal branch picker.

Click to expand commit body
Z-2601

Piotr Osiewicz created

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 | ![CleanShot 2023-07-11 at 16 57
37](https://github.com/zed-industries/zed/assets/30666851/30769d09-678e-4d66-96de-df51c6d030cc)
![CleanShot 2023-07-12 at 10 17
20](https://github.com/zed-industries/zed/assets/30666851/801e1f26-1cea-45a7-8a50-b620095e2131)
| ![CleanShot 2023-07-11 at 16 59
46](https://github.com/zed-industries/zed/assets/30666851/fd1324c2-669f-42f8-96b3-4d65b555fb6e)
![CleanShot 2023-07-12 at 10 17
39](https://github.com/zed-industries/zed/assets/30666851/b286488d-b81e-44d5-a67c-dd816c072f86)
|
| After | ![CleanShot 2023-07-11 at 16 59
25](https://github.com/zed-industries/zed/assets/30666851/9942733f-8129-4854-bbfe-9a292b0e2c0e)
![CleanShot 2023-07-12 at 10 18
52](https://github.com/zed-industries/zed/assets/30666851/0b0f5fec-4c44-4c4f-8921-3b8a2cfff38c)
| ![CleanShot 2023-07-11 at 17 02
19](https://github.com/zed-industries/zed/assets/30666851/6ab82b26-0548-4ce7-8fdc-38ae561d26aa)
![CleanShot 2023-07-12 at 10 19
28](https://github.com/zed-industries/zed/assets/30666851/a024f6e8-f0f4-4d81-9f90-38a655a09031)
|

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

![CleanShot 2023-07-11 at 17 02
55](https://github.com/zed-industries/zed/assets/30666851/07fb1dea-5922-4bdc-9a3b-f7c1b105d017)

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

Piotr Osiewicz created

78c8324 chore: Disable http2 feature in isahc.

Click to expand commit body
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

Piotr Osiewicz created

5086e37 chore: Bump ipc-channel to 0.16.1.

Click to expand commit body
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

Max Brunsfeld created

4a4dd39 Fix TSX embedding query

Max Brunsfeld created

d244c0f Get vector store test passing - wait for indexing

Click to expand commit body
Co-authored-by: Kyle <kyle@zed.dev>

Max Brunsfeld and Kyle created

badf94b Update dot product test to use larger vectors

Click to expand commit body
Co-authored-by: Kyle <kyle@zed.dev>

Max Brunsfeld and Kyle created

08e24bb Use cmd-ctrl-t for semantic search key binding

Click to expand commit body
Co-authored-by: Kyle <kyle@zed.dev>

Max Brunsfeld and Kyle created

af7b2f1 added initial keymap for toggle semantic search

Click to expand commit body
Co-authored-by: maxbrunsfeld <max@zed.dev>

KCaverly and maxbrunsfeld created

ef296e4 Avoid user menu toggle button overlapping with tab bar top border

Julia created

2ca4b3f cleaned up warnings and added javascript

KCaverly created

debe6f1 updated embedding queries for tsx and typescript

KCaverly created

02f5230 expanded embeddable context to accomodate for struct context and file paths

KCaverly created

9165320 Fix a bug where the terminal would not be closed by the terminal exiting (#2706)

Click to expand commit body
Release Notes:

- Fixed a bug where terminal tabs in the panel would not close on tty
process exit.

Mikayla Maki created

550aa2d fmt

Mikayla Maki created

be88136 Fix a bug where the terminal panel's items wouldn't be hooked up properly to workspace actions

Mikayla Maki created

5483bd1 Refactor LSP restart logic (#2705)

Click to expand commit body
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

Kirill Bulatov created

4b4d049 Refactor LSP restart logic

Click to expand commit body
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>

Kirill Bulatov and Max Brunsfeld created

dd0dbdc brought up to speed with main

KCaverly created

1649cf8 added versioning to files table

KCaverly created

5012d61 Add call events (#2704)

Click to expand commit body
Release Notes:

- N/A

Joseph T. Lyons created

98a0113 Add call events

Click to expand commit body
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

Kirill Bulatov created

748e7af Add a test

Kirill Bulatov created

f5fec55 updated vector_store to handle for removed files

KCaverly created

91832c8 Fix language servers improper restarts

Click to expand commit body
Language servers mixed `initialization_options` from hardcodes and user
settings, fix that to ensure we restart servers on their settings
changes only.

Kirill Bulatov created

15010e9 fixup! recent_projects: Perform fuzzy search on compacted paths.

Piotr Osiewicz created