Max Brunsfeld
e32233c826
Fix spurious setting error logs on non-existent setting keys
2023-05-19 17:15:05 -07:00
Max Brunsfeld
258723566f
Rename settings::register_setting -> settings::register
2023-05-17 15:06:11 -07:00
Max Brunsfeld
2d5f03e148
Remove optional path argument when getting settings
2023-05-17 15:05:20 -07:00
Max Brunsfeld
89204e85c0
Merge branch 'main' into setting-store
2023-05-17 09:55:24 -07:00
Max Brunsfeld
65e3713d4d
Define editor settings in editor crate
2023-05-16 17:30:29 -07:00
Max Brunsfeld
39618ae32d
Define language settings in the language crate
2023-05-16 17:29:53 -07:00
Joseph Lyons
ffd503951b
Don't make events for every rejected suggestion
2023-05-16 17:19:05 -04:00
Joseph Lyons
a6a2f93607
Update telemetry client to accept copilot events
2023-05-16 00:34:58 -04:00
Max Brunsfeld
cee7edabf9
Ensure the SettingsStore global is added in tests
2023-05-10 16:39:59 -07:00
Max Brunsfeld
aa6ea920e2
Define telemetry settings in the client crate
2023-05-10 12:59:24 -07:00
Joseph Lyons
8313414e1e
Do not use post_json() to auto update
2023-05-04 12:12:36 -04:00
Joseph Lyons
69a4fffae2
Update post_json
to take in a bool for allowing for redirects
2023-05-02 23:22:55 -04:00
Joseph T. Lyons
f62ba2eec7
use installation_id over device_id
2023-05-01 16:29:51 -04:00
Joseph Lyons
6b0faa2d9c
Rework telemetry code to support sending events to Clickhouse
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-04-28 16:06:55 -04:00
Antonio Scandurra
689e878bd8
Use a WeakViewHandle
in Client
for view message handlers
2023-04-26 12:21:02 +02:00
Max Brunsfeld
ebbe52e6b0
🎨 Specify more dependencies at the workspace level
2023-04-24 17:41:55 -07:00
Max Brunsfeld
abdccf7393
Use a workspace dependency for the futures crate
2023-04-24 09:43:31 -07:00
Max Brunsfeld
727afae4ff
Fix unit tests after fixing gpui model drop semantics
...
co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-04-11 10:58:01 -07:00
Antonio Scandurra
42b10044fc
Fix running client crate tests
2023-04-11 17:43:05 +02:00
Antonio Scandurra
016343e65d
Merge branch 'main' into randomized-tests-operation-script
2023-04-10 08:45:22 +02:00
Nathan Sobo
2615a11f7c
Don't export platform::* from gpui
...
I'd like to avoid cluttering the top-level namespace with all the platform-
specific types.
2023-04-07 11:45:53 -06:00
Nathan Sobo
de9bf6dfbd
Merge MutableAppContext into AppContext
...
There may have been a good reason for the difference at some point, or I was
still learning Rust. But now it's just &mut AppContext vs &AppContext.
2023-04-06 15:49:03 -06:00
Antonio Scandurra
f995d07542
Return error if subscribing to an entity that was already subscribed to
2023-04-06 14:42:19 +02:00
Max Brunsfeld
2d63ed3ca4
Merge branch 'main' into randomized-tests-operation-script
2023-04-05 17:10:20 -07:00
Max Brunsfeld
1ccf174388
Avoid applying outdated UpdateProject messages
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2023-04-04 18:34:39 -07:00
Mikayla Maki
6bfecd7f66
Refactor staff mode into a seperate crate and make copilot initialization wait for the staff mode flag to be flipped
2023-04-03 20:16:45 -07:00
Nathan Sobo
71cf6ec5ae
Use into_any instead of weird 'as' hack
2023-04-02 15:55:30 -06:00
Nathan Sobo
aed8df96ff
Wrap AnyWeak handles with their typed counterparts
2023-04-02 15:42:03 -06:00
Antonio Scandurra
5471217089
Use the same serde version across the entire workspace
2023-03-28 09:42:00 -07:00
Mikayla Maki
455cdc8b37
Add copilot crate
...
Refactor HTTP and github release downloading into util
Lazily download / upgrade the copilot LSP from Zed
Co-authored-by: Max <max@zed.dev>
Co-Authored-By: Antonio <antonio@zed.dev>
2023-03-28 09:41:59 -07:00
Max Brunsfeld
cbeb6e692d
Move postage crate version specification to workspace Cargo.toml
2023-03-21 11:26:13 -07:00
Antonio Scandurra
1af8f4be19
Deserialize Theme
directly into the heap to avoid stack overflow
...
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-03-17 15:58:52 +01:00
Max Brunsfeld
0bbb4b22c6
Rename 'Authenticate' action to 'Sign In'
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-03-14 11:01:23 -07:00
Max Brunsfeld
f5c4a2a0dd
Fix failure to see screenshare tracks that were started prior to joining a call
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2023-03-13 11:15:22 -07:00
Antonio Scandurra
221bb54e48
Introduce a new TryFutureExt::unwrap
method
2023-03-10 11:41:13 +01:00
Antonio Scandurra
59a66190e5
Avoid trying to reconnect to a room if client is signed out
2023-02-23 14:53:10 +01:00
Antonio Scandurra
9334267bd0
Tear down peer when signing out
2023-02-23 14:47:02 +01:00
Max Brunsfeld
bf5c3d963a
Rearrange collab titlebar items to avoid movement of the toggle contacts button
...
* Replace username in titelbar with a `...` user menu that shows
the current user name and contains a sign-in/sign-out button.
* Move the '+' (toggle contacts) button back to the right side.
* Move the collaborators back to the right side.
* Move the share/unshare button to the left side, beside the project title
* Only show the share/unshare button when in a call.
2023-02-22 22:56:11 -08:00
Antonio Scandurra
5df50e2fc9
Add timeouts to HTTP client
2023-02-15 15:00:44 +01:00
Joseph T. Lyons
37c052f53d
Include is_staff
boolean in in-app feedback
2023-02-08 10:14:18 -05:00
Joseph Lyons
248161aa63
Fix version for feedback-related commands
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2023-01-30 14:13:25 -05:00
Mikayla Maki
57781fd7aa
Move StaffMode declaration out of paths
2023-01-27 15:45:33 -08:00
Mikayla Maki
2802e3a1c6
Fixed failling tests
2023-01-27 15:44:17 -08:00
Mikayla Maki
ea39983f78
Removed old experiments settings and staff mode flag, added new StaffMode global that is set based on the webserver's staff bit
2023-01-27 15:43:12 -08:00
Joseph Lyons
8e8f66a5e1
Merge branch 'main' into in-app-feedback
2023-01-23 18:24:12 -05:00
Mikayla Maki
d060114f00
Added complete scripts for generating third party license files
2023-01-23 12:47:12 -08:00
Joseph Lyons
f2a5a4d0fd
Merge branch 'main' into in-app-feedback
2023-01-23 01:20:10 -05:00
Mikayla Maki
37a4de1a84
Add opt-out for metric reporting
...
co-authored-by: kay <kay@zed.dev>
2023-01-10 15:49:54 -08:00
Joseph Lyons
0200fc5542
WIP
...
Don't rely on contacts popover or contacts list for theming
Add metrics id to request body
Clean up some code and comments
Co-Authored-By: Mikayla Maki <mikayla.c.maki@gmail.com>
2023-01-07 18:53:00 -05:00
Nathan Sobo
273988b8d5
Set transaction group interval to ZERO by default in tests
...
We were seeing non-deterministic behavior in randomized tests when
generating backtraces took enough time to cause transactions to group
in some cases, but not group in others.
Tests will need to explicitly opt into grouping if they want it by
setting the interval explicitly. We have tests in the text module that
currently test the history grouping explicitly, but I'm not sure
it's needed elsewhere.
2022-12-27 16:47:28 -07:00
Max Brunsfeld
599acf0daa
WIP - Panic immediately when detecting non-determinism via a change to the execution trace
2022-12-23 17:34:13 -08:00
Antonio Scandurra
75803d8dbb
Respond with an error when client hasn't got a registered handle
2022-12-23 11:53:13 +01:00
Antonio Scandurra
930be6706f
WIP
2022-12-14 18:02:39 +01:00
Antonio Scandurra
05e99eb67e
Introduce an epoch to ConnectionId
and PeerId
2022-12-14 15:55:56 +01:00
Antonio Scandurra
9a62150dce
Merge branch 'main' into reconnections-2
2022-12-05 19:18:40 +01:00
Mikayla Maki
ffcad4e4e2
WIP fixing dock problems
2022-12-03 16:06:02 -08:00
Kay Simmons
359b8aaf47
rename sql_method to query and adjust the syntax to more closely match function definitions
2022-12-03 16:06:01 -08:00
Mikayla Maki
4798161118
Distributed database pattern built.
...
Co-Authored-By: kay@zed.dev
2022-12-03 16:06:01 -08:00
Mikayla Maki
c84201fc9f
Done first draft of strongly typed migrations
2022-12-03 16:05:25 -08:00
Antonio Scandurra
969c314315
Merge branch 'main' into reconnections-2
2022-12-02 19:09:33 +01:00
Joseph Lyons
d2cd9c94f7
Remove sign in telemetry event
2022-11-28 18:56:27 -05:00
Antonio Scandurra
f0a721032d
Remove non-determinism caused by random entropy when reconnecting
2022-11-28 18:56:11 +01:00
Antonio Scandurra
c1291a093b
WIP: Allow subscribing to remote entity before creating a model
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-11-16 19:51:24 +01:00
Max Brunsfeld
05a6bd914d
Get integration tests passing with sqlite
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-11-10 11:03:52 -08:00
Joseph T Lyons
474a5dd4f2
Make App
a user property in Mixpanel
...
Currently, we cannot take advantage of Mixpanel's virtual session end events because they are associated with users, not events; this change moves the property onto users.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-11-04 14:16:12 -04:00
Joseph T. Lyons
370a6f3dbd
Merge pull request #1842 from zed-industries/telemetry-corrections
...
Telemetry corrections
2022-11-02 12:36:48 -04:00
Joseph T Lyons
d8685baa47
Revert "Differentiate between first time app starts and subsequent ones"
2022-11-02 12:22:46 -04:00
Antonio Scandurra
86057ab071
Merge pull request #1843 from zed-industries/call-randomized-test
...
Model calls in randomized collaboration test
2022-11-02 13:03:34 +00:00
Joseph T Lyons
aafc3a9584
Make event name casing consistent with other event names
2022-11-01 23:19:55 -04:00
Joseph T Lyons
dc657a647e
Remove Amplitude event tracking
2022-11-01 20:49:49 -04:00
Joseph T Lyons
e5f0965138
Differentiate between first time app starts and subsequent ones
2022-11-01 20:36:18 -04:00
Antonio Scandurra
0b79950510
Don't hold the lock while yielding back to the executor in Client
2022-11-01 19:16:02 +01:00
Joseph T Lyons
61f31bf010
Fill in missing "app" field names on Mixpanel events
2022-10-31 19:18:35 -04:00
Joseph T Lyons
495fd151f5
Revert Amplitude's "app" name back to "platform"
...
This was unintentional. We only want to rename the Mixpanel telemetry "platform" field to "app." We want to keep it as "platform" on Amplitude because we want to keep using Amplitude for a bit, and the event fields should be the same.
2022-10-31 19:18:03 -04:00
Joseph T Lyons
8a926c4a23
Make release_channel
optional to fix tests
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-10-27 18:06:34 -04:00
Joseph T Lyons
309f401015
Rename all keys, in telemetry events, to be consistent with Mixpanels conventions
2022-10-27 16:19:21 -04:00
Joseph T Lyons
daa75b5282
Add missing struct field
...
This must've gotten lost on the merging of main into this branch
2022-10-27 15:59:22 -04:00
Joseph T Lyons
36c64045ae
Merge branch 'main' into add-release-channel-information-to-telemetry-events
2022-10-27 15:57:17 -04:00
Joseph T Lyons
93e1e30323
Add release channel information to telemetry events
2022-10-27 15:53:14 -04:00
Max Brunsfeld
d79aeba2c1
Avoid spurious log messages in development builds
2022-10-27 12:42:03 -07:00
Joseph T Lyons
31a904d370
Change telemetry event field name to app
2022-10-27 12:35:35 -04:00
Max Brunsfeld
2bfd46d48c
Fix setting of preview param in RPC URL
2022-10-26 16:19:19 -07:00
Max Brunsfeld
f1b41389b3
Allow overriding release channel at runtime via env var
2022-10-26 16:19:19 -07:00
Max Brunsfeld
a4a8596a29
Store current release channel name in a file in the zed crate
2022-10-26 16:19:19 -07:00
Max Brunsfeld
a61f3b715b
Create preview channel
2022-10-26 16:19:19 -07:00
Joseph T Lyons
022f70b1de
Temporarily restore integration with Amplitude
...
This will be reverted later, once we fully switch to Mixpanel
2022-10-20 19:27:55 -04:00
Joseph T Lyons
ac5d5e2451
Merge branch 'main' into switch-to-mixpanel
2022-10-20 13:53:39 -04:00
Joseph T Lyons
2f064d5ccc
Remove debug prints
2022-10-19 17:30:00 -04:00
Max Brunsfeld
e6b29086a9
Merge pull request #1777 from zed-industries/impersonate-via-secret-token
...
Impersonate via secret token
2022-10-19 13:32:40 -07:00
Max Brunsfeld
83e4e26989
Allow setting ZED_SERVER_URL to URL of a collab server
2022-10-19 13:27:14 -07:00
Joseph T Lyons
d7915840d0
Switch to Mixpanel analytics
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-10-19 14:53:48 -04:00
Max Brunsfeld
c410935c9c
Allow impersonating users via the api token, bypassing oauth
2022-10-18 17:36:54 -07:00
Kay Simmons
da5203011c
Merge pull request #1773 from zed-industries/rusqlite
...
Swap to sqlite for client persistence
2022-10-18 16:11:54 -07:00
Mikayla Maki
84c7aa9cad
Finished up initial sqlite implemention
...
Co-Authored-By: kay@zed.dev
2022-10-18 15:58:05 -07:00
Antonio Scandurra
d155c11729
Fix client unit test by sending Hello
in FakeServer
2022-10-18 19:33:38 +02:00
Antonio Scandurra
0c0e8688ed
Use PeerId
in TestServer::disconnect_client
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-18 19:05:37 +02:00
Antonio Scandurra
2c4f003897
Tell clients their peer id on connection in Hello message
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-18 18:42:55 +02:00
Mikayla Maki
4b09f77950
WIP
2022-10-17 17:04:30 -07:00
Mikayla Maki
dbea3cf20c
Converted to using rusqlite
2022-10-17 17:04:30 -07:00
Antonio Scandurra
c4dde0f4e2
💄
2022-10-12 15:35:28 +02:00
Antonio Scandurra
ec19f0f8e9
Remove unnecessary async from Peer::add_connection
2022-10-12 15:32:39 +02:00
Antonio Scandurra
cc56fa9ea6
Introduce client-side timeout when trying to connect
2022-10-12 15:32:30 +02:00
Antonio Scandurra
afaacba41f
Merge remote-tracking branch 'origin/main' into room
2022-10-10 15:43:38 +02:00
Antonio Scandurra
d7cea646fc
Include a busy
field in proto::Contact
2022-10-07 12:21:56 +02:00
Antonio Scandurra
7763acbdd5
Move IncomingCall
into call
crate
2022-10-06 09:52:03 +02:00
Antonio Scandurra
55cc142319
Move incoming calls into ActiveCall
2022-10-06 09:50:26 +02:00
Antonio Scandurra
fceba6814f
Automatically share project when creating the room
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-10-04 19:25:48 +02:00
Max Brunsfeld
f3d83631ef
Remove unnecessary min_id_length option from amplitude requests
2022-10-03 12:13:27 -07:00
Max Brunsfeld
06813be5c8
Mark platform as "Zed" for telemetry events from the app
...
Co-authored-by: Joseph Lyons <joseph@zed.dev>
2022-10-03 11:05:45 -07:00
Max Brunsfeld
4477f95ee6
Set staff
user property in telemetry
...
Co-authored-by: Joseph Lyons <joseph@zed.dev>
2022-10-03 10:52:57 -07:00
Antonio Scandurra
1e45198b9f
Emit event on Room
when a user shares a new project
2022-10-03 17:12:07 +02:00
Max Brunsfeld
35a537dae0
Fix FakeServer to expect new GetPrivateUserInfo request
2022-09-29 14:34:15 -07:00
Max Brunsfeld
5d09083a7d
Identify users in amplitude via a separate 'metrics_id' UUID
2022-09-29 13:15:21 -07:00
Antonio Scandurra
b35e8f0164
Remove projects from contact updates
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-29 19:40:36 +02:00
Antonio Scandurra
e0db62173a
Rename room
crate to call
...
Also, rename `client::Call` to `client::IncomingCall`.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-29 17:24:31 +02:00
Antonio Scandurra
1158911560
Wire up accepting/declining a call
2022-09-29 15:33:33 +02:00
Max Brunsfeld
0d3486ca82
Remove TestTelemetry command
2022-09-28 15:50:17 -07:00
Max Brunsfeld
af7c2b8b47
Set minimum user id length in amplitude calls
2022-09-28 15:21:49 -07:00
Antonio Scandurra
80ab144bf3
Ring users upon connection if somebody was calling them before connecting
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-28 11:33:38 +02:00
Antonio Scandurra
573086eed2
Always rely on the server to cancel the incoming call
2022-09-28 11:33:38 +02:00
Antonio Scandurra
bb9ce86a29
Introduce the ability of declining calls
2022-09-28 11:33:38 +02:00
Antonio Scandurra
55b095cbd3
Implement joining a room and sending updates after people join/leave
2022-09-28 11:33:38 +02:00
Antonio Scandurra
4a9bf8f4fe
Introduce call infrastructure
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-28 11:33:38 +02:00
Antonio Scandurra
ebb5ffcedc
Introduce the ability of creating rooms on the server
2022-09-28 11:33:38 +02:00
Max Brunsfeld
3bd68128d7
Add command to view the telemetry log
...
Co-authored-by: Joseph Lyons <joseph@zed.dev>
2022-09-27 14:20:13 -07:00
Max Brunsfeld
f2db3abdb2
Always allow overriding amplitude API key via a runtime env var
2022-09-27 12:42:27 -07:00
Nathan Sobo
824fdb54e6
Report editor open and save events to Amplitude
...
Co-authored-by: Max Brunsfeld <max@zed.dev>
2022-09-26 18:18:34 -06:00
Max Brunsfeld
da36eb3b41
wip
2022-09-26 15:23:10 -07:00
Max Brunsfeld
4784dbe498
Link signups to users in telemetry via a stored device_id
...
Co-authored-by: Joseph Lyons <joseph@zed.dev>
2022-09-26 12:49:04 -07:00
Max Brunsfeld
04baccbea6
Start work on a client-side telemetry system
2022-09-23 12:23:12 -07:00
ForLoveOfCats
8ba2f77148
One big cleanup pass of clippy lints
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
Antonio Scandurra
a1d0d2ccc4
Add tests for client authentication while a previous sign in is pending
2022-08-02 14:28:47 +02:00
Antonio Scandurra
aa09bc527f
Allow signing in again if authentication is pending or was unsuccessful
...
The local server that we spin up to receive OAuth callbacks isn't
called when an error occurs and it is non-trivial to do so with
next-auth. Besides, there could be cases where the user explicitly
closes the browser window before the callback can be invoked.
With this commit, the user can sign in even while an authentication
is still in progress. As opposed to waiting for at most 10 minutes
before killing the local HTTP server if we haven't received the callback,
we will repeatedly check for a response every second for 100 seconds.
This gives us a chance to determine whether a new authentication has started
in the meantime and, if so, abort the current authentication flow.
2022-08-02 14:16:14 +02:00
Antonio Scandurra
b91d44b448
Respond with a debug version of the error in rpc Client
2022-07-07 11:52:56 +02:00
Max Brunsfeld
c5351a1276
Ensure that usernames, user ids, and client ids match in random collaboration test
...
This makes the logs easier to interpret
2022-06-30 14:51:22 -07:00
Antonio Scandurra
48ff443d10
Remove stray log statement when contacts are updated
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-06-22 19:40:52 +02:00
Max Brunsfeld
6a2c5e0dc1
Show upgrade required message when reconnecting after a protocol change
...
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-06-21 10:26:34 -07:00
Antonio Scandurra
c90e8c08a6
Accept a datetime range when querying project activity
2022-06-21 14:03:10 +02:00
Antonio Scandurra
68093342e7
Broadcast only visible worktree root names
2022-06-14 15:15:23 +02:00
Antonio Scandurra
3a69943df3
Require that PartialEq
is implemented for Action
2022-06-06 09:18:44 +02:00
Max Brunsfeld
24aafde1e8
Avoid persisting project's state before it has been initialized
2022-06-03 16:40:16 -07:00
Max Brunsfeld
36a4d31b5b
Keep unregistered projects' ids until pending contact updates are done
2022-06-02 18:04:54 -07:00
Max Brunsfeld
b70396b8fb
Disconnect FakeServer when dropping it
...
This prevents memory leak errors in tests, due to parked tasks waiting
for RPC responses.
2022-06-02 17:32:43 -07:00
Max Brunsfeld
7ef9de32b1
Show private projects in the contacts panel
...
Introduce a ProjectStore that lets you iterate through all open projects.
Allow projects to be made public by clicking the lock.
2022-06-02 17:29:11 -07:00
Antonio Scandurra
0597c662e4
Show contacts panel the first time a new user connects to collab
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-20 17:33:09 +02:00
Nathan Sobo
eedb8ba59f
Add affordance to copy user's invite link if they have a code
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-19 17:57:46 -06:00
Antonio Scandurra
2d986c7968
Show guest only once even if they joined on two different windows
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-17 16:21:09 +02:00
Nathan Sobo
d821e7a4c1
Cancel join requests when the requester closes the window
2022-05-16 20:29:36 -06:00
Max Brunsfeld
be51a58311
Start work on requesting to join projects
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-12 17:53:11 -07:00
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
Antonio Scandurra
10a872a370
Avoid reference cycle between Client
and its models
2022-03-01 10:55:05 +01:00