**Rationale:** Having two separate servers and communication methods resulted in additional maintenance & the need to convert often between backend & frontend data types. By moving the backend communication off of gRPC and to just use websockets it both gives more control & allows for simplification of the implementation. #8 **Changes:** - Replaces gRPC backend. - New implementation automatically handles reconnect logic - Implements an api layer - Migrates examples to the api layer - Implements a proc macro to make command handling easier - Implements unit tests for the api layer (90+% coverage) - Implements integration tests for the proc macro (90+% coverage) Reviewed-on: #10 Co-authored-by: Sergey Savelyev <sergeysav.nn@gmail.com> Co-committed-by: Sergey Savelyev <sergeysav.nn@gmail.com>
26 lines
846 B
TOML
26 lines
846 B
TOML
|
|
[package]
|
|
name = "server"
|
|
edition = "2021"
|
|
version = "0.1.0"
|
|
authors = ["Sergey <me@sergeysav.com>"]
|
|
|
|
[dependencies]
|
|
actix-web = { workspace = true, features = [ ] }
|
|
actix-ws = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
api = { path = "../api" }
|
|
chrono = { workspace = true }
|
|
derive_more = { workspace = true, features = ["from"] }
|
|
fern = { workspace = true, features = ["colored"] }
|
|
futures-util = { workspace = true }
|
|
log = { workspace = true }
|
|
papaya = { workspace = true }
|
|
serde = { workspace = true, features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
sqlx = { workspace = true, features = [ "runtime-tokio", "tls-rustls-ring-native-roots", "sqlite" ] }
|
|
thiserror = { workspace = true }
|
|
tokio = { workspace = true, features = ["rt-multi-thread", "signal", "fs"] }
|
|
tokio-util = { workspace = true }
|
|
uuid = { workspace = true }
|