mirror of
https://github.com/tendermint/tendermint.git
synced 2026-02-03 02:22:04 +00:00
22 lines
1.2 KiB
Markdown
22 lines
1.2 KiB
Markdown
# 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:
|
|
|
|
- [Block](../spec/core/data_structures.md)
|
|
- [ABCI](../spec/abci/README.md)
|
|
- [P2P](../spec/p2p/messages/README.md)
|
|
|
|
## 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](../rfc/README.md) 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](../spec/core/data_structures.md) and/or [ABCI protocol](../spec/abci/apps.md).
|
|
3. Rebuild the Go protocol buffers by running `make proto-gen`. Ensure that the project builds correctly by running `make build`.
|