Max Brunsfeld
f54d74eda9
Merge branch 'main' into contact-panel-keyboard-nav
2022-05-11 17:45:44 -07:00
Max Brunsfeld
0ba656aa0e
Improve layout and styling of contact notifications
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 14:20:05 -07:00
Max Brunsfeld
3bc9b8ec85
Add notifications for accepted contact requests
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-11 11:39:01 -07:00
Antonio Scandurra
97d3616ed9
Show incoming request notification and implement dismissal
2022-05-11 15:13:37 +02:00
Max Brunsfeld
297fa1af55
Avoid possible memory leak of FakeServer in tests
2022-05-10 21:45:12 -07:00
Max Brunsfeld
d0052ccfb5
Avoid panic when trying to fetch an invalid URL
2022-05-10 21:44:33 -07:00
Nathan Sobo
fe89de8b11
Dismiss contact request notification if request is cancelled
2022-05-10 18:50:18 -06:00
Nathan Sobo
3bca1c29e2
Present a blank notification upon receipt of a contact request
2022-05-10 18:33:39 -06:00
Antonio Scandurra
a121576545
WIP
2022-05-10 18:25:47 +02:00
Antonio Scandurra
93688cbe22
Fix bug when determining contact status
...
Users are sorted by login but we were binary-searching them by id.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-10 17:26:53 +02:00
Antonio Scandurra
52c36d3e3d
Maintain online status in contacts panel
2022-05-10 10:33:57 +02:00
Nathan Sobo
4e9924c717
Filter out empty projects in contacts panel
2022-05-09 20:57:41 -06:00
Max Brunsfeld
45b6a9df36
Avoid sending a GetUsers request for an emptly list of user ids
...
We don't actually need to return the users at this time. We just call this for its side effect.
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-09 18:03:24 -07:00
Max Brunsfeld
b8aba0972d
Wait until contacts have been cleared when disconnecting
...
Also, use an mpsc for UpdateContacts messages, not a watch, since
the messages now represent changes instead of snapshots.
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-09 17:23:39 -07:00
Max Brunsfeld
d7cba73ead
Decrement pending_contact_requests even if a request fails
2022-05-09 16:19:00 -07:00
Nathan Sobo
40f1427885
Show requests in contacts panel
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-09 12:48:07 -06:00
Nathan Sobo
e3ee19b123
Wire up UI for requesting contacts and cancelling requests
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-05-09 11:24:05 -06:00
Antonio Scandurra
e4f1952657
WIP
2022-05-09 17:06:21 +02:00
Nathan Sobo
9b1b61355a
Fully test contact request acceptance
...
* Be sure we send updates to multiple clients for the same user
* Be sure we send a full contacts update on initial connection
As part of this commit, I fixed an issue where we couldn't disconnect and reconnect in tests. The first disconnect would cause the I/O future to terminate asynchronously, which caused us to sign out even though the active connection didn't belong to that future. I added a guard to ensure that we only sign out if the I/O future is associated with the current connection.
2022-05-08 15:19:56 -06:00
Nathan Sobo
5d20338f69
Get basic test of accepting a contact request passing
2022-05-07 15:09:27 -06:00
Nathan Sobo
4f06dca78b
WIP: Update contacts based on deltas rather than snapshots
2022-05-06 20:50:59 -06:00
Max Brunsfeld
8a3425477f
Start work on RPC endpoints for dealing with contact requests
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-06 15:44:47 -07:00
Max Brunsfeld
4620c7a1e5
Filter existing contacts when searching in the contacts panel
2022-05-05 15:04:50 -07:00
Max Brunsfeld
ea81737a88
Allow fuzzy-search for potential contacts in the contacts panel
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-05 14:14:44 -07:00
Antonio Scandurra
da3870ea31
Pass secret token when uploading crashes
2022-05-02 15:42:52 +02:00
Antonio Scandurra
0e1e5b7d55
Make following redirects explicit in HttpClient::get
2022-04-27 13:14:45 +02:00
Nathan Sobo
78afbb3599
Remove async-std and surf from client
...
Switch to isahc library. It's not as fancy, but it works and has a smaller footprint.
2022-04-26 21:19:15 -06:00
Nathan Sobo
2adb9fe472
Get zed.dev working with new collab backend
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-26 11:15:41 -06:00
Antonio Scandurra
fb87bacc7e
Merge branch 'main' into auto-update
2022-04-21 09:53:06 +02:00
Nathan Sobo
17195e615e
Merge pull request #781 from zed-industries/structured-logging
...
Introduce structured logging
2022-04-09 07:40:24 -06:00
Max Brunsfeld
ed2b690b9e
Merge branch 'main' into namespace-actions
2022-04-08 11:48:43 -07:00
Nathan Sobo
7e5a3f9f6b
Introduce structured logging
...
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>
2022-04-08 10:06:51 -06:00
Antonio Scandurra
24cb44fb00
Remove postage
from rpc
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-04-08 16:13:37 +02:00
Max Brunsfeld
5242a3a6dc
Restructure action macro to assign a namespace to every action
...
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>
2022-04-07 16:20:49 -07:00
Antonio Scandurra
38e902b241
WIP: Start on auto-update
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-04-04 18:59:57 +02:00
Nathan Sobo
4a42025c28
Authenticate on startup if ZED_IMPERSONATE is assigned
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-03-23 12:25:06 -06:00
Nathan Sobo
ee9ed936e4
Don't try keychain after authentication fails
...
Previously, we were achieving this by deleting the keychain item, but this can sometimes fail which leads to an infinite loop. Now, we explicitly never try the keychain when reattempting authentication after authentication fails.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-03-23 12:15:36 -06:00
Max Brunsfeld
df0632011c
🎨 client
...
Forgot to push this yesterday night.
2022-03-18 13:03:43 -07:00
Antonio Scandurra
f0b7bd6e17
Serialize initial follow state in leader and reflect it in follower
2022-03-18 10:22:13 +01:00
Max Brunsfeld
0fdaa1d715
WIP
2022-03-17 17:53:49 -07:00
Antonio Scandurra
18b1e9d35f
Don't starve main thread when lots of messages/events arrive at once
2022-03-11 10:09:13 +01:00
Max Brunsfeld
4cb4b99c56
Assign buffer's completion triggers from LSP capabilities
...
Also, make LanguageServer::new() async. The future resolves
once the server is initialized.
2022-03-08 17:41:52 -08:00
Max Brunsfeld
1f5eab39a9
Reset peer's receive timeout when a message is received
...
* Make advance_clock more realistic by waking timers in order,
instead of all at once.
* Don't advance the clock when simulating random delays.
Co-Authored-By: Keith Simmons <keith@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-07 15:33:43 -08:00
Max Brunsfeld
4124308d94
Fix errors from conditional compilation in timer functions
2022-03-04 17:16:17 -08:00
Max Brunsfeld
fab115e549
Adjust test connection to treat the half-open state more realistically
...
When a network connection is lost without being explicitly closed by the
other end, writes to that connection will error, but reads will just wait
indefinitely.
This allows the tests to exercise our heartbeat logic.
2022-03-04 16:47:55 -08:00
Max Brunsfeld
9017a1363b
Send websocket pings from both the client and the server
...
Remove the client-only logic for sending protobuf pings.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-03-04 15:21:18 -08:00
Antonio Scandurra
b21d91db22
Render overlay after remote project becomes read-only
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-04 17:28:18 +01:00
Max Brunsfeld
05df1dfae9
Disable doctests for all libraries
...
We don't use them, and they add a lot of noise to the test output
when running all tests in the workspace.
2022-03-03 16:15:56 -08:00
Max Brunsfeld
ae93cfed50
Tear down client's connection states when dropping test clients
2022-03-01 18:17:41 -08:00
Antonio Scandurra
466db69780
Pass a reference to TestAppContext
in tests
...
This allows us to drop the context *after* we ran all futures to
completion and that's crucial otherwise we'll never drop entities
and/or flush effects.
2022-03-01 12:01:02 +01:00