
This PR abstracts the communication layer for context servers, laying the groundwork for supporting multiple transport mechanisms and taking one step towards enabling remote servers. Key changes centre around creating a new `Transport` trait with methods for sending and receiving messages. I've implemented this trait for the existing stdio-based communication, which is now encapsulated in a `StdioTransport` struct. The `Client` struct has been refactored to use this new `Transport` trait instead of directly managing stdin and stdout. The next steps will involve implementing an SSE + HTTP transport and defining alternative context server settings for remote servers. Release Notes: - N/A --------- Co-authored-by: Marshall Bowers <git@maxdeviant.com>
34 lines
776 B
TOML
34 lines
776 B
TOML
[package]
|
|
name = "context_server"
|
|
version = "0.1.0"
|
|
edition.workspace = true
|
|
publish.workspace = true
|
|
license = "GPL-3.0-or-later"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[lib]
|
|
path = "src/context_server.rs"
|
|
|
|
[dependencies]
|
|
anyhow.workspace = true
|
|
assistant_tool.workspace = true
|
|
async-trait.workspace = true
|
|
collections.workspace = true
|
|
command_palette_hooks.workspace = true
|
|
context_server_settings.workspace = true
|
|
extension.workspace = true
|
|
futures.workspace = true
|
|
gpui.workspace = true
|
|
log.workspace = true
|
|
parking_lot.workspace = true
|
|
postage.workspace = true
|
|
project.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
settings.workspace = true
|
|
smol.workspace = true
|
|
url = { workspace = true, features = ["serde"] }
|
|
util.workspace = true
|
|
workspace.workspace = true
|