Commit Graph
59 Commits
Author SHA1 Message Date
Joseph T. Lyons af2da0f2f3 Add users to mailing list when using an invite link 2023-01-17 16:46:01 -05:00
Antonio Scandurra 3fac823050 Merge branch 'main' into reconnections-2 2022-12-02 19:09:33 +01:00
Antonio Scandurra 8a5f89eb56 Use i32 to represent Postgres INTEGER types in Rust 2022-12-02 13:58:54 +01:00
Antonio Scandurra 4229c49a0c Replace i32 with u32 for database columns
We never expect to return signed integers and so we shouldn't use
a signed type. I think this was a limitation of sqlx.
2022-12-01 17:47:51 +01:00
Antonio Scandurra 40f2e5730b Start using the new sea-orm backed database 2022-12-01 14:41:59 +01:00
Joseph Lyons 3e14be2bb7 allow users to sign up multiple times without throwing a 500 2022-11-15 20:04:56 -05:00
Max BrunsfeldandAntonio Scandurra 1a3ad561a0 Get integration tests passing with sqlite
Co-authored-by: Antonio Scandurra <antonio@zed.dev>
2022-11-10 11:03:52 -08:00
Antonio Scandurra 231fc0f698 Merge branch 'main' into screen-sharing
# Conflicts:
#	crates/collab/src/integration_tests.rs
#	crates/collab/src/main.rs
#	styles/src/styleTree/workspace.ts
2022-10-21 14:29:45 +02:00
3700985491 Return an optional response when creating users via invites
If the user already exists, we return none. This will allow the web frontend
to avoid reporting a "join alpha" user event but also not error.

Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Joseph Lyons <joseph@zed.dev>
2022-10-20 10:52:34 -06:00
Antonio Scandurra aece1d4b9a Delete all live-kit rooms when server is shut down 2022-10-20 14:34:05 +02:00
Max Brunsfeld 40d380a300 Allow impersonating users via the api token, bypassing oauth 2022-10-18 17:36:54 -07:00
Max Brunsfeld 800e91de9f Store entire Config struct on collab AppState 2022-10-18 13:58:03 -07:00
Max Brunsfeld 8cebb04a0f Identify users in amplitude via a separate 'metrics_id' UUID 2022-09-29 13:15:21 -07:00
Max BrunsfeldandJoseph Lyons c623418bcb Make device_id optional on signups table
This way, signup won't fail if for some reason, the
user's client-side JS doesn't provide an amplitude
device id.

Co-authored-by: Joseph Lyons <joseph@zed.dev>
2022-09-27 16:04:01 -07:00
Max BrunsfeldandJoseph Lyons be778209ee 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 BrunsfeldandNathan Sobo e24b305f5b Return the metrics id from the signup-creation API
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-09-22 14:37:25 -07:00
Max Brunsfeld a962bb8114 Update user retrieval API to take both github user id and github login 2022-09-20 15:41:00 -07:00
Max Brunsfeld 15da5c9c96 Start storing users' github user id 2022-09-20 09:44:56 -07:00
Max Brunsfeld 334f5995cf Remove bulk user creation admin API 2022-09-19 14:34:37 -07:00
Max Brunsfeld 9e2651847b Add waitlist summary API 2022-09-19 14:19:00 -07:00
Max Brunsfeld 0768e2b26f Update APIs and DB interactions to reflect email confirmation step 2022-09-19 14:19:00 -07:00
Max BrunsfeldandNathan Sobo 5d542ae0a6 Add collab APIs for new signup flow
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-09-19 14:19:00 -07:00
ForLoveOfCatsandMikayla fbea44bc5c One big cleanup pass of clippy lints
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
Antonio Scandurra 45a6d04eb4 Allow querying active user counts for people that have collaborated 2022-07-18 10:29:10 +02:00
Max Brunsfeld dad538b510 Allow the web client to specify activity bucket durations 2022-07-15 16:46:44 -07:00
Max Brunsfeld e817042e8d Add admin API for counting users with a given amount of activity 2022-07-15 16:46:44 -07:00
Max Brunsfeld 04d2c7f36a Add rest API for user activity timeline 2022-06-28 15:40:48 -07:00
Max Brunsfeld 9d3cddede7 🎨 Tweak some names dealing with user activity
* Rename `project_activity_summary` to `top_users_activity_summary`
to make clearer the distinction between it and the per-user summary.
* Rename `user_activity_summary` to `user_activity_timeline`, since
its output is structured a bit differently than the courser-grained
"summary" returned by the top-user query.
* Rename `ActivityDuration` -> `ActivityPeriod`
2022-06-28 15:37:56 -07:00
Nathan Sobo 5de8f54370 Allow users with no invites to be fetched from the API 2022-06-24 09:57:52 -06:00
Antonio Scandurra e9c59b3cff WIP 2022-06-24 17:21:58 +02:00
Antonio Scandurra d240b4920a Expose project metadata via GET /project_metadata 2022-06-21 18:06:31 +02:00
Antonio Scandurra 72f3ffe284 Accept a datetime range when querying project activity 2022-06-21 14:03:10 +02:00
Max Brunsfeld 46d614d62f Add an API that returns the most active users and the projects where they've been active 2022-06-20 19:46:37 -07:00
Antonio Scandurra a92e888419 Merge branch 'main' into users-api 2022-06-14 11:14:16 +02:00
Antonio Scandurra 6988a24297 Allow specifying query, limit and page when hitting /api/users
This is needed to introduce pagination and search in our admin panel.
2022-06-13 17:30:01 +02:00
Antonio Scandurra ce8444afb7 Expose a new POST /api/bulk_users API to create many users at once
This API will accept a vector of JSON entries containing the GitHub login,
the email address and the invite count. If that user already exist, the
invite count will be updated to the new one.
2022-06-13 15:18:18 +02:00
Max Brunsfeld 5b61e763be Update connected users' invite info when they are granted invite codes 2022-06-06 11:14:01 -07:00
Antonio Scandurra ce06f5ef2a Pretty-print JSON of server snapshot 2022-05-26 09:34:39 +02:00
Nathan Sobo 1ba10ddfb4 Implement /rpc_server_snapshot endpoint
This returns a JSON snapshot of the state of the server
2022-05-25 17:42:25 -06:00
Nathan Sobo ed5f5dc722 Accept an optional email address when creating new users 2022-05-20 20:25:21 -06:00
Antonio Scandurra d3a80c0f7c Update users and invite count after an invite gets redeemed 2022-05-20 12:02:31 +02:00
Nathan SoboandAntonio Scandurra a10b9e8c4c Add ability to get the user for an invite code in collab API
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-19 12:35:07 -06:00
Nathan Sobo 7f9e1b321a WIP 2022-05-18 16:14:58 -06:00
Nathan Sobo 304aa0d74a WIP 2022-05-18 11:51:47 -06:00
Nathan SoboandAntonio Scandurra 0331fdef6d Return 404 from API if no user is found
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-18 10:32:58 -06:00
Nathan SoboandAntonio Scandurra 597e0563fa Add ability to update invite count to collab API
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-18 10:23:08 -06:00
Antonio Scandurra ca0b11e071 Rename "crash" to "panic"
We are not really sending crash reports but Rust panics, so might
as well be clear about that.
2022-05-02 17:36:56 +02:00
Antonio Scandurra 2a52ade154 Retrieve app version from crash rather than from current binary
The crash might have been generated weeks before and the app may
have been updated since then.
2022-05-02 15:34:05 +02:00
Antonio Scandurra fdd3da71f9 Capture crash reports and upload them the next time Zed launches 2022-05-02 15:17:43 +02:00
Nathan SoboandAntonio Scandurra cad80ce355 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