Commit log

7abd3a9 Make atlas allocation fallable and skip rendering icons and paths when it fails

Keith Simmons created

3c116e3 Reraise editor events in Project Search and activate workspace item from them

Keith Simmons created

9a8b038 Replace synchronous `Store` lock with an async lock

Click to expand commit body
This also fixes some failures due to `broadcast` and `update_contacts_for_users`
being fallible. As part of this commit, these two functions don't return `Result`
anymore: the reason for this change is that we don't want a request to fail only
because a peer disconnected while we were trying to broadcast a message to them.

Antonio Scandurra created

273ee0a Acquire guest connection ids after save request has been forwarded

Click to expand commit body
This fixes a bug that would cause the server to broadcast the save
message to guests that have potentially left the project.

Antonio Scandurra created

c3927c5 Simulate random guest disconnection and reconnection

Antonio Scandurra created

f99a143 Distribute operation workload evenly across peers in randomized test

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

02f96c6 Simulate parallelism among peers correctly in randomized collab test

Click to expand commit body
Previously they were all using the same foreground executor, which was
not properly simulating concurrency among tasks from different peers.

Antonio Scandurra created

bb8dc61 Allow taking an `Arc<Deterministic>` in `[gpui::test]`-decorated tests

Antonio Scandurra created

28f44a3 Merge pull request #787 from zed-industries/buffer-divergence

Click to expand commit body
Fix divergence bug when peer reconnects reusing a prior replica id

Antonio Scandurra created

f9e0899 Fix divergence bug when peer reconnects reusing a prior replica id

Click to expand commit body
We forgot to observe the footprint of the reconnecting replica's prior
undos into the local clock. This could cause the replica to generate
edits with a version strictly smaller than what other peers may have
observed. As such, those peers would think they had already seen those
edits and skip them.

Antonio Scandurra created

9a4b8e3 Load all keybindings from JSON file

Max Brunsfeld created

b4babbe Load modal key bindings from JSON file

Max Brunsfeld created

1e2eeaa Load project and buffer search key bindings from JSON file

Max Brunsfeld created

3636c9e Load workspace and editor key bindings from a JSON file

Max Brunsfeld created

ab82043 Rename zed-server to collab

Click to expand commit body
Over time, I think we may end up having multiple services, so it seems like a good opportunity to name this one more specifically while the cost is low. It just seems like naming it "zed" and "zed-server" leaves it a bit open ended.

Nathan Sobo created

af674e1 Merge pull request #770 from zed-industries/better-settings-schema

Click to expand commit body
Improve Settings Completions

Nathan Sobo created

56fcffb Remove unused imports

Nathan Sobo created

17195e6 Merge pull request #781 from zed-industries/structured-logging

Click to expand commit body
Introduce structured logging

Nathan Sobo created

fd4b81c Allow actions to be deserialized from JSON

Click to expand commit body
Introduce separate macro for implementing 'internal' actions which
are not intended to be loaded from keymaps.

Max Brunsfeld created

1778622 Merge pull request #773 from zed-industries/namespace-actions

Click to expand commit body
Change how actions are declared so that they are always associated with a namespace

Max Brunsfeld created

ed2b690 Merge branch 'main' into namespace-actions

Max Brunsfeld created

8a7d3ea Merge pull request #778 from zed-industries/test-random-disconnect

Click to expand commit body
Introduce host disconnection in randomized collaboration test

Nathan Sobo created

b507e21 Enable JSON logging at the trace log level in K8s

Click to expand commit body
Co-Authored-By: Antonio Scandurra <me@as-cii.com>

Nathan Sobo and Antonio Scandurra created

7e5a3f9 Introduce structured logging

Click to expand commit body
We're enabling the log crate feature everywhere, but only using it on the server for now.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>

Nathan Sobo and Antonio Scandurra created

53a7f9c Introduce a timeout when processing incoming messages

Click to expand commit body
We have an hypothesis that the server gets stuck while processing
an incoming message, either because the buffer fills up or because
a handler never completes. This should mitigate that and, once we
add logging, give us some clue as to what is causing it exactly.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

0b1fda3 Remove `postage` from `zed-server`

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

24cb44f Remove `postage` from `rpc`

Click to expand commit body
Co-Authored-By: Nathan Sobo <nathan@zed.dev>

Antonio Scandurra and Nathan Sobo created

32fd4eb Insert project id in connection's project during project registration

Click to expand commit body
...in contrast to doing so during worktree registration. This fixes a
randomized test failure which would panic because store invariants would be
violated. This would happen when a peer disconnected before it had a chance
to register a worktree because, when removing all the state associated with
that peer upon disconnection, we would notice the registered project without
however finding it in the peer's connection state.

Antonio Scandurra created

222cd09 Allow host to reconnect to the server in randomized test

Antonio Scandurra created

c994263 Don't insert an empty vector in `Project::buffer_snapshots`

Click to expand commit body
Other code paths rely on at least a version always being there, so
we should enforce that invariant everywhere.

Antonio Scandurra created

663beab Avoid panicking when receiving a request for a dropped buffer

Antonio Scandurra created

3daaef0 Replace `postage::oneshot` with `futures::channel::oneshot`

Click to expand commit body
This fixes an error in the randomized test that would cause the future
returned from `Worktree::share` to never finish due to a bug in `postage`
that causes its waker to not be notified upon drop.

Antonio Scandurra created

da97601 Allow `simulate_guest` and `simulate_host` to fail when host disconnects

Antonio Scandurra created

fae9048 Remove non-determinism from `Peer` caused by using std's `HashMap`

Antonio Scandurra created

3e40b5b dynamically inject theme names and language properties into schema

Keith Simmons created

c801a52 Convert some actions to use named fields

Click to expand commit body
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Keith Simmons <keith@zed.dev>

Max Brunsfeld , Nathan Sobo , and Keith Simmons created

5242a3a Restructure action macro to assign a namespace to every action

Click to expand commit body
Also, allow arbitrary types to be used as Actions via the impl_actions macro

Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Keith Simmons <keith@zed.dev>

Max Brunsfeld , Nathan Sobo , and Keith Simmons created

035cd37 Add explicit types for LanguageOverrides and Themes to SettingsFileContent in order to improve completions in zed settings file

Keith Simmons created

206b0f0 0.25.0

Max Brunsfeld created

717f53e WIP

Nathan Sobo created

0b8eed6 Merge pull request #765 from zed-industries/yield-lsp

Click to expand commit body
Don't starve UI thread when rapidly receiving LSP messages

Antonio Scandurra created

80d55fd Don't starve UI thread when rapidly receiving LSP messages

Click to expand commit body
Co-Authored-By: Antonio Scandurra <me@as-cii.com>

Nathan Sobo and Antonio Scandurra created

7a151ff Merge pull request #764 from zed-industries/refine-event-handlers-behavior

Click to expand commit body
Calculate hit-box based on visible bounds in `{Mouse}EventHandler`

Nathan Sobo created

b396909 Calculate hitbox based on visible bounds in `{Mouse}EventHandler`

Click to expand commit body
This is in contrast to not dispatching the event altogether in `Flex` when
the event is not contained in the flex element bounds. That approach was
problematic because it didn't give an opportunity to `MouseEventHandler`s
to handle mouse move events when they didn't intersect with the element bounds,
causing elements to never clear their hover state, cursor style, etc.

Antonio Scandurra created

73f2fd6 Pass visible bounds to `Element::dispatch_event`

Antonio Scandurra created

ae415ee Merge pull request #763 from zed-industries/inconsistent-diagnostic-state

Click to expand commit body
Fix bad diagnostic state when restarting a language server w/ a running diagnostic task

Antonio Scandurra created

7c21b61 Merge pull request #748 from zed-industries/fix-outline-panic

Click to expand commit body
Don't assume there are always matches in outline view

Antonio Scandurra created

52251c3 Merge pull request #745 from zed-industries/scroll-tabs

Click to expand commit body
Allow pane tabs to be scrolled when they overflow

Antonio Scandurra created

f73de20 Fix diagnostic updates after restarting an LSP w/ a pending diagnostic job

Max Brunsfeld created

b354af7 Use an unbounded channel in gpui test helper methods

Click to expand commit body
The bounded channel could fill up when many events were emitted in one
effect cycle.

Max Brunsfeld created