grpc-rs icon indicating copy to clipboard operation
grpc-rs copied to clipboard

Upgrade protobuf 3

Open dertin opened this issue 3 years ago • 1 comments

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?

dertin avatar Aug 10 '22 12:08 dertin

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 avatar Aug 10 '22 13:08 BusyJay

@BusyJay curious, why not?

djc avatar Feb 13 '23 09:02 djc

We were lack of resource at that time. I will work on this these days if no one wants to give a try.

BusyJay avatar Feb 13 '23 09:02 BusyJay

Do you still need to keep protobuf 2 around via features, or will that be changed eventually, too?

djc avatar Feb 13 '23 09:02 djc

Yes, I will keep pb 2 via features. Though may enable pb 3 by default.

BusyJay avatar Feb 13 '23 10:02 BusyJay

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.

BusyJay avatar Feb 14 '23 12:02 BusyJay

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?

djc avatar Feb 14 '23 12:02 djc

No, TiKV may probably stick to grpc-rs. Switching to other protobuf implementation is more likely compared to switching grpc implementation.

BusyJay avatar Feb 15 '23 04:02 BusyJay

Looks like this may have been resolved in https://github.com/tikv/grpc-rs/pull/615 ?

andrewbaxter avatar Jan 04 '24 12:01 andrewbaxter

Yes.

BusyJay avatar Feb 02 '24 02:02 BusyJay