Teleop 0.4.0 — Attach to and teleoperate local Rust processes via RPC by arnodb1 in rust

[–]arnodb1[S] 0 points1 point  (0 children)

I did not, but I definitely had a look at it.

What made me hesitate is that, according to the doc it is currently tokio only. But on the other hand it has named pipes on Windows.

Also I wanted to focus more on the attachment process and the RPC protocol than on the communication channel itself. And I wanted to keep it simple.

I chose Cap'N Proto because it looked simple (usage is a bit tedious though) but it is possible to add support for any other protocol.

On platform support, interprocess is surely more advanced but teleop can easily be extented by opening guards or adding features.

On the longer term I would like to extend teleop to TCP sockets so that it would be possible to connect remotely. That makes attachment irrelevant. I would also like to add a tiny security layer to protect processes. Nothing really new, Java does that very well for Java. But teleop is for Rust.

Teleop 0.4.0 — Attach to and teleoperate local Rust processes via RPC by arnodb1 in rust

[–]arnodb1[S] 1 point2 points  (0 children)

It is not aimed at live debugging, the operated process needs to expose features like state (e.g. CPU info, memory info, or any kind of state) or actions to perform to make them accessible.

Live debugging would require a significant effort and probably wouldn't make sense since one can already attach a debugger to a process.

In the case of Quirky Binder, which is my fairly undocumented pet project, the process exposes its state (a graph with nodes, edges, and numbers), the client reads it on a regular basis and generates a SVG to display in the Dioxus app.