You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

66 lines
1.8 KiB

package version
var (
// GitCommit is the current HEAD set using ldflags.
GitCommit string
// Version is the built softwares version.
Version string = TMCoreSemVer
)
func init() {
if GitCommit != "" {
Version += "-" + GitCommit
}
}
const (
// TMCoreSemVer is the current version of Tendermint Core.
// It's the Semantic Version of the software.
// Must be a string because scripts like dist.sh read this file.
// XXX: Don't change the name of this variable or you will break
// automation :)
TMCoreSemVer = "0.31.0"
// ABCISemVer is the semantic version of the ABCI library
ABCISemVer = "0.16.0"
ABCIVersion = ABCISemVer
)
// Protocol is used for implementation agnostic versioning.
type Protocol uint64
// Uint64 returns the Protocol version as a uint64,
// eg. for compatibility with ABCI types.
func (p Protocol) Uint64() uint64 {
return uint64(p)
}
var (
// P2PProtocol versions all p2p behaviour and msgs.
// This includes proposer selection.
P2PProtocol Protocol = 7
// BlockProtocol versions all block data structures and processing.
// This includes validity of blocks and state updates.
BlockProtocol Protocol = 10
)
//------------------------------------------------------------------------
// Version types
// App includes the protocol and software version for the application.
// This information is included in ResponseInfo. The App.Protocol can be
// updated in ResponseEndBlock.
type App struct {
Protocol Protocol `json:"protocol"`
Software string `json:"software"`
}
// Consensus captures the consensus rules for processing a block in the blockchain,
// including all blockchain data structures and the rules of the application's
// state transition machine.
type Consensus struct {
Block Protocol `json:"block"`
App Protocol `json:"app"`
}