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.

232 lines
5.2 KiB

8 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
  1. # Changelog
  2. ## 0.7.1 (November 14, 2017)
  3. IMPROVEMENTS:
  4. - [cli] added version command
  5. BUG FIXES:
  6. - [server] fix "Connection error module=abci-server error=EOF"
  7. ## 0.7.0 (October 27, 2017)
  8. BREAKING CHANGES:
  9. - [cli] consolidate example apps under a single `abci-cli` binary
  10. IMPROVEMENTS:
  11. - [cli] use spf13/cobra instead of urfave/cli
  12. - [dummy] use iavl instead of merkleeyes, and add support for historical queries
  13. BUG FIXES:
  14. - [client] fix deadlock on StopForError
  15. ## 0.6.0 (September 22, 2017)
  16. BREAKING CHANGES:
  17. - [types/client] app.BeginBlock takes RequestBeginBlock
  18. - [types/client] app.InitChain takes RequestInitChain
  19. - [types/client] app.Info takes RequestInfo
  20. IMPROVEMENTS:
  21. - various linting
  22. ## 0.5.0 (May 18, 2017)
  23. BREAKING CHANGES:
  24. - `NewSocketClient` and `NewGRPCClient` no longer start the client automatically, and don't return errors. The caller is responsible for running `client.Start()` and checking the error.
  25. - `NewSocketServer` and `NewGRPCServer` no longer start the server automatically, and don't return errors. The caller is responsible for running `server.Start()` and checking the error.
  26. FEATURES:
  27. - [types] new method `func (res Result) IsSameCode(compare Result) bool` checks whether two results have the same code
  28. - [types] new methods `func (r *ResponseCheckTx) Result() Result` and `func (r *ResponseDeliverTx) Result() Result` to convert from protobuf types (for control over json serialization)
  29. - [types] new method `func (r *ResponseQuery) Result() *ResultQuery` and struct `ResultQuery` to convert from protobuf types (for control over json serializtion)
  30. IMPROVEMENTS:
  31. - Update imports for new `tmlibs` repository
  32. - Use the new logger
  33. - [abci-cli] Add flags to the query command for `path`, `height`, and `prove`
  34. - [types] use `data.Bytes` and `json` tags in the `Result` struct
  35. BUG FIXES:
  36. ## 0.4.1 (April 18, 2017)
  37. IMPROVEMENTS:
  38. - Update dependencies
  39. ## 0.4.0 (March 6, 2017)
  40. BREAKING CHANGES:
  41. - Query takes RequestQuery and returns ResponseQuery. The request is split into `data` and `path`,
  42. can specify a height to query the state from, and whether or not the response should come with a proof.
  43. The response returns the corresponding key-value pair, with proof if requested.
  44. ```
  45. message RequestQuery{
  46. bytes data = 1;
  47. string path = 2;
  48. uint64 height = 3;
  49. bool prove = 4;
  50. }
  51. message ResponseQuery{
  52. CodeType code = 1;
  53. int64 index = 2;
  54. bytes key = 3;
  55. bytes value = 4;
  56. bytes proof = 5;
  57. uint64 height = 6;
  58. string log = 7;
  59. }
  60. ```
  61. IMPROVEMENTS:
  62. - Updates to Makefile
  63. - Various cleanup
  64. - BaseApplication can be embedded by new apps to avoid implementing empty methods
  65. - Drop BlockchainAware and make BeginBlock/EndBlock part of the `type Application interface`
  66. ## 0.3.0 (January 12, 2017)
  67. BREAKING CHANGES:
  68. - TMSP is now ABCI (Application/Asynchronous/A BlockChain Interface or Atomic BroadCast Interface)
  69. - AppendTx is now DeliverTx (conforms to the literature)
  70. - BeginBlock takes a Header:
  71. ```
  72. message RequestBeginBlock{
  73. bytes hash = 1;
  74. Header header = 2;
  75. }
  76. ```
  77. - Info returns a ResponseInfo, containing last block height and app hash:
  78. ```
  79. message ResponseInfo {
  80. string data = 1;
  81. string version = 2;
  82. uint64 last_block_height = 3;
  83. bytes last_block_app_hash = 4;
  84. }
  85. ```
  86. - EndBlock returns a ResponseEndBlock, containing the changed validators:
  87. ```
  88. message ResponseEndBlock{
  89. repeated Validator diffs = 4;
  90. }
  91. ```
  92. - Hex strings are 0x-prefixed in the CLI
  93. - Query on the Dummy app now uses hex-strings
  94. FEATURES:
  95. - New app, PersistentDummy, uses Info/BeginBlock to recover from failures and supports validator set changes
  96. - New message types for blockchain data:
  97. ```
  98. //----------------------------------------
  99. // Blockchain Types
  100. message Header {
  101. string chain_id = 1;
  102. uint64 height = 2;
  103. uint64 time = 3;
  104. uint64 num_txs = 4;
  105. BlockID last_block_id = 5;
  106. bytes last_commit_hash = 6;
  107. bytes data_hash = 7;
  108. bytes validators_hash = 8;
  109. bytes app_hash = 9;
  110. }
  111. message BlockID {
  112. bytes hash = 1;
  113. PartSetHeader parts = 2;
  114. }
  115. message PartSetHeader {
  116. uint64 total = 1;
  117. bytes hash = 2;
  118. }
  119. message Validator {
  120. bytes pubKey = 1;
  121. uint64 power = 2;
  122. }
  123. ```
  124. - Add support for Query to Counter app
  125. IMPROVEMENT:
  126. - Don't exit the tmsp-cli console on bad args
  127. BUG FIXES:
  128. - Fix parsing in the Counter app to handle invalid transactions
  129. ## 0.2.1 (September 12, 2016)
  130. IMPROVEMENTS
  131. - Better error handling in console
  132. ## 0.2.0 (July 23, 2016)
  133. BREAKING CHANGES:
  134. - Use `oneof` types in protobuf
  135. FEATURES:
  136. - GRPC support
  137. ## PreHistory
  138. ##### Mar 26h, 2016
  139. * Introduce BeginBlock
  140. ##### Mar 6th, 2016
  141. * Added InitChain, EndBlock
  142. ##### Feb 14th, 2016
  143. * s/GetHash/Commit/g
  144. * Document Protobuf request/response fields
  145. ##### Jan 23th, 2016
  146. * Added CheckTx/Query ABCI message types
  147. * Added Result/Log fields to DeliverTx/CheckTx/SetOption
  148. * Removed Listener messages
  149. * Removed Code from ResponseSetOption and ResponseGetHash
  150. * Made examples BigEndian
  151. ##### Jan 12th, 2016
  152. * Added "RetCodeBadNonce = 0x06" return code
  153. ##### Jan 8th, 2016
  154. * Tendermint/ABCI now comes to consensus on the order first before DeliverTx.