Joseph T. Lyons
feb7a8a0f4
collab 0.19.0
2023-08-30 14:37:55 -04:00
Max Brunsfeld
791f6cf9e7
Update some tests to reflect code action debouncing
2023-08-28 17:45:32 -07:00
Mikayla Maki
8ddee0e58d
Server-sent feature flags ( #2894 )
...
This PR adds the wiring to both the server and the client for sending
and receiving individual feature flags, as well as a client side API for
convenient access to these feature flags.
Release Notes:
- N/A
2023-08-25 17:11:33 -07:00
Piotr Osiewicz
2495d6581e
Un serialize project search ( #2857 )
...
This is the first batch of improvements to current project search. There
are few things we can do better still, but I want to get this out in
next Preview.
Most of the slowness at this point seems to stem from updating UI too
often.
Release Notes:
- Improved project search by making it report results sooner.
---------
Co-authored-by: Julia Risley <julia@zed.dev>
2023-08-26 01:31:52 +02:00
Mikayla
6fdf101745
Update database and RPC to provide configured feature flags
2023-08-25 14:34:32 -07:00
Max Brunsfeld
404f76739c
Format let-else statements
2023-08-25 10:11:32 -07:00
Max Brunsfeld
c7c220309d
Avoid creating redundant snapshots of channel notes buffers
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-24 16:55:45 -07:00
Max Brunsfeld
358a20494c
Make channel notes read-only when disconnected
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-24 16:50:13 -07:00
Max Brunsfeld
1ae54ca620
Dedup channel views
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-24 14:29:04 -07:00
Max Brunsfeld
5888e7b214
Dedup channel buffers
2023-08-24 13:40:44 -07:00
Max Brunsfeld
24141c2f16
Ensure collaborators cursor colors are the same in channel buffers as in projects
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-24 11:31:41 -07:00
Max Brunsfeld
3268cce41a
Fix error in update_channel_buffer when there are no operations to store
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-24 11:26:22 -07: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
11ef5e2740
Simplify buffer_operations schema
...
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
5a0315c4d5
Achieve end to end channel buffer synchronization
...
co-authored-by: max <max@zed.dev>
2023-08-23 18:34:43 -07:00
Max Brunsfeld
95ea664725
WIP
2023-08-23 18:34:43 -07:00
Max Brunsfeld
71611ee7a2
Get join_buffer_for_channel compiling
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-23 18:34:43 -07:00
Mikayla
364ed1f840
WIP: pass synchronize channel buffers integration test
2023-08-23 18:34:43 -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
Max Brunsfeld
29e43384f0
Simplify macro for running a test with both databases
2023-08-23 18:34:43 -07:00
Joseph T. Lyons
af21546a43
collab 0.18.0
2023-08-23 14:19:24 -04:00
Max Brunsfeld
b35aaf144b
Break up Database impl into multiple files, organized by topic
2023-08-18 17:03:34 -07:00
Max Brunsfeld
e964137d79
Reorganize source files of collab::db
...
* Move all sea_orm tables into a 'tables' module
* Move TestDb into its own file
* Move id types into their own module
2023-08-18 16:23:33 -07:00
Kirill Bulatov
269dad5a9c
Respect completion resolve server capabilities
...
Only query for additional edits if the server supports it
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-08-18 16:55:47 +03:00
Mikayla Maki
6d3518cb50
Collab panel touch ups ( #2855 )
...
This will also fix the bug that @JosephTLyons observed where accepting a
channel invite would not show sub channels.
Release Notes:
- Offline section is now collapsed by default
- Manage members now shows full list
- Dragging of docks now follows the mouse exactly, and double clicks
reset size. (https://github.com/zed-industries/community/issues/1816 )
2023-08-17 01:09:01 -07:00
Mikayla
75679291a9
Add fix for lost channel update bug
2023-08-17 00:56:21 -07:00
Mikayla
5bc481112e
Add test for lost channel update
2023-08-16 20:05:21 -07:00
Mikayla
3074455386
WIP
2023-08-16 16:56:00 -07:00
Kirill Bulatov
f9131f657e
Use InlayHint instead of Inlay where appropriate
2023-08-16 23:38:11 +03:00
Max Brunsfeld
442ec606d0
collab 0.17.0
2023-08-16 11:05:08 -07:00
Max Brunsfeld
1ffde7bddc
Implement calling contacts into your current channel
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-15 14:56:54 -07:00
Max Brunsfeld
ddf3642d47
Avoid flicker when moving between channels
2023-08-15 13:18:56 -07:00
Mikayla
111e17b220
Merge branch 'main' into collab-panel
2023-08-15 03:25:45 -07:00
Max Brunsfeld
cbf497bc12
Fix race condition when UpdateChannel message is received while fetching participants for previous update
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-14 17:36:35 -07:00
Max Brunsfeld
d7f21a9155
Ensure channels are sorted alphabetically
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-14 16:27:35 -07:00
Kirill Bulatov
5d2750e0d4
Hide inlay cache fields
2023-08-14 11:25:02 +03:00
Max Brunsfeld
b3447ada27
Dial in the channel creating/renaming UI
...
* Ensure channel list is in a consistent state with no flicker while the
channel creation / rename request is outstanding.
* Maintain selection properly when renaming and creating channels.
* Style the channel name editor more consistently with the non-editable
channel names.
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-09 17:11:57 -07:00
Max Brunsfeld
ac1b2b18aa
Send user ids of channels of which they are admins on connecting
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-09 14:40:47 -07:00
Max Brunsfeld
60e25d780a
Send channel permissions to clients when they fetch their channels
2023-08-09 13:56:03 -07:00
Mikayla
a3623ec2b8
Add renames
...
co-authored-by: max <max@zed.dev>
2023-08-09 12:20:48 -07:00
Mikayla
eed49a88bd
Fix bad merge
2023-08-09 11:04:09 -07:00
Mikayla
707e41ce1f
Merge branch 'collab-panel' of github.com:zed-industries/zed into collab-panel
2023-08-09 10:44:50 -07:00
Mikayla
99daa73325
Merge branch 'main' into collab-panel
2023-08-09 10:37:22 -07:00
Max Brunsfeld
778fd6b0a9
Represent channel relationships using paths table
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-09 10:36:27 -07:00
Mikayla
b708824d37
Position and style the channel editor correctly
...
Fix a bug where some channel updates would be lost
Add channel name sanitization before storing in the database
2023-08-08 12:46:13 -07:00
Mikayla
d00f6a490c
Fix a bug where channel invitations would show up in the channels section
...
Block non-members from reading channel information
WIP: Make sure Arc::make_mut() works
2023-08-08 11:47:13 -07:00
Nathan Sobo
49f1f1c6c2
Remove window when closing workspace in test
2023-08-08 09:13:17 -06:00
Nathan Sobo
f0da6b05fd
Remove TestAppContext::add_view
...
Instead, we now call this on window handles.
2023-08-07 22:46:48 -06:00
Nathan Sobo
f2be3181a9
Move window-related methods from TestAppContext to AnyWindowHandle
2023-08-07 20:23:04 -06:00
Nathan Sobo
486f5bc6ca
Get compiling
2023-08-07 19:08:58 -06:00
Max Brunsfeld
c537cf2a57
Merge branch 'main' into collab-panel
2023-08-07 11:50:40 -07:00
Nathan Sobo
adc50469ff
WIP
2023-08-06 12:45:31 -06:00
Max Brunsfeld
2ccd153233
Fix joining descendant channels, style channel invites
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-04 16:21:43 -07:00
Max Brunsfeld
87b2d599c1
Flesh out channel member management
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-04 14:12:08 -07:00
Max Brunsfeld
a2486de045
Don't expose channel admin actions in UI if user isn't admin
2023-08-04 10:24:46 -07:00
Max Brunsfeld
1762d2c6d4
Add test assertion where user is not admin of channel
2023-08-04 09:51:37 -07:00
Max Brunsfeld
7a04ee3b71
Start work on exposing which channels the user has admin rights to
2023-08-03 18:31:00 -07:00
Max Brunsfeld
95b1ab9574
Implement channel member removal, permission check for member retrieval
2023-08-03 18:03:40 -07:00
Nathan Sobo
d3c1966d96
WIP: Return WindowHandle<V: View> from AppContext::add_window ( #2820 )
...
Instead of returning a usize for the window id, I'm instead returning a
`WindowHandle<V: View>` where `V` is the type of the window's root view.
@as-cii helped me with a cool technique using generic associated types
where methods on `WindowHandle` can return either T or Option<T>
depending on the `BorrowWindowContext::Result` associated type.
Some example usage...
```rs
let window = cx.add_window(|cx| MyView::new(cx));
let my_view = window.root(cx); // If cx is TestAppContext, returns MyView. Otherwise returns Option<MyView>, because the window could be closed.
```
This isn't insanely beneficial on its own, but I think it will help
clean up our testing story. I'm planning on making `window` more useful
in tests for laying out elements, etc.
- [x] Rework tests that call `add_window` 😅 to expect only a window in
return.
- [x] Get tests passing
- [x] 🚬 test
2023-08-03 18:45:51 -06:00
Nathan Sobo
485c0a482e
Don't refcount window handles
2023-08-03 17:11:47 -06:00
Max Brunsfeld
a7e883d956
Implement basic channel member management UI
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-03 14:49:01 -07:00
Mikayla Maki
129f2890c5
simplify server implementation
2023-08-03 13:27:00 -07:00
Mikayla Maki
30e1bfc872
Add the ability to jump between channels while in a channel
2023-08-02 17:13:09 -07:00
Max Brunsfeld
0ae1f29be8
wip
2023-08-02 15:52:56 -07:00
Max Brunsfeld
4d55110452
Restore seeding of random GH users in seed-db
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-08-02 15:45:22 -07:00
Max Brunsfeld
fca8cdcb8e
Start work on rendering channel participants in collab panel
...
Co-authored-by: mikayla <mikayla@zed.dev>
2023-08-02 15:09:37 -07:00
Nathan Sobo
884cee6dfd
Get tests compiling returning WindowHandle<V: View> from add_window
2023-08-02 14:05:03 -06:00
Max Brunsfeld
a9de73739a
WIP
2023-08-02 12:15:06 -07:00
Mikayla Maki
61a6892b8c
WIP: Broadcast room updates to channel members
2023-08-02 09:21:30 -07:00
Max Brunsfeld
7d97d1dd8d
Merge branch 'main' into collab-panel
2023-08-02 09:20:53 -07:00
Max Brunsfeld
a127b0d3e6
Fix warnings surfaced in Rust 1.71
2023-08-02 09:19:23 -07:00
Mikayla Maki
7145f47454
Fix a few bugs in how channels are moved around
2023-08-01 18:42:14 -07:00
Mikayla Maki
b389dcc637
Add subchannel creation
...
co-authored-by: max <max@zed.dev>
2023-08-01 16:48:11 -07:00
Mikayla Maki
74437b3988
Add remove channel method
...
Move test client fields into appstate and fix tests
Co-authored-by: max <max@zed.dev>
2023-08-01 16:06:27 -07:00
Mikayla Maki
7434d66fdd
WIP: Add channel creation to panel UI
2023-08-01 13:22:06 -07:00
Max Brunsfeld
7954b02819
Start work on displaying channels and invites in collab panel
2023-07-31 18:00:14 -07:00
Mikayla Maki
003a711dea
Add room creation from channel join
...
co-authored-by: max <max@zed.dev>
2023-07-31 16:54:12 -07:00
Mikayla Maki
92fa879b0c
Add ability to join a room from a channel ID
...
co-authored-by: max <max@zed.dev>
2023-07-31 16:53:57 -07:00
Max Brunsfeld
4b94bfa045
Set up basic RPC for managing channels
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-07-28 17:05:56 -07:00
Max Brunsfeld
758e1f6e57
Get DB channels query working with postgres
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-07-28 14:56:02 -07:00
Mikayla Maki
0998440bdd
implement recursive channel query
2023-07-28 13:24:43 -07:00
Mikayla Maki
15631a6fd5
Add channel_tests.rs
2023-07-28 13:24:43 -07:00
Mikayla Maki
26a94b5244
WIP: Channel CRUD
2023-07-28 13:24:43 -07:00
Max Brunsfeld
bb70901e71
WIP
2023-07-28 13:24:43 -07:00
Alex Viscreanu
c7669317ec
feat(workspace): allow alternative actions to open files and symbols in split
...
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2023-07-14 21:49:15 +02:00
Joseph T. Lyons
98a0113ac3
Add call events
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-07-11 13:58:55 -04:00
Piotr Osiewicz
abf3b4a54e
chore: Replace lazy_static Mutex with const. ( #2693 )
...
Mutex::new() is const-stable as of Rust 1.63.
Release Notes:
- N/A
2023-07-07 15:07:12 +02:00
Kirill Bulatov
e6ec0af743
Remove redundant hint kind checks in tests
2023-07-06 23:27:25 +03:00
Mikayla Maki
801f41e68e
Move audio dependency to dev
2023-07-05 12:15:56 -07:00
Mikayla Maki
8b8bafef22
Remove spurious audio depedency
2023-07-05 12:05:16 -07:00
Mikayla Maki
594b6e8d64
collab 0.16.0
2023-07-05 11:47:17 -07:00
Mikayla Maki
d2127825e3
Add first-pass sound support to Zed
2023-07-03 13:30:04 -07:00
Mikayla Maki
138de37cbf
Add basic sound handling infrastructure
2023-06-30 16:10:49 -07:00
Mikayla Maki
787412b545
fmt and update dependency
2023-06-29 17:49:42 -07:00
Mikayla Maki
33f5248d4f
Add the ability to make new directories by adding slashes to a file name
2023-06-29 17:35:22 -07:00
Kirill Bulatov
652909cdba
Post-rebase fixes
2023-06-29 22:39:33 +03:00
Kirill Bulatov
0972766d1d
Add more hint tests
2023-06-29 22:39:18 +03:00
Kirill Bulatov
667b70afde
Move hint settings on the language level
2023-06-29 22:39:18 +03:00
Kirill Bulatov
2c54d926ea
Test inlay hint cache
2023-06-29 22:39:18 +03:00
Kirill Bulatov
096bad1f73
Revert useless changes, simplify
2023-06-29 22:25:50 +03:00
Kirill Bulatov
acef5ff195
Query hints when editors gets open and visible
2023-06-29 22:25:50 +03:00
Kirill Bulatov
4d4544f680
Split excerpts into mutliple ranges for inlay hint queries
2023-06-29 22:25:49 +03:00
Kirill Bulatov
2c7900e11b
Use excerpt visible range in query filtering
2023-06-29 22:25:49 +03:00
Kirill Bulatov
83b3a914bc
Support better inlay cache parallelization
2023-06-29 22:25:49 +03:00
Kirill Bulatov
890b164278
Forward inlay hint refresh requests to clients, test coop inlay hints
2023-06-29 22:25:49 +03:00
Kirill Bulatov
6e3d1b962a
Draft the initial protobuf changes
2023-06-29 22:25:48 +03:00
Mikayla Maki
ce52d90a9d
Collab UI v2 ( #2618 )
...
This PR implements
https://www.figma.com/file/pLq7dvhx2mFeWFOedXpUQ5/Project-%E2%80%93-Collaboration-UI?type=design&node-id=666%3A8610&t=XFGk6KEtTCFXBvCQ-1
Release notes:
- [x] Redesigned collaboration UI
- [x] Added voice support
2023-06-28 09:14:39 -07:00
Max Brunsfeld
34b81e2aab
collab 0.15.0
2023-06-28 09:01:07 -07:00
Max Brunsfeld
5350164db9
Get integration test passing. Wait for expand entry on remote projects.
2023-06-22 10:34:28 -07:00
Max Brunsfeld
cd823ede4d
Add a bit to each entry indicating if it's outside of the worktree root
2023-06-22 10:34:28 -07:00
Max Brunsfeld
aa6f2f1816
Remove logic for marking worktree entries as collapsed
2023-06-22 10:34:28 -07:00
Max Brunsfeld
4c03231863
Maintain on the background scanner a set of expanded directories
2023-06-22 10:34:28 -07:00
Mikayla Maki
dedc117cca
Add audio APIs to Zed
...
Share mic on joining room
2023-06-16 10:13:27 -07:00
Antonio Scandurra
f068712a0a
Activate screen-sharing when leader activates a panel
2023-06-15 18:01:30 +02:00
Max Brunsfeld
c1f1ee6b05
collab 0.14.2
2023-06-09 11:50:35 -07:00
Max Brunsfeld
097632467d
collab 0.14.1
2023-06-09 11:37:47 -07:00
Max Brunsfeld
87efd25d42
Avoid dropping the worktree_repository_statuses table for now
2023-06-09 11:37:39 -07:00
Max Brunsfeld
bb65d75798
Enable rust backtraces on kubernetes
2023-06-09 11:15:21 -07:00
Max Brunsfeld
9cbb63d374
collab 0.14.0
2023-06-09 11:12:45 -07:00
Mikayla Maki
2c5e83bf72
Fixed a bug where buffer saved clocks would desynchronize in rare execution paths
...
co-authored-by: Max <max@zed.dev>
2023-06-07 16:10:45 -07:00
Mikayla Maki
28ba27c9c5
Merge branch 'main' into stream-git-statuses
2023-06-07 14:12:58 -07:00
Mikayla Maki
34e134fafb
Fix several randomized test failures with the new git status implementation
2023-06-07 14:10:17 -07:00
Max Brunsfeld
11ab1a8cc6
collab 0.13.1
2023-06-07 10:54:27 -07:00
Max Brunsfeld
6067575e38
collab 0.13.0
2023-06-07 09:29:58 -07:00
Max Brunsfeld
296a0bf510
Populate created local settings file with an empty JSON object and comments
2023-06-05 18:20:02 -07:00
Mikayla Maki
a2d58068a7
Improve test generation and implement status propogation
...
co-authored-by: max <max@zed.dev>
2023-06-05 17:30:12 -07:00
Mikayla Maki
49c5a3fa86
Add postgres migration
2023-06-05 12:17:21 -07:00
Mikayla Maki
4ac5f7b14e
Add statuses to test integration
2023-06-05 12:06:23 -07:00
Mikayla Maki
2f97c7a4f1
Remove stale comments
...
Implement status bubbling query with sum tree traversals
co-authored-by: max <max@zed.dev>
2023-06-02 16:41:01 -07:00
Max Brunsfeld
788f97ec68
Add support for folder-specific settings ( #2537 )
...
This PR allows you to customize Zed's settings within a particular
folder by creating a `.zed/settings.json` file within that folder.
Todo
* [x] respect folder-specific settings for local projects
* [x] respect folder-specific settings in remote projects
* [x] pass a path when retrieving editor/language settings
* [x] pass a path when retrieving copilot settings
* [ ] update the `Setting` trait to make it clear which types of
settings are locally overridable
Release Notes:
* Added support for folder-specific settings. You can customize Zed's
settings within a particular folder by creating a `.zed` directory and a
`.zed/settings.json` file within that folder.
2023-05-31 16:27:08 -07:00
Max Brunsfeld
ae7606ce21
collab 0.12.5
2023-05-31 15:38:26 -07:00
Mikayla Maki
22e4086658
WIP: Move statuses to be on their associated file entries in worktree
...
co-authored-by: Julia <julia@zed.dev>
2023-05-31 11:03:11 -07:00
Max Brunsfeld
8f95435548
Replicate project-specific settings when collaborating
2023-05-30 18:08:03 -07:00
Antonio Scandurra
88eb2b2163
Move history navigation logic to Workspace
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-05-29 19:47:59 +02:00
Kirill Bulatov
fdad1adaf6
Update LSP to the newest version
2023-05-28 21:55:08 +03:00
Kirill Bulatov
739d5ca373
Have proper undo for both client and host
2023-05-25 18:29:57 +03:00
Kirill Bulatov
e2ff829f98
Use Transaction instead of ProjectTransaction
...
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-05-25 16:12:14 +03:00
Kirill Bulatov
f812151840
Add integration tests
2023-05-25 09:45:50 +03:00
Kirill Bulatov
eca6d2b597
Process remote format typing also
2023-05-25 09:45:50 +03:00
Nathan Sobo
747322a02d
Merge remote-tracking branch 'origin/main' into zmd
2023-05-24 11:04:07 -06:00
Antonio Scandurra
208ff2fba7
Merge remote-tracking branch 'origin/main' into panels
2023-05-23 08:24:28 +02:00
Nathan Sobo
30de64845f
WIP
2023-05-22 23:11:27 -06:00
Mikayla Maki
9307719a4b
Add run until parked for test
2023-05-22 18:40:12 -07:00
Antonio Scandurra
146809eef0
Merge branch 'main' into panels
2023-05-22 14:10:17 +02:00
Mikayla Maki
bbb68c523c
Refactored apart the forward and the backwards iterator for diff hunks
2023-05-19 18:09:47 -07:00
Antonio Scandurra
924ec961ff
Toggle project panel when opening new workspace in a dock-agnostic way
2023-05-19 15:27:18 +02:00
Max Brunsfeld
34b0d6200f
collab 0.12.4
2023-05-18 14:58:57 -07:00