All Versions
139
Latest Version
Avg Release Cycle
26 days
Latest Release
-

Changelog History
Page 12

  • v0.19.2 Changes

    April 30, 2018

    ๐Ÿ”‹ FEATURES:

    • [p2p] Allow peers with different Minor versions to connect
    • [rpc] /net_info includes n_peers

    ๐Ÿ‘Œ IMPROVEMENTS:

    • [p2p] Various code comments, cleanup, error types
    • ๐Ÿ”Š [p2p] Change some Error logs to Debug

    ๐Ÿ› BUG FIXES:

    • [p2p] Fix reconnect to persistent peer when first dial fails
    • [p2p] Validate NodeInfo.ListenAddr
    • [p2p] Only allow (MaxNumPeers - MaxNumOutboundPeers) inbound peers
    • [p2p/pex] Limit max msg size to 64kB
    • [p2p] Fix panic when pex=false
    • [p2p] Allow multiple IPs per ID in AddrBook
    • [p2p] Fix before/after bugs in addrbook isBad()
  • v0.19.1 Changes

    April 27, 2018

    ๐Ÿš€ Note this release includes some small breaking changes in the RPC and one in the ๐Ÿ›  config that are really bug fixes. v0.19.1 will work with existing chains, and make Tendermint easier to use and debug. With <3

    ๐Ÿ’ฅ BREAKING (MINOR)

    • ๐Ÿšš [config] Removed wal_light setting. If you really needed this, let us know

    ๐Ÿ”‹ FEATURES:

    • ๐Ÿš€ [networks] moved in tooling from devops repo: terraform and ansible scripts for deploying testnets !
    • [cmd] Added gen_node_key command

    ๐Ÿ› BUG FIXES

    Some of these are breaking in the RPC response, but they're really bugs!

    • [spec] Document address format and pubkey encoding pre and post Amino
    • [rpc] Lower case JSON field names
    • [rpc] Fix missing entries, improve, and lower case the fields in /dump_consensus_state
    • [rpc] Fix NodeInfo.Channels format to hex
    • [rpc] Add Validator address to /status
    • [rpc] Fix prove in ABCIQuery
    • [cmd] MarshalJSONIndent on init
  • v0.19.0 Changes

    April 13, 2018

    ๐Ÿ’ฅ BREAKING:

    • ๐Ÿ‘€ [cmd] improved testnet command; now it can fill in persistent_peers for you in the config file and much more (see tendermint testnet --help for details)
    • [cmd] show_node_id now returns an error if there is no node key
    • ๐Ÿ‘€ [rpc]: changed the output format for the /status endpoint (see https://godoc.org/github.com/tendermint/tendermint/rpc/core#Status)

    โฌ†๏ธ Upgrade from go-wire to go-amino. This is a sweeping change that breaks everything that is serialized to disk or over the network.

    ๐Ÿ‘€ See github.com/tendermint/go-amino for details on the new format.

    โฌ†๏ธ See scripts/wire2amino.go for a tool to upgrade genesis/priv_validator/node_key JSON files.

    ๐Ÿ”‹ FEATURES

    • ๐Ÿณ [test] docker-compose for local testnet setup (thanks Greg!)
  • v0.18.0 Changes

    April 06, 2018

    ๐Ÿ’ฅ BREAKING:

    • ๐Ÿ‘€ [types] Merkle tree uses different encoding for varints (see tmlibs v0.8.0)
    • [types] ValidtorSet.GetByAddress returns -1 if no validator found
    • [p2p] require all addresses come with an ID no matter what
    • [rpc] Listening address must contain tcp:// or unix:// prefix

    ๐Ÿ”‹ FEATURES:

    • [rpc] StartHTTPAndTLSServer (not used yet)
    • [rpc] Include validator's voting power in /status
    • [rpc] /tx and /tx_search responses now include the transaction hash
    • [rpc] Include peer NodeIDs in /net_info

    ๐Ÿ‘Œ IMPROVEMENTS:

    • [config] trim whitespace from elements of lists (like persistent_peers)
    • [rpc] /tx_search results are sorted by height
    • [p2p] do not try to connect to ourselves (ok, maybe only once)
    • ๐Ÿ‘€ [p2p] seeds respond with a bias towards good peers

    ๐Ÿ› BUG FIXES:

    • [rpc] fix subscribing using an abci.ResponseDeliverTx tag
    • [rpc] fix tx_indexers matchRange
    • ๐Ÿ‘€ [rpc] fix unsubscribing (see tmlibs v0.8.0)
  • v0.17.1 Changes

    March 27, 2018

    ๐Ÿ› BUG FIXES:

    • ๐Ÿ‘ [types] Actually support app_state in genesis as AppStateJSON
  • v0.17.0 Changes

    March 27, 2018

    ๐Ÿ’ฅ BREAKING:

    • [types] WriteSignBytes -> SignBytes

    ๐Ÿ‘Œ IMPROVEMENTS:

    • [all] renamed dummy (persistent_dummy) to kvstore (persistent_kvstore) (name "dummy" is deprecated and will not work in the next breaking release)
    • ๐Ÿ“„ [docs] note on determinism (docs/determinism.rst)
    • ๐Ÿ—„ [genesis] app_options field is deprecated. please rename it to app_state in your genesis file(s). app_options will not work in the next breaking release
    • ๐Ÿ‘€ [p2p] dial seeds directly without potential peers
    • [p2p] exponential backoff for addrs in the address book
    • [p2p] mark peer as good if it contributed enough votes or block parts
    • [p2p] stop peer if it sends incorrect data, msg to unknown channel, msg we did not expect
    • [p2p] when auth_enc is true, all dialed peers must have a node ID in their address
    • [spec] various improvements
    • ๐Ÿ“ฆ switched from glide to dep internally for package management
    • โฌ†๏ธ [wire] prep work for upgrading to new go-wire (which is now called go-amino)

    ๐Ÿ”‹ FEATURES:

    • [config] exposed auth_enc flag to enable/disable encryption
    • [config] added the --p2p.private_peer_ids flag and PrivatePeerIDs config variable (see config for description)
    • [rpc] added /health endpoint, which returns empty result for now
    • [types/priv_validator] new format and socket client, allowing for remote signing

    ๐Ÿ› BUG FIXES:

    • [consensus] fix liveness bug by introducing ValidBlock mechanism
  • v0.16.0 Changes

    February 20, 2018

    ๐Ÿ’ฅ BREAKING CHANGES:

    • [config] use $TMHOME/config for all config and json files
    • ๐Ÿ‘€ [p2p] old --p2p.seeds is now --p2p.persistent_peers (persistent peers to which TM will always connect to)
    • ๐Ÿ‘€ [p2p] now --p2p.seeds only used for getting addresses (if addrbook is empty; not persistent)
    • ๐Ÿšš [p2p] NodeInfo: remove RemoteAddr and add Channels
      • we must have at least one overlapping channel with peer
      • we only send msgs for channels the peer advertised
    • โฑ [p2p/conn] pong timeout
    • [lite] comment out IAVL related code

    ๐Ÿ”‹ FEATURES:

    • [p2p] added new /dial_peers&persistent=_ unsafe endpoint
    • [p2p] persistent node key in $THMHOME/config/node_key.json
    • [p2p] introduce peer ID and authenticate peers by ID using addresses like [email protected]:PORT
    • ๐Ÿ‘€ [p2p/pex] new seed mode crawls the network and serves as a seed.
    • [config] MempoolConfig.CacheSize
    • ๐Ÿ‘€ [config] P2P.SeedMode (--p2p.seed_mode)

    ๐Ÿ‘Œ IMPROVEMENT:

    • ๐Ÿ‘ [p2p/pex] stricter rules in the PEX reactor for better handling of abuse
    • ๐Ÿ“ฆ [p2p] various improvements to code structure including subpackages for pex and conn
    • ๐Ÿ“„ [docs] new spec!
    • โœ… [all] speed up the tests!

    ๐Ÿ› BUG FIX:

    • โฑ [blockchain] StopPeerForError on timeout
    • [consensus] StopPeerForError on a bad Maj23 message
    • [state] flush mempool conn before calling commit
    • [types] fix priv val signing things that only differ by timestamp
    • [mempool] fix memory leak causing zombie peers
    • [p2p/conn] fix potential deadlock
  • v0.15.0 Changes

    December 29, 2017

    ๐Ÿ’ฅ BREAKING CHANGES:

    • 0๏ธโƒฃ [p2p] enable the Peer Exchange reactor by default
    • [types] add Timestamp field to Proposal/Vote
    • [types] add new fields to Header: TotalTxs, ConsensusParamsHash, LastResultsHash, EvidenceHash
    • [types] add Evidence to Block
    • [types] simplify ValidateBasic
    • โšก๏ธ [state] updates to support changes to the header
    • [state] Enforce <1/3 of validator set can change at a time

    ๐Ÿ”‹ FEATURES:

    • [state] Send indices of absent validators and addresses of byzantine validators in BeginBlock
    • [state] Historical ConsensusParams and ABCIResponses
    • ๐Ÿ“„ [docs] Specification for the base Tendermint data structures.
    • [evidence] New evidence reactor for gossiping and managing evidence
    • [rpc] /block_results?height=X returns the DeliverTx results for a given height.

    ๐Ÿ‘Œ IMPROVEMENTS:

    • ๐Ÿ‘ [consensus] Better handling of corrupt WAL file

    ๐Ÿ› BUG FIXES:

    • [lite] fix race
    • [state] validate block.Header.ValidatorsHash
    • ๐Ÿ‘€ [p2p] allow seed addresses to be prefixed with eg. tcp://
    • [p2p] use consistent key to refer to peers so we dont try to connect to existing peers
    • [cmd] fix tendermint init to ignore files that are there and generate files that aren't.
  • v0.14.0 Changes

    December 11, 2017

    ๐Ÿ’ฅ BREAKING CHANGES:

    • ๐Ÿšš consensus/wal: removed separator
    • rpc/client: changed Subscribe/Unsubscribe/UnsubscribeAll funcs signatures to be identical to event bus.

    ๐Ÿ”‹ FEATURES:

    • ๐Ÿ†• new tendermint lite command (and lite/proxy pkg) for running a light-client RPC proxy. NOTE it is currently insecure and its APIs are not yet covered by semver

    ๐Ÿ‘Œ IMPROVEMENTS:

    • ๐Ÿ‘€ rpc/client: can act as event bus subscriber (See https://github.com/tendermint/tendermint/issues/945).
    • p2p: use exponential backoff from seconds to hours when attempting to reconnect to persistent peer
    • 0๏ธโƒฃ config: moniker defaults to the machine's hostname instead of "anonymous"

    ๐Ÿ› BUG FIXES:

    • ๐Ÿ‘€ p2p: no longer exit if one of the seed addresses is incorrect
  • v0.13.0 Changes

    December 06, 2017

    ๐Ÿ’ฅ BREAKING CHANGES:

    • โšก๏ธ abci: update to v0.8 using gogo/protobuf; includes tx tags, vote info in RequestBeginBlock, data.Bytes everywhere, use int64, etc.
    • types: block heights are now int64 everywhere
    • types & node: EventSwitch and EventCache have been replaced by EventBus and EventBuffer; event types have been overhauled
    • node: EventSwitch methods now refer to EventBus
    • rpc/lib/types: RPCResponse is no longer a pointer; WSRPCConnection interface has been modified
    • rpc/client: WaitForOneEvent takes an EventsClient instead of types.EventSwitch
    • ๐Ÿšš rpc/client: Add/RemoveListenerForEvent are now Subscribe/Unsubscribe
    • rpc/core/types: ResultABCIQuery wraps an abci.ResponseQuery
    • rpc: /subscribe and /unsubscribe take query arg instead of event
    • โœ… rpc: /status returns the LatestBlockTime in human readable form instead of in nanoseconds
    • mempool: cached transactions return an error instead of an ABCI response with BadNonce

    ๐Ÿ”‹ FEATURES:

    • rpc: new /unsubscribe_all WebSocket RPC endpoint
    • rpc: new /tx_search endpoint for filtering transactions by more complex queries
    • ๐Ÿ‘€ p2p/trust: new trust metric for tracking peers. See ADR-006
    • config: TxIndexConfig allows to set what DeliverTx tags to index

    ๐Ÿ‘Œ IMPROVEMENTS:

    • ๐Ÿ†• New asynchronous events system using tmlibs/pubsub
    • ๐ŸŒฒ logging: Various small improvements
    • consensus: Graceful shutdown when app crashes
    • โœ… tests: Fix various non-deterministic errors
    • p2p: more defensive programming

    ๐Ÿ› BUG FIXES:

    • consensus: fix panic where prs.ProposalBlockParts is not initialized
    • p2p: fix panic on bad channel