Commit Graph

1386 Commits

Author SHA1 Message Date
Piotr Osiewicz
bfbe4ae4b4
Piotr/z 651 vue support (#3123)
Release Notes:

- Added Vue language support.
2023-10-13 18:58:59 +02:00
Kirill Bulatov
525ff6bf74 Remove zed -> ... -> semantic_index -> zed Cargo dependency cycle 2023-10-13 10:27:08 +03:00
Max Brunsfeld
3241128840 Make notification db representation more flexible 2023-10-12 17:42:32 -07:00
Max Brunsfeld
fed3ffb681 Set up notification store for integration tests 2023-10-12 17:42:30 -07:00
Max Brunsfeld
d1756b621f Start work on notification panel 2023-10-12 17:41:09 -07:00
Max Brunsfeld
cf6ce0dbad Start work on storing notifications in the database 2023-10-12 17:41:07 -07:00
Marshall Bowers
ef18aaa66f Merge branch 'main' into gpui2 2023-10-12 17:43:05 -04:00
Marshall Bowers
45f3a98359
Remove old ui and storybook crates (#3125)
This PR deletes the old `ui` and `storybook` crates in favor of their
newer variants that we'll be landing to `main` in the near future.

### Motivation

These crates are based off the old version of GPUI 2 (the `gpui2`
crate).

At this point we have since transitioned to the new version of GPUI 2
(the `gpui3` crate, currently still on the `gpui2` branch).

Having both copies around is confusing, so the old ones are going the
way of the dinosaurs.

Release Notes:

- N/A
2023-10-12 17:40:20 -04:00
Marshall Bowers
002458f4c8 Merge branch 'gpui2' into gpui2-ui 2023-10-12 10:27:43 -04:00
Kirill Bulatov
a50977e0fd
Add prettier support (#3122) 2023-10-12 17:13:10 +03:00
Antonio Scandurra
23f11fcd5e Merge branch 'main' into gpui2 2023-10-12 10:55:17 +02:00
Joseph T. Lyons
d6fa06b3be collab 0.24.0 2023-10-11 13:51:01 -04:00
Joseph T. Lyons
bdf1731db3 v0.109.x dev 2023-10-11 12:40:57 -04:00
Kirill Bulatov
faf1d38a6d Draft local and remote prettier separation 2023-10-11 12:56:29 +03:00
Kirill Bulatov
8a807102a6 Properly support prettier plugins 2023-10-11 12:56:29 +03:00
Kirill Bulatov
6ec3927dd3 Allow to configure default prettier 2023-10-11 12:56:29 +03:00
Kirill Bulatov
2a68f01402 Draft prettier_server formatting 2023-10-11 12:56:29 +03:00
Kirill Bulatov
4f956d71e2 Slightly better prettier settings and discovery 2023-10-11 12:56:29 +03:00
Kirill Bulatov
ce6b31d938 Make NodeRuntime non-static for prettier runner 2023-10-11 12:56:29 +03:00
Kirill Bulatov
a8387b8b19 Use proper NodeRuntime in the formatter interface 2023-10-11 12:56:28 +03:00
Kirill Bulatov
a420d9cdc7 Add prettier search 2023-10-11 12:56:28 +03:00
Kirill Bulatov
a8dfa01362 Prepare prettier file lookup code infra 2023-10-11 12:56:28 +03:00
Kirill Bulatov
553abd01be Draft a project part of the prettier 2023-10-11 12:56:28 +03:00
Julia
eced842dfc Get started with a prettier server package
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-10-11 12:56:28 +03:00
Marshall Bowers
30088afa89 Colocate component stories with their components 2023-10-10 15:52:58 -04:00
Max Brunsfeld
044701e907
Add a crate-dep-graph script, remove a few unnecessary dependencies (#3103)
This was motivated by me trying to decide which crate I should put a
`NotificationStore` in.

Run `script/crate-dep-graph` to generate an SVG showing the dependency
graph of our `crates` folder, and open it in a web browser.

After running this command, I noticed a couple of dependencies that
didn't make sense and were easy to remove.

Current dependency graph:

![Screen Shot 2023-10-06 at 1 15 42
PM](https://github.com/zed-industries/zed/assets/326587/b5008235-498a-4562-a826-cc923898c052)
2023-10-09 09:20:06 -07:00
Kirill Bulatov
38d53a6fe2 Bump curl-sys to fix Sonoma issues with it
See https://github.com/alexcrichton/curl-rust/issues/524
2023-10-09 17:09:58 +03:00
Joseph T. Lyons
4b2c24dd8c Add enable vim mode checkbox to welcome screen 2023-10-08 20:07:59 -04:00
Marshall Bowers
8f6649e29e Merge branch 'gpui2' into marshall/gpui2-playground 2023-10-07 12:16:48 -04:00
Marshall Bowers
73360d37f7 Merge branch 'main' into gpui2 2023-10-07 12:15:23 -04:00
Marshall Bowers
9e79ad5a62 Add ChatPanel component 2023-10-07 11:50:41 -04:00
Marshall Bowers
2f6d67cad6 Update Cargo.lock 2023-10-07 10:56:21 -04:00
Marshall Bowers
f6a4151f60 Merge branch 'main' into gpui2 2023-10-07 10:50:05 -04:00
Max Brunsfeld
f8ca86c6a7 Remove workspace -> channel dependency 2023-10-06 14:19:25 -07:00
Max Brunsfeld
3412bb75be Remove call -> channel dependency 2023-10-06 13:39:10 -07:00
Max Brunsfeld
17925ed563 Remove unnecessary dependencies on client and rpc 2023-10-06 13:14:53 -07:00
Max Brunsfeld
9f32a6e209 collab 0.23.3 2023-10-06 11:25:46 -07:00
Julia
77ba25328c Most of getting completion documentation resolved & cached MD parsing 2023-10-06 13:26:38 -04:00
KCaverly
ecfece3ac4 catchup with main 2023-10-06 16:30:31 +02:00
Max Brunsfeld
b3c9473bc8 collab 0.23.2 2023-10-05 16:06:28 -07:00
Mikayla
c4870e1b6b
re-unify markdown parsing between hover_popover and chat 2023-10-05 14:22:41 -07:00
Mikayla
d298afba01
Create markdown text element and add to channel chat 2023-10-04 17:47:30 -07:00
Max Brunsfeld
df2fa87e6b collab 0.23.1 2023-10-04 15:12:17 -07:00
Joseph T. Lyons
6cb674a0aa collab 0.23.0 2023-10-04 15:01:38 -04:00
Joseph T. Lyons
6db47478cf v0.108.x dev 2023-10-04 15:00:53 -04:00
Max Brunsfeld
95342c8c33 Merge branch 'main' into channel-changes 2023-10-03 17:52:28 -07:00
Max Brunsfeld
61e0289014 Acknowledge channel notes and chat changes when views are active
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-10-03 17:40:10 -07:00
Mikayla
6007c8705c
Upgrade SeaORM to latest version, also upgrade sqlite bindings, rustqlite, and remove SeaQuery
co-authored-by: Max <max@zed.dev>
2023-10-03 12:16:53 -07:00
Antonio Scandurra
bfa211fb02 Checkpoint 2023-10-03 18:04:45 +02:00
KCaverly
166ca2a227 catching up with main 2023-10-03 12:05:00 +03:00
KCaverly
bfe76467b0 add retrieve context button to inline assistant 2023-10-03 11:19:54 +03:00
Joseph T. Lyons
7d32a717af
Add memory and cpu events (#3080)
Release Notes:

- N/A
2023-10-02 19:42:49 -04:00
Joseph T. Lyons
892350fa2d Add memory and cpu events
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-10-02 19:35:31 -04:00
Marshall Bowers
9e1f7c4c18
Mainline GPUI2 UI work (#3079)
This PR mainlines the current state of new GPUI2-based UI from the
`gpui2-ui` branch.

Release Notes:

- N/A

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Nate <nate@zed.dev>
2023-10-02 18:20:47 -04:00
KCaverly
f20f096a30 searching the semantic index, and passing returned snippets to prompt generation 2023-10-02 19:15:59 +03:00
Marshall Bowers
3b38641f98 Fix stack overflow by removing Deref and DerefMut impls 2023-09-29 21:21:08 -04:00
Antonio Scandurra
4dd9c9e2b9
Introduce the ability to include or exclude warnings from project diagnostics (#3056)
![CleanShot 2023-09-27 at 18 09
37](https://github.com/zed-industries/zed/assets/482957/317d31e4-81f8-44d8-b94f-8ca7150d3fd2)

Release Notes:

- Added the ability to exclude warnings from project diagnostics. By
default, they will be on but they can be disabled temporarily by
clicking on the warnings icon. The default behavior can be changed by
changing the new `diagnostics.include_warnings` setting.
2023-09-29 13:13:04 +01:00
Marshall Bowers
f26ca0866c
Mainline GPUI2 UI work (#3062)
This PR mainlines the current state of new GPUI2-based UI from the
`gpui2-ui` branch.

Release Notes:

- N/A

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: Nate <nate@zed.dev>
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-09-28 19:36:21 -04:00
Kirill Bulatov
57a95d1799 Preserve matching history items and their order 2023-09-28 06:55:49 -07:00
Nathan Sobo
9fefb1d898 Checkpoint 2023-09-27 21:14:09 -06:00
Antonio Scandurra
78908bc5cb Introduce a new include_warnings setting under diagnostics 2023-09-27 18:08:08 -06:00
Nathan Sobo
e9a84a21e4 Checkpoint 2023-09-27 15:35:51 -06:00
Joseph T. Lyons
ece4875973 v0.107.x dev 2023-09-27 12:26:48 -04:00
KCaverly
abefa2738b removed blas and increase batch size for vector search 2023-09-27 09:43:23 -04:00
KCaverly
e75f56a0f2 move to system blas 2023-09-26 12:39:22 -04:00
KCaverly
330a71d28b fixed bug limiting number of results returned 2023-09-26 10:29:55 -04:00
Conrad Irwin
d17d38fe70
vim: Command (#2951)
Release Notes:

- vim: Add v1 of command mode
([#279](https://github.com/zed-industries/community/issues/279)). The
goal was to cover 90% of what most people actually do, but it is very
incomplete. Known omissions are that ranges cannot be specified (except
that `:%s//` must always specify the % range), commands cannot take
arguments (you can `:w` but not `:w [file]`), and there is no history.
Please file feature requests on
https://github.com/zed-industries/community as you notice things that
could be better.
- `:` triggers zed's command palette. If you type a known vim command it
will run it, otherwise you get zed's normal fuzzy search. For this
release supported commands are limited to:
- - `:w[rite][!]`, `:wq[!]`, `:q[uit][!]`, `:wa[ll][!]`, `:wqa[ll][!]`,
`:qa[ll][!]`, `:[e]x[it][!]`, `:up[date]` to save/close tab(s) and
pane(s).
- - `:cq` to quit completely.
- - `:vs[plit]`, `:sp[lit]` to split vertically/horizontally
- - `:new`, `:vne[w]` to create a new file in a new pane above or to the
left
- - `:tabedit`, `:tabnew` to create a new file in a new tab.
- - `:tabn[ext]`, `:tabp[rev]` to go to previous/next tabs
- - `:tabc[lose]` to close tabs
- - `:cn[ext]`, `:cp[rev]`, `:ln[ext]`, `:lp[rev]` to go to the
next/prev diagnostics.
- - `:cc`, `:ll` to open the errors page
- - `:<number>` to jump to a line number.
- - `:$` to jump to end of file
- - `:%s/foo/bar/` (note that /g is always implied, the range must
always be %, and zed uses different regex syntax to vim)
- - `:/foo` and `:?foo` to jump to next/prev line matching foo
- - `:j[oin]`, to join the current line (no range is yet supported)
- - `:d[elete][l][p]`, to delete the current line (no range is yet
supported)
- - `:s[ort] [i]` to sort the current selection (case-insensitively)
- vim: Add `ctrl-w o` (closes everything except the current item) and
`ctrl-w n` (creates a new file in the pane above).
([#1884](https://github.com/zed-industries/community/issues/1884))
- all: Add a "Discard" option to prompt when saving a file with
conflicts (previously this only appeared on close, not on save).

Internal changes:
- The Picker will now wait for pending queries before confirming (to
handle people typing `: w enter` rapidly.
- workspace::save_item and Pane::save_item are now merged together, and
the behavior controlled by `workspace::SaveIntent`.
- Many actions related to closing/saving items now take an optional
`SaveIntent`.
-
2023-09-25 14:07:22 -05:00
Mikayla Maki
591ec02cea
Add support for the experimental Next LS for Elixir (#3024)
This is a PR I built for a friend of a friend at StrangeLoop, who is
making a much better LSP for elixir that elixir folks want to experiment
with. This PR also improves the our debug log viewer to handle LSP
restarts.

TODO:
- [ ] Make sure NextLS binary loading works.

Release Notes:

- Added support for the experimental Next LS for Elxir, to enable it add
the following field to your settings to enable:

```json
"elixir": {
    "next": "on"
}
```
2023-09-25 12:52:56 -05:00
KCaverly
86ec0b1d9f implement new search strategy 2023-09-25 13:44:19 -04:00
Conrad Irwin
769c330b3d Merge branch 'vim-command' 2023-09-25 11:41:13 -06:00
Mikayla
052cb459a6
Improve lsp log viewer's behavior in the presence of LSP restarts
Improve settings interface to local LSP
2023-09-24 04:59:55 -07:00
Antonio Scandurra
3fbe93f029 Checkpoint
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-09-23 11:06:10 -06:00
Antonio Scandurra
df388d9f33 Checkpoint 2023-09-23 09:10:33 -06:00
Marshall Bowers
ad62a966a6
Display available stories in storybook CLI (#3021)
This PR updates the storybook CLI to support displaying all of the
available stories.

The `--help` flag will now show a list of all the available stories:

<img width="1435" alt="Screenshot 2023-09-22 at 6 11 00 PM"
src="https://github.com/zed-industries/zed/assets/1486634/284e1a24-46ec-462e-9709-0f9b6e94931f">

Inputting an invalid story name will also show the list of available
stories:

<img width="1435" alt="Screenshot 2023-09-22 at 6 10 43 PM"
src="https://github.com/zed-industries/zed/assets/1486634/1ce3ae3f-ab03-4976-a06a-5a2b5f61eae3">

Release Notes:

- N/A
2023-09-22 18:16:16 -04:00
Marshall Bowers
8b6e982495
Remove manual mapping in FromStr implementation for StorySelector (#3018)
This PR removes the need for writing manual mappings in the `FromStr`
implementation for the `StorySelector` enum used in the storybook CLI.

We are now using the
[`EnumString`](https://docs.rs/strum/0.25.0/strum/derive.EnumString.html)
trait from `strum` to automatically derive snake_cased names for the
enums.

This will cut down on some of the manual work needed to wire up more
stories to the storybook.

Release Notes:

- N/A
2023-09-22 14:06:09 -04:00
KCaverly
dc49dec4f0 catchup with main 2023-09-22 09:43:39 -04:00
KCaverly
68c37ca2a4 move embedding provider to ai crate 2023-09-22 09:33:59 -04:00
KCaverly
48e151495f introduce ai crate with completion providers 2023-09-21 22:44:56 -04:00
Marshall Bowers
66358f2900
Update storybook to support stories for individual components (#3010)
This PR updates the `storybook` with support for adding stories for
individual components.

### Motivation

Right now we just have one story in the storybook that renders an entire
`WorkspaceElement`.

While iterating on the various UI components, it will be helpful to be
able to create stories of those components just by themselves.

This is especially true for components that have a number of different
states, as we can render the components in all of the various states in
a single layout.

### Explanation

We achieve this by adding a simple CLI to the storybook.

The `storybook` binary now accepts an optional `[STORY]` parameter that
can be used to indicate which story should be loaded. If this parameter
is not provided, it will load the workspace story as it currently does.

Passing a story name will load the corresponding story, if it exists.

For example:

```
cargo run -- elements/avatar
```

<img width="723" alt="Screenshot 2023-09-21 at 10 29 52 PM"
src="https://github.com/zed-industries/zed/assets/1486634/5df489ed-8607-4024-9c19-c5f4541f97c9">

```
cargo run -- components/facepile
```

<img width="785" alt="Screenshot 2023-09-21 at 10 30 07 PM"
src="https://github.com/zed-industries/zed/assets/1486634/e04a4577-7403-405d-b23c-e765b7a06229">



Release Notes:

- N/A
2023-09-21 22:41:53 -04:00
KCaverly
5f6334696a rename ai crate to assistant crate 2023-09-21 21:54:59 -04:00
Marshall Bowers
baa07e935e
Extract UI elements from storybook into new ui crate (#3008)
This PR extracts the various UI elements from the `storybook` crate into
a new `ui` library crate.

Release Notes:

- N/A
2023-09-21 19:25:35 -04:00
Nathan Sobo
dfeb702544 WIP - Next: implement Element derive macro 2023-09-20 22:26:46 -06:00
Conrad Irwin
2d9db0fed1 Flesh out v1.0 of vim : 2023-09-20 20:44:41 -06:00
Max Brunsfeld
d42093e069 collab 0.22.1 2023-09-20 17:39:21 -07:00
Nathan Sobo
44608517c1 WIP 2023-09-20 14:32:55 -06:00
Joseph T. Lyons
e7d73b833b collab 0.22.0 2023-09-20 13:59:36 -04:00
Joseph T. Lyons
a86dc942d6 v0.106.x dev 2023-09-20 13:02:13 -04:00
Nathan Sobo
83dae46ec6 Checkpoint 2023-09-20 10:17:29 -06:00
Mikayla
0cceb3fdf1
Get nextLS running 2023-09-20 06:55:24 -07:00
Nathan Sobo
37d0f06e07 Checkpoint 2023-09-19 20:55:13 -06:00
Mikayla Maki
e37373a636
Add UI/UX for moving channels (#2976)
TODO:

- [x] Add drag and drop
- [x] Polish up in-flight decisions.
- [x] Fix chat panel panic
- [x] Add nice hover effect highlighting the matching ones
- [x] Fix and test keyboard

Release Notes:

- N/A
2023-09-19 17:56:22 -07:00
KCaverly
25cb79e475 remove git2 dependency for repository cloning in semantic_index eval 2023-09-19 18:55:15 -04:00
KCaverly
b57b5c0b33 updated git2 to use ssl 2023-09-19 16:36:51 -04:00
KCaverly
d85acceeec move git2 to workspace dependency globally 2023-09-19 16:13:47 -04:00
Nathan Sobo
e762f7f3c0 Checkpoint 2023-09-19 13:09:00 -06:00
Mikayla
9bff3b6916
Add basic drag and drop support 2023-09-19 11:20:01 -07:00
KCaverly
183758a7c5 fix Cargo.lock for merge 2023-09-19 11:44:51 -04:00
Mikayla
dadad397ef
Finish optimizing channel representations and operations 2023-09-18 20:24:37 -07:00
Nathan Sobo
df9a05ba92 Checkpoint 2023-09-18 17:40:47 -06:00
Piotr Osiewicz
616d328f3c
chore: Use aho-corasick 1.1 in direct dependencies (#2983)
Nothing too fancy, we've depended indirectly on 1.0/1.1 already, so this
is essentially bookkeeping.

Release Notes:
- N/A
2023-09-18 17:01:08 +02:00
Mikayla
52057c5619
Simplify path representation in collab panel
Optimize set representation in collab
2023-09-15 13:35:46 -07:00
Joseph T. Lyons
5df9a57a8b
Add assistant events (#2978)
Add assistant events

Release Notes:

- N/A
2023-09-15 15:25:35 -04:00
Max Brunsfeld
6c3fd2a687 Merge branch 'main' into chat-again 2023-09-15 11:06:39 -07:00
KCaverly
3a661c5977 catchup with main 2023-09-15 09:31:33 -04:00
Antonio Scandurra
ae85a520f2 Refactor semantic searching of modified buffers 2023-09-15 12:12:20 +02:00
Nathan Sobo
0a2a5be71c Checkpoint 2023-09-14 21:42:56 -06:00
Max Brunsfeld
9d8c6a7ed1 Merge branch 'main' into chat-again 2023-09-14 14:50:45 -07:00
Nathan Sobo
b9e1ca1385 Checkpoint 2023-09-14 14:42:04 -06:00
KCaverly
eff44f9aa4 semantic index eval, indexing appropriately 2023-09-13 20:02:15 -04:00
Joseph T. Lyons
974bc07631 collab 0.21.0 2023-09-13 13:34:08 -04:00
Joseph T. Lyons
a6cb5f99f3 v0.105.x dev 2023-09-13 12:22:33 -04:00
Antonio Scandurra
70c9b8f8fd Merge remote-tracking branch 'origin/main' into polish-codegen 2023-09-13 11:41:32 +02:00
KCaverly
66c967da88 start work on eval script for semantic_index 2023-09-12 16:25:31 -04:00
Nathan Sobo
dc2733998e WIP 2023-09-12 12:43:08 -06:00
Nathan Sobo
5dad97779a WIP 2023-09-12 07:34:42 -06:00
Nathan Sobo
fe6f0a253b Merge remote-tracking branch 'origin/main' into chat-again 2023-09-11 12:08:01 -06:00
Nathan Sobo
15ea4af5e7 Merge branch 'main' into storybook 2023-09-11 09:13:46 -06:00
Antonio Scandurra
6d9333dc3b Add a failing test for codegen autoindent 2023-09-11 14:35:15 +02:00
Mikayla
2be34ef254
Add syntax highlighting for nu scripts 2023-09-09 15:39:39 -07:00
Mikayla
ef03e206d6
WIP: Add nushell support 2023-09-09 14:01:53 -07:00
Nathan Sobo
362b1a44be Merge branch 'main' into storybook 2023-09-08 14:18:44 -06:00
Conrad Irwin
5d782b6cf0
vim . to replay (#2936)
Release Notes:

- vim: Add `.` to replay
([#946](https://github.com/zed-industries/community/issues/946))
- vim: Fix `J` in visual mode, and with counts.
2023-09-08 11:52:35 -06:00
Max Brunsfeld
3422eb65e8 Restore channel chat model and panel view 2023-09-07 11:38:27 -07:00
Nathan Sobo
37ef28a3bf Merge branch 'main' into storybook 2023-09-07 07:56:57 -06:00
Antonio Scandurra
93b889a93b Merge remote-tracking branch 'origin/main' into semantic-search-watch-worktrees 2023-09-07 15:07:46 +02:00
Nathan Sobo
99ad60460a Add support for fetching/rendering images 2023-09-06 17:13:43 -06:00
Max Brunsfeld
d03a89ca19
Rejoin channel notes after brief connection loss (#2930)
* [x] Re-send operations that weren't sent while disconnected
* [x] Apply other clients' operations that were missed while
disconnected
* [x] Update collaborators that joined / left while disconnected
* [x] Inform current collaborators that your peer id has changed
* [x] Refresh channel buffer collaborators on server restart
* [x] randomized test
2023-09-06 15:11:21 -07:00
Nathan Sobo
6d4dd0e7a4 Checkpoint 2023-09-06 15:22:35 -06:00
Max Brunsfeld
66c3879306 Extract randomized test infrastructure for use in other tests 2023-09-06 14:08:43 -07:00
Conrad Irwin
20f98e4d17 vim . to replay
Co-Authored-By: maxbrunsfeld@gmail.com
2023-09-06 13:49:55 -06:00
Joseph T. Lyons
f4237ace40 collab 0.20.0 2023-09-06 13:33:39 -04:00
Joseph T. Lyons
15609b4803 v0.104.x dev 2023-09-06 12:53:50 -04:00
Julia
8d672f5d4c Remove NodeRuntime static & add fake implementation for tests 2023-09-06 11:18:55 -04:00
Kyle Caverly
49af2874bb
Eager background indexing (#2928)
This PR ships a series of optimizations for the semantic search engine.
Mostly focused on removing invalid states, optimizing requests to
OpenAI, and reducing token usage.

Release Notes (Preview-Only):

- Added eager incremental indexing in the background on a debounce.
- Added a local embeddings cache for reducing redundant calls to OpenAI.
- Moved to an Embeddings Queue model which ensures optimal batch sizes
at the token level, and atomic file & document writes.
- Adjusted OpenAI Embedding API requests to use provided backoff delays
during Rate Limiting.
- Removed flush races between parsing files step and embedding queue
steps.
- Moved truncation to parsing step reducing the probability that OpenAI
encounters bad data.
2023-09-05 13:15:54 -04:00
Antonio Scandurra
d4cff68475 🎨 2023-09-05 15:52:36 +02:00
Nathan Sobo
2fa9c037c8 Merge remote-tracking branch 'origin' into storybook 2023-09-01 10:08:48 -06:00
Kirill Bulatov
9e12df43d0 Post-rebase fixes 2023-08-31 11:53:46 +03:00
Julia
ff3865a4ad Merge branch 'main' into multi-server-completions-tailwind 2023-08-30 22:58:37 -04:00
Nathan Sobo
3b5ee59273 Split playground into gpui2 and storybook 2023-08-30 16:12:14 -06:00
Nathan Sobo
ee11be98e5 Add gpui2 crate 2023-08-30 15:00:11 -06:00
Nathan Sobo
746f77bf7c Checkpoint 2023-08-30 14:40:57 -06:00
Max Brunsfeld
46429426ef Avoid accidental gpui transitive dependency in collab
* Make Fs depend on Text, not vise versa

Co-authored-by: Joseph <joseph@zed.dev>
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-30 13:16:01 -07:00
Joseph T. Lyons
feb7a8a0f4 collab 0.19.0 2023-08-30 14:37:55 -04:00
Joseph T. Lyons
7204c245ea v0.103.x dev 2023-08-30 13:41:09 -04:00
Nathan Sobo
1d491fcd78 Get playground rendering with backward compatible theming 2023-08-30 11:09:34 -06:00
Nathan Sobo
81957c49d5 Merge remote-tracking branch 'origin' into divs 2023-08-29 21:14:14 -06:00
KCaverly
4f8b95cf0d add proper handling for open ai rate limit delays 2023-08-29 15:44:51 -04:00
Nathan Sobo
84b9c22170 Merge branch 'main' into ai-refactoring 2023-08-29 10:17:01 -06:00
Piotr Osiewicz
9aad602af7
chore: Bump memchr to 2.6.0 (#2902)
Fresh off the press, memchr 2.6.0 adds vector search routines for
aarch64. That directly improves our search performance for both text and
regex searches. Per BurntSushi's claims, the simple string searches in
ripgrep got ~2 times faster (more details available in
https://github.com/BurntSushi/memchr/pull/129).

Release Notes:

- N/A
2023-08-28 18:20:10 +02:00
Antonio Scandurra
44f554f489 Merge remote-tracking branch 'origin/main' into ai-refactoring 2023-08-28 12:16:24 +02:00
Antonio Scandurra
1fb7ce0f4a Show icon to toggle inline assist 2023-08-28 12:13:44 +02:00
Nathan Sobo
147aa0f695 WIP 2023-08-25 21:41:21 -06:00
Mikayla
74565ed0b8
Add feature flags handling to the client, rewrite staff mode to a trait extension style 2023-08-25 17:00:53 -07:00
Antonio Scandurra
27c90f12f6 Merge remote-tracking branch 'origin/main' into ai-refactoring 2023-08-25 13:37:32 +02:00
Kirill Bulatov
8ed280a029 Rebase fixes 2023-08-25 14:30:07 +03:00
Antonio Scandurra
c1bd035875 Rework inline assistant 2023-08-25 11:39:27 +02:00
Kyle Caverly
bc7e9088fe
Eager Semantic Indexing Queue (#2886)
Optimization to the Semantic Indexing Engine.

We've transitioned from a framework in which the entire project tree is
walked at each index command, to an eager queuing method, in which an
initial queue of outstanding indexing work is initialized upon workspace
creation, and then subscriptions are leveraged for file change events to
continually keep an updated view on outstanding work.

This optimization contributes towards quicker user feedback, when
initializing or using Semantic Search functionality. It also opens the
doors towards better transparency across the system on outstanding
indexing work.

Release Notes:

- Refactored index operation queue to an eager queuing framework.
- Moved semantic search initialization to workspace creation.
- Adjusted rate limiting strategy on api delays to reduce time spent
waiting for rate limits.
2023-08-25 11:03:05 +02:00
Antonio Scandurra
9674b03855 Make scoring more precise by using floats when diffing AI refactors 2023-08-24 12:45:44 +02:00
Max Brunsfeld
7e83138805
Start work on showing consistent replica ids for channel buffers
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-23 18:37:01 -07:00
Max Brunsfeld
1d08f44e70
Snapshot channel notes buffers when everyone leaves
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-23 18:37:01 -07:00
Mikayla
4eff8ad186
Add channel notes view
co-authored-by: Max <max@zed.dev>
2023-08-23 18:37:00 -07:00
Mikayla
a7a4e2e369
Add buffer integration test
Rearrange channel crate structure
Get channel buffer from database

co-authored-by: Max <max@zed.dev>
2023-08-23 18:34:43 -07:00
Max Brunsfeld
ff5035ea37
Start work on storing channel buffers 2023-08-23 18:34:43 -07:00
Mikayla
707ca34f19
Merge branch 'main' into disclosable-component 2023-08-23 16:30:27 -07:00
Piotr Osiewicz
1320fadc30
Bump rust embed (#2883)
This is a follow-up to a recent patch I've submitted to this crate to
improve compile time and runtime (in older versions file lookup was
essentially O(n) with respect to path count, now it's O(log n))

Release Notes:

- N/A
2023-08-24 00:16:35 +02:00
KCaverly
b72c4c576b catchup with main 2023-08-23 22:31:39 +02:00
Joseph T. Lyons
af21546a43 collab 0.18.0 2023-08-23 14:19:24 -04:00
Joseph T. Lyons
72f0efb7b7 v0.102.x dev 2023-08-23 12:49:13 -04:00
Antonio Scandurra
a9871a7a70 Add randomized tests for incremental diff 2023-08-23 09:09:01 +02:00
Nathan Sobo
d375f7992d Merge branch 'main' into divs 2023-08-22 16:35:56 -06:00
Antonio Scandurra
5453553cfa WIP 2023-08-22 08:16:22 +02:00
KCaverly
3d89cd10a4 added sha1 encoding for each document 2023-08-21 16:35:57 +02:00
Antonio Scandurra
42f02eb4e7 Incrementally diff input coming from GPT 2023-08-21 15:13:26 +02:00
Piotr Osiewicz
267c0b9a3f
chore: Update Cargo.lock following rodio PR (#2870)
That's merely a follow-up to a previous PR.
Release Notes:
- N/A
2023-08-21 11:33:06 +02:00
Mikayla
bfd3e53dcd
Implement component test page 2023-08-19 16:29:24 -07:00
Mikayla
e946b0a2ec
Finish building out adapters and names
Document core traits
Add start for a component storybook
2023-08-19 14:40:05 -07:00
Max Brunsfeld
09fcacdfd1 Upgrade Tree-sitter for error recovery bug fix 2023-08-18 11:31:40 -07:00
Julia
c842e87079 Use updated lsp-types fork branch 2023-08-18 11:57:19 -04:00
Nathan Sobo
9b74dc196e Introduce Refinement trait and derive macro 2023-08-18 01:03:46 -06:00
Julia
a979e32127 Utilize LSP completion itemDefaults a bit
Tailwind likes to throw a lot of completion data at us, this gets it to
send less. Previously it would respond to a completion with 2.5 MB JSON
blob, now it is more like 0.8 MB.

Relies on a local copy of lsp-types with the `itemDefaults` field added.
I don't have write perms to push to our fork of the crate atm, sorry :)
2023-08-17 21:57:39 -04:00
Max Brunsfeld
6eba0ef630 Return to master branch of alacritty 2023-08-17 15:31:27 -07:00
Max Brunsfeld
fa0ddfa15d
Use our fork of alacritty to avoid winit dependency (#2853)
Bumps `alacritty_terminal` for
https://github.com/alacritty/alacritty/pull/7149
2023-08-16 14:54:55 -07:00
Max Brunsfeld
a5a212e1da Use our fork of alacritty to avoid winit dependency 2023-08-16 14:31:38 -07:00
Kirill Bulatov
8926c23bdb Extract quick_action_bar into its own crate 2023-08-16 23:38:11 +03:00
Nathan Sobo
f1aafab61d Get text rendering
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-08-16 12:50:35 -06:00
Joseph T. Lyons
07675e3c55 v0.101.x dev 2023-08-16 14:22:54 -04:00
Max Brunsfeld
442ec606d0 collab 0.17.0 2023-08-16 11:05:08 -07:00
Max Brunsfeld
4ea8b8292c
Introduce channels and move collab popover contents to a collaboration panel (#2828)
### Summary

This PR introduces channels: a new way of starting collaboration
sessions. You can create channels and invite others to join them. You
can then hold a call in a channel, where any member of the channel is
free to join the call without needing to be invited.

Channels are displayed in a new panel called the collaboration panel,
which now also contains the contacts list, and the current call. The
collaboration popover has been removed from the titlebar.

![Screen Shot 2023-08-15 at 9 25 37
AM](https://github.com/zed-industries/zed/assets/326587/0f989dea-7fb7-4d50-9acd-25c8f1c30cd1)


For now, the channels functionality will only be revealed to staff, so
the public-facing change is just the move from the popover to the panel.

### To-do

* User-facing UI
  * [x] signed-out state for collab panel
  * [x] new icon for collab panel
  * [x] for now, channels section only appears for zed staff
* [x] current call section styling
(https://zed-industries.slack.com/archives/C05CJUNF2BU/p1691189389988239?thread_ts=1691189120.403009&cid=C05CJUNF2BU)
* [x] Channel members
* Channels
  * [x] style channel name editor
* [x] decide on a special "empty state" for the panel, when user has no
contacts
* [x] ensure channels are sorted in a consistent way (expose channel id
paths to client)
  * [x] Figure out layered panels UX
  * [x] Change add contacts to be the same kind of tabbed modal
* [x] race condition between channel updates and user fetches
(`ChannelStore::handle_update_contacts`)
* [x] race condition between joining channels and channel update
messages `collab::rpc::channel_updated`)
* [x] don't display mic as muted when microphone share is pending upon
first joining call

Release Notes:

- Moved the collaboration dropdown into its own panel.
- Added settings for disabling the AI assistant panel button.
- Switch to lazily initializing audio output sources
(https://github.com/zed-industries/community/issues/1840,
https://github.com/zed-industries/community/issues/1919)
2023-08-16 11:03:53 -07:00
Kirill Bulatov
1c4be24fb7 Move gpui derives tests into gpui crate to avoid dependency cycles
`cargo run` on Zed project leads to rust-analyzer evantually emitting

`[ERROR project_model::workspace] cyclic deps:
gpui_macros(Idx::<CrateData>(269)) -> gpui(Idx::<CrateData>(264)),
alternative path: gpui(Idx::<CrateData>(264)) ->
gpui_macros(Idx::<CrateData>(269))`

error after loading the project.

The PR fixes this by moving away the test to the "root" project.
2023-08-16 10:19:20 +03:00
Nathan Sobo
740b105330 Merge branch 'main' into taffy
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-08-14 13:50:21 -06:00
Nathan Sobo
473ac5a842 WIP 2023-08-13 02:27:36 -06:00
Nathan Sobo
1ef486b227 WIP 2023-08-13 01:40:05 -06:00
Mikayla
a90c0e0326
Merge branch 'main' into collab-panel 2023-08-12 12:44:22 -07:00
Nathan Sobo
0d31d6dac5 WIP 2023-08-12 10:00:08 -06:00
Nathan Sobo
5e36040533 Put a Taffy layout engine on window 2023-08-12 00:58:11 -06:00
Mikayla
7970406694
Add a compile test for the element derive 2023-08-11 18:00:12 -07:00
Nathan Sobo
983641da2b WIP 2023-08-11 07:39:30 -06:00
Nathan Sobo
d6eaa3c6b8 Ditch the hot reloading approach 2023-08-11 00:26:58 -06:00
Nathan Sobo
3b1e5e966a What if we base themes on Rose Pine 2023-08-09 20:54:30 -06:00
Mikayla
99daa73325
Merge branch 'main' into collab-panel 2023-08-09 10:37:22 -07:00