All Versions
123
Latest Version
Avg Release Cycle
28 days
Latest Release
20 days ago

Changelog History
Page 1

  • v0.34.0-rc6

    November 05, 2020

    November 5, 2020

    Friendly reminder: We have a bug bounty program.

    ๐Ÿ’ฅ BREAKING CHANGES

    • [evidence] #5610 Make it possible for abci evidence to be formed from tm evidence (@cmwaters)
      • This makes breaking changes to DuplicateVoteEvidence and LightClientAttackEvidence such that ABCI evidence can be reconstructed from these types, and is necessary for nodes to successfully sync to block heights with recorded evidence
    • ๐Ÿš€ [version] #5527 We've updated our release tooling, and version.Version is now version.TMCoreSemVer (@marbar3778)

    ๐Ÿ‘Œ IMPROVEMENTS

    • [statesync] #5516 Check that all heights necessary to rebuild state for a snapshot exist before adding the snapshot to the pool. (@erikgrinaker)

    ๐Ÿ› BUG FIXES

    • [blockchain/v2] #5499 Fix "duplicate block enqueued by processor" panic (@melekes)
    • [abci/grpc] #5520 Return async responses in order, to avoid mempool panics. (@erikgrinaker)
    • [blockchain/v2] #5530 Fix "processed height 4541 but expected height 4540" panic (@melekes)
    • [consensus/wal] Fix WAL autorepair by opening target WAL in read/write mode (@erikgrinaker)
    • [block] #5567 Fix MaxCommitSigBytes (@cmwaters)
    • ๐Ÿšš [blockchain/v2] #5553 Make the removal of an already removed peer a noop (@melekes)
    • [evidence] #5574 Fix bug where node sends committed evidence to peer (@cmwaters)
    • [privval] #5583 Make Vote, Proposal & PubKey non-nullable in Responses (@marbar3778)
    • 0๏ธโƒฃ [light] #5392 Make light client home directory same as the full node default (@cmwaters)
  • v0.34.0-rc5

    October 13, 2020

    October 13, 2020

    Friendly reminder, we have a bug bounty program.

    ๐Ÿ’ฅ BREAKING CHANGES

    • CLI/RPC/Config

    • Apps

      • [ABCI] #5447 Remove SetOption method from ABCI.Client interface
    • P2P Protocol

    • Go API

      • [evidence] #5499 MaxNum evidence consensus parameter has been changed to MaxBytes (@cmwaters)
    • Blockchain Protocol

    ๐Ÿ”‹ FEATURES

    ๐Ÿ‘Œ IMPROVEMENTS

    • [privval] #5434 NewSignerDialerEndpoint can now be given SignerServiceEndpointOption (@erikgrinaker)

    • ๐Ÿ”ง [config] #5433 statesync.rpc_servers is now properly set when writing the configuration file (@erikgrinaker)

    ๐Ÿ› BUG FIXES

    • ๐Ÿ”Š [privval] #5441 Fix faulty ping message encoding causing nil message errors in logs (@erikgrinaker)
  • v0.34.0-rc4

    September 24, 2020

    September 24, 2020

    Friendly reminder, we have a bug bounty program.

    ๐Ÿ’ฅ BREAKING CHANGES

    • CLI/RPC/Config

      • [config] #5315 Rename prof_laddr to pprof_laddr and move it to rpc section (@melekes)
      • [rpc] #5315 Remove /unsafe_start_cpu_profiler, /unsafe_stop_cpu_profiler and /unsafe_write_heap_profile. Please use pprof functionality instead (@melekes)
      • [rpc/client, rpc/jsonrpc/client] #5347 All client methods now accept context.Context as 1st param (@melekes)
    • Apps

      • [abci] #5324 abci evidence type is an enum with two types of possible evidence (@cmwaters)
    • P2P Protocol

      • [mempool] #5321 Batch transactions when broadcasting them to peers (@melekes) MaxBatchBytes new config setting defines the max size of one batch.
    • Go API

      • [evidence] #5317 Remove ConflictingHeaders evidence type & CompositeEvidence Interface. (@marbar3778)
      • [evidence] #5318 Remove LunaticValidator evidence type. (@marbar3778)
      • [evidence] #5319 Remove Amnesia & potentialAmnesia evidence types and removed POLC. (@marbar3778)
      • [evidence] #5361 Add LightClientAttackEvidence and change evidence interface (@cmwaters)
      • [params] #5319 Remove ProofofTrialPeriod from evidence params (@marbar3778)
      • [crypto/secp256k1] #5280 secp256k1 has been removed from the Tendermint repo. (@marbar3778)
      • [light] #5347 NewClient, NewHTTPClient, VerifyHeader and VerifyLightBlockAtHeight now accept context.Context as 1st param (@melekes)
      • [state] #5348 Define an Interface for the state store. (@marbar3778)

    ๐Ÿ”‹ FEATURES

    • [privval] #5239 Add chainID to requests from client. (@marbar3778)
    • [config] #5147 Add --consensus.double_sign_check_height flag and DoubleSignCheckHeight config variable. See ADR-51
    • [light] #5298 Morph validator set and signed header into light block (@cmwaters)
    • โ™ป๏ธ [evidence] #5361 Add LightClientAttackEvidence and refactor evidence lifecycle (@cmwaters)

    ๐Ÿ‘Œ IMPROVEMENTS

    • ๐Ÿ”€ [blockchain] #5278 Verify only +2/3 of the signatures in a block when fast syncing. (@marbar3778)
    • [rpc] #5293 /dial_peers has added private and unconditional as parameters. (@marbar3778)
    • [types] #5340 Add check in Header.ValidateBasic() for block protocol version (@marbar3778)
    • ๐Ÿ”ง [statesync] #5399 Add discovery_time configuration setting, and reduce default to 15s. (@erikgrinaker)

    ๐Ÿ› BUG FIXES

    • ๐Ÿ”€ [blockchain] #5249 Fix fast sync halt with initial height > 1 (@erikgrinaker)
    • ๐Ÿ”€ [statesync] #5302 Fix genesis state propagation to state sync routine (@erikgrinaker)
    • [statesync] #5320 Broadcast snapshot request to all pre-connected peers on start (@erikgrinaker)
    • โฑ [consensus] #5329 Fix wrong proposer schedule for validators returned by InitChain (@erikgrinaker)
    • [store] #5382 Fix race conditions when loading/saving/pruning blocks (@erikgrinaker)
    • [light] #5307 Persist correct proposer priority in light client validator sets (@cmwaters)
    • [docker] #5385 Fix incorrect time_iota_ms default setting causing block timestamp drift (@erikgrinaker)
    • ๐Ÿ”€ [abci] #5395 Fix socket client error for state sync responses (@erikgrinaker)
  • v0.34.0-rc3

    August 13, 2020

    August 13, 2020

    ๐Ÿš€ Special thanks to external contributors on this release: @SadPencil

    Friendly reminder, we have a bug bounty program.

    ๐Ÿ’ฅ BREAKING CHANGES:

    • Blockchain Protocol

      • #5193 Header hashes are no longer empty for empty inputs, notably DataHash, EvidenceHash, and LastResultsHash (@erikgrinaker)
    • Go API

      • [evidence] #5181 Phantom validator evidence was removed (@cmwaters)
      • [merkle] #5193 HashFromByteSlices and ProofsFromByteSlices now return a hash for empty inputs, following RFC6962 (@erikgrinaker)
      • [crypto] #5214 Change GenPrivKeySecp256k1 to GenPrivKeyFromSecret to be consistent with other keys (@marbar3778)
      • [state] #5191 Add State.InitialHeight field to record initial block height, must be 1 (not 0) to start from 1 (@erikgrinaker)
      • [state] #5231 LoadStateFromDBOrGenesisFile() and LoadStateFromDBOrGenesisDoc() no longer saves the state in the database if not found, the genesis state is simply returned (@erikgrinaker)
      • [crypto] #5236 VerifyBytes is now VerifySignature on the crypto.PubKey interface (@marbar3778)

    ๐Ÿ”‹ FEATURES:

    • ๐Ÿšš [abci] #5174 Add amnesia evidence and remove mock and potential amnesia evidence from abci (@cmwaters)
    • [abci] #5191 Add InitChain.InitialHeight field giving the initial block height (@erikgrinaker)
    • [abci] #5227 Add ResponseInitChain.app_hash which is recorded in genesis block (@erikgrinaker)
    • 0๏ธโƒฃ [genesis] #5191 Add initial_height field to specify the initial chain height (defaults to 1) (@erikgrinaker)
    • ๐Ÿ‘ [db] #5233 Add support for badgerdb database backend (@erikgrinaker)

    ๐Ÿ‘Œ IMPROVEMENTS:

    • [evidence] #5219 Change the source of evidence time to block time (@cmwaters)

    ๐Ÿ› BUG FIXES:

    • [evidence] #5170 change abci evidence time to the time the infraction happened not the time the evidence was committed on the block (@cmwaters)
    • ๐Ÿ”€ [node] #5211 Don't attempt fast sync when the ABCI application specifies ourself as the only validator via InitChain (@erikgrinaker)
    • [libs/rand] #5215 Fix out-of-memory error on unexpected argument of Str() (@SadPencil)
  • v0.34.0-rc2

    July 30, 2020

    July 30, 2020

    ๐Ÿš€ Special thanks to external contributors on this release: @james-ray, @fedekunze, @favadi, @alessio, @joe-bowman, @cuonglm

    Friendly reminder, we have a bug bounty program.

    ๐Ÿ’ฅ BREAKING CHANGES:

    • CLI/RPC/Config

      • [evidence] #4959 Add json tags to DuplicateVoteEvidence
      • [light] #4946 tendermint lite cmd has been renamed to tendermint light
      • [privval] #4582 round in private_validator_state.json is no longer a string in json it is now a number
      • [rpc] #4792 /validators are now sorted by voting power (@melekes)
      • [rpc] #4937 Return an error when page pagination param is 0 in /validators, tx_search (@melekes)
      • [rpc] #5137 The json tags of gasWanted & gasUsed in ResponseCheckTx & ResponseDeliverTx have been made snake_case. (gas_wanted & gas_used)
    • Apps

      • [abci] #4704 Add ABCI methods ListSnapshots, LoadSnapshotChunk, OfferSnapshot, and ApplySnapshotChunk for state sync snapshots. ABCIVersion bumped to 0.17.0.
      • [abci] #4989 Proof within ResponseQuery has been renamed to ProofOps
      • [abci] CheckTxType Protobuf enum names are now uppercase, to follow Protobuf style guide
    • P2P Protocol

      • [blockchain] #4637 Migrate blockchain reactor(s) to Protobuf encoding
      • [evidence] #4949 Migrate evidence reactor to Protobuf encoding
      • [mempool] #4940 Migrate mempool from to Protobuf encoding
      • [p2p/pex] #4973 Migrate p2p/pex reactor to Protobuf encoding
      • [statesync] #4943 Migrate state sync reactor to Protobuf encoding
    • Blockchain Protocol

      • [evidence] #4780 Cap evidence to an absolute number (@cmwaters)
      • Add max_num to consensus evidence parameters (default: 50 items).
      • [evidence] #4725 Remove Pubkey from DuplicateVoteEvidence
      • [state] #4845 Include GasWanted and GasUsed into LastResultsHash (@melekes)
      • [types] #4792 Sort validators by voting power to enable faster commit verification (@melekes)
    • On-disk serialization

      • [state] #4679 Migrate state module to Protobuf encoding
      • BlockStoreStateJSON is now BlockStoreState and is encoded as binary in the database
      • [store] #4778 Migrate store module to Protobuf encoding
    • Light client, private validator

      • [light] #4964 Migrate light module migration to Protobuf encoding
      • [privval] #4985 Migrate privval module to Protobuf encoding
    • Go API

      • [light] #4946 Rename lite2 pkg to light. Remove lite implementation.
      • [crypto] #4721 Remove SimpleHashFromMap() and SimpleProofsFromMap() (@erikgrinaker)
      • [crypto] #4940 All keys have become []byte instead of [<size>]byte. The byte method no longer returns the marshaled value but just the []byte form of the data.
      • [crypto] \4988 Removal of key type multisig
      • The key has been moved to the Cosmos-SDK
      • [crypto] #4989 Remove Simple prefixes from SimpleProof, SimpleValueOp & SimpleProofNode.
      • merkle.Proof has been renamed to ProofOps.
      • Protobuf messages Proof & ProofOp has been moved to proto/crypto/merkle
      • SimpleHashFromByteSlices has been renamed to HashFromByteSlices
      • SimpleHashFromByteSlicesIterative has been renamed to HashFromByteSlicesIterative
      • SimpleProofsFromByteSlices has been renamed to ProofsFromByteSlices
      • [crypto] #4941 Remove suffixes from all keys.
      • ed25519: type PrivKeyEd25519 is now PrivKey
      • ed25519: type PubKeyEd25519 is now PubKey
      • secp256k1: typePrivKeySecp256k1 is now PrivKey
      • secp256k1: typePubKeySecp256k1 is now PubKey
      • sr25519: type PrivKeySr25519 is now PrivKey
      • sr25519: type PubKeySr25519 is now PubKey
      • multisig: type PubKeyMultisigThreshold is now PubKey
      • [libs] #4831 Remove Bech32 pkg from Tendermint. This pkg now lives in the cosmos-sdk
      • [rpc/client] #4947 Validators, TxSearch page/per_page params become pointers (@melekes)
      • UnconfirmedTxs limit param is a pointer
      • [proto] #5025 All proto files have been moved to /proto directory.
      • Using the recommended the file layout from buf, see here for more info
      • [state] #4679 TxResult is a Protobuf type defined in abci types directory
      • [types] #4939 SignedMsgType has moved to a Protobuf enum types
      • [types] #4962 ConsensusParams, BlockParams, EvidenceParams, ValidatorParams & HashedParams are now Protobuf types
      • [types] #4852 Vote & Proposal SignBytes is now func VoteSignBytes & ProposalSignBytes
      • [types] #4798 Simplify VerifyCommitTrusting func + remove extra validation (@melekes)
      • [types] #4845 Remove ABCIResult
      • [types] #5029 Rename all values from PartsHeader to PartSetHeader to have consistency
      • [types] #4939 Total in Parts & PartSetHeader has been changed from a int to a uint32
      • [types] #4939 Vote: ValidatorIndex & Round are now int32
      • [types] #4939 Proposal: POLRound & Round are now int32
      • [types] #4939 Block: Round is now int32
      • [consensus] #4582 RoundState: Round, LockedRound & CommitRound are now int32
      • [consensus] #4582 HeightVoteSet: round is now int32
      • [rpc/jsonrpc/server] #5141 Remove WriteRPCResponseArrayHTTP (use WriteRPCResponseHTTP instead) (@melekes)

    ๐Ÿ”‹ FEATURES:

    • [abci] #5031 Add AppVersion to consensus parameters (@james-ray)
      • ... making it possible to update your ABCI application version via EndBlock response
    • [evidence] #4532 Handle evidence from light clients (@melekes)
    • [evidence] #4821 Amnesia evidence can be detected, verified and committed (@cmwaters)
    • [light] #4532 Submit conflicting headers, if any, to a full node & all witnesses (@melekes)
    • [p2p] #4981 Expose SaveAs func on NodeKey (@melekes)
    • ๐Ÿ‘ [rpc] #4532 Support BlockByHash query (@fedekunze)
    • ๐Ÿ‘ [rpc] #4979 Support EXISTS operator in /tx_search query (@melekes)
    • [rpc] #5017 Add /check_tx endpoint to check transactions without executing them or adding them to the mempool (@melekes)
    • ๐Ÿ‘€ [statesync] Add state sync support, where a new node can be rapidly bootstrapped by fetching state snapshots from peers instead of replaying blocks. See the [statesync] config section.
    • [rpc] #5108 Subscribe using the websocket for new evidence events (@cmwaters)

    ๐Ÿ‘Œ IMPROVEMENTS:

    • [consensus] #4578 Attempt to repair the consensus WAL file (data/cs.wal/wal) automatically in case of corruption (@alessio)
      • The original WAL file will be backed up to data/cs.wal/wal.CORRUPTED.
    • [evidence] #4722 Improved evidence db (@cmwaters)
    • [evidence] #4839 Reject duplicate evidence from being proposed (@cmwaters)
    • ๐Ÿšš [evidence] #4892 Remove redundant header from phantom validator evidence (@cmwaters)
    • [light] #4935 Fetch and compare a new header with witnesses in parallel (@melekes)
    • [light] #4929 compare header w/ witnesses only when doing bisection (@melekes)
    • [light] #4916 validate basic for inbound validator sets and headers before further processing them (@cmwaters)
    • [p2p/conn] #4795 Return err on signChallenge() instead of panic
    • [state] #4781 Export InitStateVersion for the initial state version (@erikgrinaker)
    • [txindex] #4466 Allow to index an event at runtime (@favadi)
      • abci.EventAttribute replaces KV.Pair
    • ๐Ÿ— [libs] #5126 Add a sync package which wraps sync.(RW)Mutex & deadlock.(RW)Mutex and use a build flag (deadlock) in order to enable deadlock checking
    • [types] #4905 Add ValidateBasic to validator and validator set (@cmwaters)
    • [rpc] #4968 JSON encoding is now handled by libs/json, not Amino
    • ๐Ÿšš [mempool] Add RemoveTxByKey() exported function for custom mempool cleaning (@p4u)
    • [consensus] #5143 Only call privValidator.GetPubKey once per block (@melekes)

    ๐Ÿ› BUG FIXES:

    • [blockchain/v2] Correctly set block store base in status responses (@erikgrinaker)
    • [consensus] #4895 Cache the address of the validator to reduce querying a remote KMS (@joe-bowman)
    • [consensus] #4970 Stricter on LastCommitRound check (@cuonglm)
    • [p2p]#5136 Fix error for peer with the same ID but different IPs (@valardragon)
    • [proxy] #5078 Fix a bug, where TM does not exit when ABCI app crashes (@melekes)
  • v0.34.0-rc1

    ๐Ÿš€ This release was removed, as a premature GitHub tag was recorded on sum.golang.org causing checksum errors.

  • v0.34.0-dev1

    June 24, 2020
  • v0.33.8

    August 11, 2020

    August 11, 2020

    โšก๏ธ Go security update

    ๐Ÿ”’ Go reported a security vulnerability that affected the encoding/binary package. The most recent binary for tendermint is using 1.14.6, for this ๐Ÿš€ reason the Tendermint engineering team has opted to conduct a release to aid users in using the correct version of Go. Read more about the security issue here.

  • v0.33.7

    August 04, 2020

    August 4, 2020

    ### BUG FIXES: