Files
tendermint/proto
William Banfield 43313e9b85 abci++: add proto fields for enabling vote extensions (#8587)
This pull requests adds the protocol buffer field for the `ABCI.VoteExtensionsEnableHeight` parameter. This proto field is threaded throughout all of the relevant places where consensus params are used and referenced.

This PR also adds validation of the consensus param updates. Previous consensus param changes didn't depend on _previous_ versions of the params, so this change adds a method for validating against the old params as well.

closes: #8453
2022-05-23 18:23:23 +00:00
..
2022-03-29 12:07:12 -07:00

Protocol Buffers

This sections defines the protocol buffers used in Tendermint. This is split into two directories: spec, the types required for all implementations and tendermint, a set of types internal to the Go implementation. All generated go code is also stored in tendermint. More descriptions of the data structures are located in the spec directory as follows:

Process to generate protos

The .proto files within this section are core to the protocol and updates must be treated as such.

Steps

  1. Make an issue with the proposed change.
    • Within the issue members, from the Tendermint team will leave comments. If there is not consensus on the change an RFC may be requested. 1a. Submission of an RFC as a pull request should be made to facilitate further discussion. 1b. Merge the RFC.
  2. Make the necessary changes to the .proto file(s), core data structures and/or ABCI protocol.
  3. Rebuild the Go protocol buffers by running make proto-gen. Ensure that the project builds correctly by running make build.