github.com/opzlabs/tendermint@v0.34.27-terra.rc.2/README.md (about) 1 # CometBFT 2 3 [Byzantine-Fault Tolerant][bft] [State Machine Replication][smr]. Or 4 [Blockchain], for short. 5 6 [![Version][version-badge]][version-url] 7 [![API Reference][api-badge]][api-url] 8 [![Go version][go-badge]][go-url] 9 [![Discord chat][discord-badge]][discord-url] 10 [![License][license-badge]][license-url] 11 [![Sourcegraph][sg-badge]][sg-url] 12 13 | Branch | Tests | Linting | 14 |---------|------------------------------------------|---------------------------------------| 15 | main | [![Tests][tests-badge]][tests-url] | [![Lint][lint-badge]][lint-url] | 16 | v0.37.x | [![Tests][tests-badge-v037x]][tests-url] | [![Lint][lint-badge-v037x]][lint-url] | 17 | v0.34.x | [![Tests][tests-badge-v034x]][tests-url] | [![Lint][lint-badge-v034x]][lint-url] | 18 19 CometBFT is a Byzantine Fault Tolerant (BFT) middleware that takes a 20 state transition machine - written in any programming language - and securely 21 replicates it on many machines. 22 23 It is a fork of [Tendermint Core][tm-core] and implements the Tendermint 24 consensus algorithm. 25 26 For protocol details, refer to the [CometBFT Specification](./spec/README.md). 27 28 For detailed analysis of the consensus protocol, including safety and liveness 29 proofs, read our paper, "[The latest gossip on BFT 30 consensus](https://arxiv.org/abs/1807.04938)". 31 32 ## Documentation 33 34 Complete documentation can be found on the 35 [website](https://docs.cometbft.com/). 36 37 ## Releases 38 39 Please do not depend on `main` as your production branch. Use 40 [releases](https://github.com/cometbft/cometbft/releases) instead. 41 42 We haven't released v1.0 yet 43 since we are making breaking changes to the protocol and the APIs. See below for 44 more details about [versioning](#versioning). 45 46 In any case, if you intend to run CometBFT in production, we're happy to help. 47 48 To contact us, you can also 49 [join the chat](https://discord.com/channels/669268347736686612/669283915743232011). 50 51 More on how releases are conducted can be found [here](./RELEASES.md). 52 53 ## Security 54 55 To report a security vulnerability, see our [bug bounty 56 program](https://hackerone.com/cosmos). For examples of the kinds of bugs we're 57 looking for, see [our security policy](SECURITY.md). 58 59 ## Minimum requirements 60 61 | Requirement | Notes | 62 |-------------|-------------------| 63 | Go version | Go 1.19 or higher | 64 65 ### Install 66 67 See the [install instructions](./docs/introduction/install.md). 68 69 ### Quick Start 70 71 - [Single node](./docs/introduction/quick-start.md) 72 - [Local cluster using docker-compose](./docs/networks/docker-compose.md) 73 74 ## Contributing 75 76 Please abide by the [Code of Conduct](CODE_OF_CONDUCT.md) in all interactions. 77 78 Before contributing to the project, please take a look at the [contributing 79 guidelines](CONTRIBUTING.md) and the [style guide](STYLE_GUIDE.md). You may also 80 find it helpful to read the [specifications](./spec/README.md), and familiarize 81 yourself with our [Architectural Decision Records 82 (ADRs)](./docs/architecture/README.md) and [Request For Comments 83 (RFCs)](./docs/rfc/README.md). 84 85 ## Versioning 86 87 ### Semantic Versioning 88 89 CometBFT uses [Semantic Versioning](http://semver.org/) to determine when and 90 how the version changes. According to SemVer, anything in the public API can 91 change at any time before version 1.0.0 92 93 To provide some stability to users of 0.X.X versions of CometBFT, the MINOR 94 version is used to signal breaking changes across CometBFT's API. This API 95 includes all publicly exposed types, functions, and methods in non-internal Go 96 packages as well as the types and methods accessible via the CometBFT RPC 97 interface. 98 99 Breaking changes to these public APIs will be documented in the CHANGELOG. 100 101 ### Upgrades 102 103 In an effort to avoid accumulating technical debt prior to 1.0.0, we do not 104 guarantee that breaking changes (i.e. bumps in the MINOR version) will work with 105 existing CometBFT blockchains. In these cases you will have to start a new 106 blockchain, or write something custom to get the old data into the new chain. 107 However, any bump in the PATCH version should be compatible with existing 108 blockchain histories. 109 110 For more information on upgrading, see [UPGRADING.md](./UPGRADING.md). 111 112 ### Supported Versions 113 114 Because we are a small core team, we have limited capacity to ship patch 115 updates, including security updates. Consequently, we strongly recommend keeping 116 CometBFT up-to-date. Upgrading instructions can be found in 117 [UPGRADING.md](./UPGRADING.md). 118 119 Currently supported versions include: 120 121 - v0.34.x: CometBFT v0.34.25 is compatible with Tendermint Core v0.34.24 122 - v0.37.x: (release candidate) 123 124 ## Resources 125 126 ### Libraries 127 128 - [Cosmos SDK](http://github.com/cosmos/cosmos-sdk); A framework for building 129 applications in Golang 130 - [Tendermint in Rust](https://github.com/informalsystems/tendermint-rs) 131 - [ABCI Tower](https://github.com/penumbra-zone/tower-abci) 132 133 ### Applications 134 135 - [Cosmos Hub](https://hub.cosmos.network/) 136 - [Terra](https://www.terra.money/) 137 - [Celestia](https://celestia.org/) 138 - [Anoma](https://anoma.network/) 139 - [Vocdoni](https://docs.vocdoni.io/) 140 141 ### Research 142 143 Below are links to the original Tendermint consensus algorithm and relevant 144 whitepapers which CosmosBFT will continue to build on. 145 146 - [The latest gossip on BFT consensus](https://arxiv.org/abs/1807.04938) 147 - [Master's Thesis on Tendermint](https://atrium.lib.uoguelph.ca/xmlui/handle/10214/9769) 148 - [Original Whitepaper: "Tendermint: Consensus Without Mining"](https://tendermint.com/static/docs/tendermint.pdf) 149 150 ## Join us 151 152 CometBFT is currently maintained by [Informal 153 Systems](https://informal.systems). If you'd like to work full-time on CometBFT, 154 [we're hiring](https://informal.systems/careers)! 155 156 Funding for CometBFT development comes primarily from the [Interchain 157 Foundation](https://interchain.io), a Swiss non-profit. Informal Systems also 158 maintains [cometbft.com](https://cometbft.com). 159 160 [bft]: https://en.wikipedia.org/wiki/Byzantine_fault_tolerance 161 [smr]: https://en.wikipedia.org/wiki/State_machine_replication 162 [Blockchain]: https://en.wikipedia.org/wiki/Blockchain 163 [version-badge]: https://img.shields.io/github/v/release/cometbft/cometbft.svg 164 [version-url]: https://github.com/cometbft/cometbft/releases/latest 165 [api-badge]: https://camo.githubusercontent.com/915b7be44ada53c290eb157634330494ebe3e30a/68747470733a2f2f676f646f632e6f72672f6769746875622e636f6d2f676f6c616e672f6764646f3f7374617475732e737667 166 [api-url]: https://pkg.go.dev/github.com/cometbft/cometbft 167 [go-badge]: https://img.shields.io/badge/go-1.19-blue.svg 168 [go-url]: https://github.com/moovweb/gvm 169 [discord-badge]: https://img.shields.io/discord/669268347736686612.svg 170 [discord-url]: https://discord.gg/cosmosnetwork 171 [license-badge]: https://img.shields.io/github/license/cometbft/cometbft.svg 172 [license-url]: https://github.com/cometbft/cometbft/blob/main/LICENSE 173 [sg-badge]: https://sourcegraph.com/github.com/cometbft/cometbft/-/badge.svg 174 [sg-url]: https://sourcegraph.com/github.com/cometbft/cometbft?badge 175 [tests-url]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml 176 [tests-badge]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=main 177 [tests-badge-v037x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=v0.37.x 178 [tests-badge-v034x]: https://github.com/cometbft/cometbft/actions/workflows/tests.yml/badge.svg?branch=v0.34.x 179 [lint-badge]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=main 180 [lint-badge-v034x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=v0.34.x 181 [lint-badge-v037x]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml/badge.svg?branch=v0.37.x 182 [lint-url]: https://github.com/cometbft/cometbft/actions/workflows/lint.yml 183 [tm-core]: https://github.com/tendermint/tendermint 184 # tendermint-v0.34.27-terra.rc.1