zed/crates/collab
Marshall Bowers b6af393e6d
Enable clippy::borrow_deref_ref (#8894)
This PR enables the
[`clippy::borrow_deref_ref`](https://rust-lang.github.io/rust-clippy/master/index.html#/borrow_deref_ref)
rule and fixes the outstanding violations.

Release Notes:

- N/A
2024-03-05 12:24:54 -05:00
..
k8s Request more resources for collab pods on Kubernetes (#8890) 2024-03-05 09:15:08 -07:00
migrations hosted projects (#8627) 2024-03-04 19:17:40 -07:00
migrations.sqlite hosted projects (#8627) 2024-03-04 19:17:40 -07:00
src Enable clippy::borrow_deref_ref (#8894) 2024-03-05 12:24:54 -05:00
.admins.default.json
.env.toml
admin_api.conf
basic.conf
Cargo.toml Move Clippy configuration to the workspace level (#8891) 2024-03-05 12:01:17 -05:00
LICENSE-AGPL
README.md

Zed Server

This crate is what we run at https://collab.zed.dev.

It contains our back-end logic for collaboration, to which we connect from the Zed client via a websocket after authenticating via https://zed.dev, which is a separate repo running on Vercel.

Local Development

Detailed instructions on getting started are here.

Deployment

We run two instances of collab:

Both of these run on the Kubernetes cluster hosted in Digital Ocean.

Deployment is triggered by pushing to the collab-staging (or collab-production) tag in Github. The best way to do this is:

  • ./script/deploy-collab staging
  • ./script/deploy-collab production

You can tell what is currently deployed with ./script/what-is-deployed.

Database Migrations

To create a new migration:

./script/sqlx migrate add <name>

Migrations are run automatically on service start, so run foreman start again. The service will crash if the migrations fail.

When you create a new migration, you also need to update the SQLite schema that is used for testing.