From b9637f71859dd77d3cdacfe482d514ac2926e4f2 Mon Sep 17 00:00:00 2001 From: Ethan Buchman Date: Tue, 5 Sep 2017 15:53:21 -0400 Subject: [PATCH] Update changelog and add roadmap --- CHANGELOG.md | 41 +++++++++++++++++++++++++++++++++++++++++ config/config.go | 8 ++++---- 2 files changed, 45 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d9af58236..df01f87a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,46 @@ # Changelog +## Roadmap + +BREAKING CHANGES: +- Upgrade the header to support better proves on validtors, results, evidence, and possibly more +- Better support for injecting randomness +- Pass evidence/voteInfo through ABCI +- Upgrade consensus for more real-time use of evidence + +FEATURES: +- Peer reputation management +- Use the chain as its own CA for nodes and validators +- Tooling to run multiple blockchains/apps, possibly in a single process +- State syncing (without transaction replay) +- Improved support for querying history and state +- Add authentication and rate-limitting to the RPC + +IMPROVEMENTS: +- Improve subtleties around mempool caching and logic +- Consensus optimizations: + - cache block parts for faster agreement after round changes + - propagate block parts rarest first +- Better testing of the consensus state machine (ie. use a DSL) +- Auto compiled serialization/deserialization code instead of go-wire reflection + +BUG FIXES: +- Graceful handling/recovery for apps that have non-determinism or fail to halt +- Graceful handling/recovery for violations of safety, or liveness + +## 0.10.4 (Septemeber 5, 2017) + +IMPROVEMENTS: +- docs: Added Slate docs to each rpc function (see rpc/core) +- docs: Ported all website docs to Read The Docs +- config: expose some p2p params to tweak performance: RecvRate, SendRate, and MaxMsgPacketPayloadSize +- rpc: Upgrade the websocket client and server, including improved auto reconnect, and proper ping/pong + +BUG FIXES: +- consensus: fix panic on getVoteBitArray +- consensus: hang instead of panicking on byzantine consensus failures +- cmd: dont load config for version command + ## 0.10.3 (August 10, 2017) FEATURES: diff --git a/config/config.go b/config/config.go index e29f37e41..ec1f85edb 100644 --- a/config/config.go +++ b/config/config.go @@ -222,16 +222,16 @@ type P2PConfig struct { // Maximum number of peers to connect to MaxNumPeers int `mapstructure:"max_num_peers"` - // Time to wait before flushing messages out on the connection. In ms + // Time to wait before flushing messages out on the connection, in ms FlushThrottleTimeout int `mapstructure:"flush_throttle_timeout"` - // Maximum size of a message packet payload + // Maximum size of a message packet payload, in bytes MaxMsgPacketPayloadSize int `mapstructure:"max_msg_packet_payload_size"` - // Rate at which packets can be sent (in bytes/second) + // Rate at which packets can be sent, in bytes/second SendRate int64 `mapstructure:"send_rate"` - // Rate at which packets can be received (in bytes/second) + // Rate at which packets can be received, in bytes/second RecvRate int64 `mapstructure:"recv_rate"` }