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