-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update cometbft-proto to protobufs in CometBFT v1.0 (pre-release) #7
Conversation
Generate from the new structure with versioned proto files.
These are no longer going to be generated with the switch to versioned cometbft.* protos.
Bulk change committing output of the recently changed proto-compiler.
The generated struct types only come from cometbft::* modules generated from versioned protobufs. Update the imports and manually written implementations.
Convert imports and the provided conversions to/from the protobuf structs to the version structure of cometbft_proto.
Move the versions under the abci module and make the names match the proto package names.
The dialect of 0.37 is now known as 1.0.
Add a flag for proto-compiler that was not copied from abci.v1beta1.ResponseInfo
The custom serialization attributes were not copied over from v1beta1.ResponseInfo to v1.InfoResponse.
When decoding pre-0.38 messages, the "extension" and "extension_signature" fields are not present. Previously, this worked because the v0_37 version of the generated struct was used; this, on the other hand, resulted in the extension fields not being properly decoded in RPC with 0.38+ nodes.
Notes for reviewersAs previously, changes under The important changes are in
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes to the proto-compiler look good to me, need more time to review the actual changes to the generated protos.
Don't we want to keep the |
In fact, 1.0 adds versioning in RPC request paths, so it may be useful to distinguish three modes: 0.34, 0.37/0.38, and 1.0 which will mean requests prefixed with |
Yeah that sounds like the way to go!
Sounds good, let's proceed like that then. |
Will do V1 as version-prefixed requests.
I have restored Note that the |
Awesome 🚀 |
CompatMode::V1 is not there yet, but dialect::v1 deserves a mention.
This turned out to be not so simple, and not consistent with the Go API, so I essentially went back to the rename in #11 |
Resolves #9
.changelog/