ttrpc-rust icon indicating copy to clipboard operation
ttrpc-rust copied to clipboard

Rust implementation of ttrpc (GRPC for low-memory environments)

Results 34 ttrpc-rust issues
Sort by recently updated
recently updated
newest added

[Streaming](https://github.com/containerd/ttrpc/blob/main/PROTOCOL.md#streaming) is already supported by golang's ttrpc in https://github.com/containerd/ttrpc/pull/107. The rust implementation will also follow. ### changes: - [x] Protocol modification to support Streaming. - [x] Client modification to support...

There are two types of checking different OSs: https://github.com/containerd/ttrpc-rust/blob/212d2211d3da7769a3b2bb5ee2f59db802cfb3a3/src/sync/server.rs#L335-L341 https://github.com/containerd/ttrpc-rust/blob/dfae1ad06ec29d93ed76dfcf3e931168cd1d426a/src/common.rs#L120-L123 Should these use the consistent way, for example, the pairs of: - target_os = "linux" and target_os = "macos" -...

There is a desire to get Windows support in https://github.com/containerd/rust-extensions/issues/4. Since the shim crate mainly depends on ttrpc-rust, I think it make sense to add windows support / CI checks...

Fixes #219 Switches to using https://rust-lang.github.io/rustup/overrides.html#the-toolchain-file

Currently the send() method of stream implemented by send the value to an unbounded channel, so even the connection is closed for a long time, the send function still return...

The stream request and data is handle asynchronously, if the data is handled when stream is not created yet, the data will be discarded and an error occur. we should...

The empty request is determined by whether FLAG_NO_DATA is set after #208 , but golang ttrpc seems not set this flag even it is an empty request. https://github.com/containerd/ttrpc/blob/main/client.go#L495. Shall we...

Cargo.toml ``` ttrpc = { version = "0.8", features = ["async"] } ``` Got following fail: ``` cargo build --examples error: package `home v0.5.9` cannot be built because it requires...

2024-02-01T03:08:50.597180315+00:00 [TRACE] /home/teawater/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ttrpc-0.8.1/src/asynchronous/connection.rs:62 - write message: GenMessage { header: MessageHeader { length: 2, stream} 2024-02-01T03:08:50.600292291+00:00 [TRACE] /home/teawater/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ttrpc-0.8.1/src/asynchronous/connection.rs:99 - Read msg err: Socket("early eof") 2024-02-01T03:08:50.600722855+00:00 [TRACE] /home/teawater/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ttrpc-0.8.1/src/asynchronous/connection.rs:112 - Reader task exit....

# Description of problem The async server does not detect if a client disconnects ungracefully from a streaming API. For example, let's say a client wishes to subscribe to updates...