mirror of
https://github.com/emilk/egui.git
synced 2026-09-03 15:20:05 -04:00
egui_kittest_mcp: cross-platform local socket via interprocess
Port the bridge listener (was tokio::net::UnixListener) and the shim client (was std::os::unix::net::UnixStream) to the interprocess crate, so the MCP inspection transport builds and runs on Windows (named pipe) as well as unix/macOS (unix domain socket). - bridge: bind via interprocess local_socket::tokio Listener + ListenerOptions; accept() yields a single Stream, split into async halves. read/write_message are now generic over AsyncRead/AsyncWrite. - shim: connect via interprocess sync Stream and split for the byte relay; closing the write direction is done by dropping the send half. - Allocate/parse socket names through egui_inspection::transport, so both ends agree on the platform-specific mapping. Drop the now-unused tempfile dep. - Add a transport round-trip test (tokio listener <-> sync client).
This commit is contained in:
@@ -18,8 +18,9 @@ path = "src/main.rs"
|
||||
|
||||
[dependencies]
|
||||
egui_kittest = { workspace = true, features = ["inspector_api", "wgpu", "snapshot"] }
|
||||
egui_inspection = { workspace = true, features = ["protocol"] }
|
||||
egui_inspection = { workspace = true, features = ["protocol", "transport"] }
|
||||
egui.workspace = true
|
||||
interprocess = { version = "2.4", features = ["tokio"] }
|
||||
accesskit.workspace = true
|
||||
accesskit_consumer.workspace = true
|
||||
image = { workspace = true, features = ["png"] }
|
||||
@@ -28,7 +29,6 @@ serde = { workspace = true, features = ["derive"] }
|
||||
serde_json = "1.0"
|
||||
schemars = "1.0"
|
||||
rmcp = { version = "1.7", features = ["server", "macros", "transport-io", "schemars"] }
|
||||
tempfile.workspace = true
|
||||
tokio = { version = "1.49", features = [
|
||||
"rt-multi-thread",
|
||||
"io-std",
|
||||
|
||||
Reference in New Issue
Block a user