grpc-rs
grpc-rs copied to clipboard
Upgrade protobuf 3
Protobuf 3 is current stable version. Compared to version 2 it implements:
- runtime reflection
- JSON and text format parsing and printing
- dynamic messages (messages which can be created from .proto file on the fly without code generation)
https://github.com/stepancheg/rust-protobuf/#versions-and-branches
Is this update on the roadmap?
No. I'm happy to accept a PR if anyone want to contribute. Just make sure people can still using protobuf 2 via features.
@BusyJay curious, why not?
We were lack of resource at that time. I will work on this these days if no one wants to give a try.
Do you still need to keep protobuf 2 around via features, or will that be changed eventually, too?
Yes, I will keep pb 2 via features. Though may enable pb 3 by default.
I can see rust-protobuf is not active for the past months. And the README also calls for help for maintenance.
The reason why we stick to rust-protobuf 2 is that it has been on production for quite a long time, it seems a more stable version unless we require the new features.
Also, protobuf team seems to be implementing their own Rust version: https://github.com/protocolbuffers/protobuf/commit/89d6b74dea804995488980c44d3f53855e926d69.
I would like to receive more feedbacks on this issue.
I mostly use tonic/prost at work -- mainly here as a maintainer for opentelemetry-rust which in a number of crates supports both gRPC stacks. Curious if you think it will ever make sense for TiKV to migrate to tonic/prost?
No, TiKV may probably stick to grpc-rs. Switching to other protobuf implementation is more likely compared to switching grpc implementation.
Looks like this may have been resolved in https://github.com/tikv/grpc-rs/pull/615 ?
Yes.