Commit log

3315750 Remove waiting for edits when handling code action RPC requests

Click to expand commit body
Add code actions to the randomized integration test

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

Max Brunsfeld and Nathan Sobo created

41ba980 Remove unnecessary waiting during completion RPC requests

Click to expand commit body
Also, add completion requests to the randomized collaboration integration test,
to demonstrate that this is valid.

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

Max Brunsfeld and Nathan Sobo created

90f31bb Allow FakeLanguageServer handlers to handle multiple requests

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

Max Brunsfeld and Nathan Sobo created

c4dff12 Allow multiple fake language servers to be started for a given project

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

Max Brunsfeld and Nathan Sobo created

ab59f02 Fix chat channel unit test

Click to expand commit body
Also, improve error in tests when FakeServer never receives a request,
using the new `start_waiting` method on the DeterministicExecutor.

Max Brunsfeld created

77afc33 Fix duplicate element_state error in tests

Max Brunsfeld created

bee7055 Avoid storing operations when no buffers are being loaded

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

Max Brunsfeld and Nathan Sobo created

93ed34f In random collaboration test, compare all guests' buffers to the host's buffers

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

Max Brunsfeld and Nathan Sobo created

06fb9cc Restore synchronization between responses and incoming messages

Click to expand commit body
This removes the need to buffer pending messages in Client.

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

Max Brunsfeld and Antonio Scandurra created

cf4291a Distinguish between "foreground" and "background" RPC messages

Click to expand commit body
Some types of messages, which entail state updates on the host, should be
processed in the order that they were sent. Other types of messages should
not block the processing of other messages.

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

Max Brunsfeld and Antonio Scandurra created

2085869 Add a `Test` message that we can use to assert on the behavior of Peer

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

Antonio Scandurra , Nathan Sobo , and Max Brunsfeld created

0173025 Close buffers in randomized integration test

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

Antonio Scandurra and Nathan Sobo created

7c5a5c4 Print the correct seed on randomized test failure

Antonio Scandurra created

38f225b Clean db pool on drop only if assertions fail or it's the last iteration

Antonio Scandurra created

c3ba8f5 Ensure worktree updates are observed in order on the server

Antonio Scandurra created

3f6feb1 Compare only snapshot's essential state in random collaboration test

Antonio Scandurra created

6a07d39 Don't send worktree updates until the initial share is done

Antonio Scandurra created

978dae2 Buffer messages in Client while no entity is listening to them

Antonio Scandurra created

71abea7 WIP - Register client RPC handlers on app startup

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

Max Brunsfeld and Nathan Sobo created

1ca1595 Add AnyWeakModelHandle

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

Max Brunsfeld and Nathan Sobo created

34bba30 In random collaboration test, add failing assertion for worktree convergence

Max Brunsfeld created

a11495a Start on a randomized integration test

Antonio Scandurra created

c33d554 Don't render sample item twice in `UniformList`

Antonio Scandurra created

56e4591 Fix panic caused by reusing the same handler for diagnostic status

Antonio Scandurra created

17b13b9 Wait for request and response version before resolving completions

Antonio Scandurra created

809b843 Render "Sign in" label only for current user

Antonio Scandurra created

4e748b1 WIP - Wait for code action anchors to be valid

Max Brunsfeld created

d358072 Include the desired version in a SaveBuffer RPC request

Click to expand commit body
When handling this messages on the host, wait until the desired
version has been observed before performing the save.

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

Max Brunsfeld and Nathan Sobo created

8d06049 Ensure worktree updates are applied in order

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

Max Brunsfeld and Nathan Sobo created

28ba49b Wait for buffer if it doesn't exist when deserializing a reference

Click to expand commit body
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>

Nathan Sobo and Max Brunsfeld created

e9250e6 Fix mouse event handler for code actions indicator

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

Max Brunsfeld and Nathan Sobo created

ddc1f23 Panic if element state is used twice in the same frame

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

Max Brunsfeld and Nathan Sobo created

7b666af Get chat integration tests passing

Click to expand commit body
* Don't send a chat message before the previous chat message
  is acknowledged.
* Fix emitting of notifications in RPC server

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

Max Brunsfeld and Nathan Sobo created

bf6ae0d Restore logic for storing operations on buffers that are still being opened

Max Brunsfeld created

fe46b89 Remove logic for preserving RPC message order between peers

Click to expand commit body
* On the server, spawn a separate task for each incoming message
* In the peer, eliminate the barrier that was used to enforce ordering
  of responses with respect to other incoming messages

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

Max Brunsfeld and Antonio Scandurra created

90576cf Request code actions inside of task to avoid spamming the LSP

Antonio Scandurra created

ae75648 v0.15.0

Antonio Scandurra created

298c991 Ensure that zed package version matches git tag before packaging a release

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

Antonio Scandurra and Nathan Sobo created

f742f63 Merge pull request #446 from zed-industries/assists

Click to expand commit body
Implement code actions

Antonio Scandurra created

fadb94a Use selection instead of just the cursor when fetching code actions

Antonio Scandurra created

1eea2f3 Add integration test for code actions

Antonio Scandurra created

68917c7 Implement Server::add_request_handler in terms of ::add_message_handler

Antonio Scandurra created

1aff423 Rename `subscribe` to `add_{message,request}_handler` in `Client`

Click to expand commit body
This makes it easier to distinguish between messages and requests.

Antonio Scandurra created

6a6cd68 :art:

Antonio Scandurra created

03812a6 Pass `write(true)` when creating a file in `RealFs`

Antonio Scandurra created

a19735c Ensure client always responds when receiving a request

Antonio Scandurra created

a41eb5a Ensure server always responds when receiving a request

Antonio Scandurra created

331667c WIP: Start auditing all `forward_request` calls on the server

Click to expand commit body
When the host returns an error after a server has forwarded a request,
we want to surface that error to the guest. At the moment, the server
just returns early leaving some requests unresponded on the guest.

I started auditing all the code paths where we do that, but I am
wondering whether there's some other approach that would prevent us
from repeating this mistake in other code paths.

Antonio Scandurra created

2dbea28 Deserialize buffers synchronously when deserializing project transaction

Click to expand commit body
On guests, this ensures we never miss updates to subsequent buffers in
the project transaction that arrive while we're waiting for edits on a
prior buffer in the transaction.

Antonio Scandurra created

8d3b7e9 Proceed with saving a buffer even if formatting fails

Antonio Scandurra created