Skip to content

v0.20 Mitten Crab

Compare
Choose a tag to compare
@yangby-cryptape yangby-cryptape released this 09 Nov 11:10
d6df26c

CHANGELOG

We are pleased to announce that CITA v0.20 is released! In this season of eating crabs, we brought a new version of Mitten Crab.
In this new version, we finally supported the fork! This means that our following version will always be forward compatible. At the same time, the new version also supports for TLS communication encryption based on self-signed certificates, so the communication between nodes will become more secure. In the new version, we further optimized the network, upgraded the related infrastructure (rustc compiler and rocksdb, etc.), fixed some bugs, and added a lot of documentation.

Mitten Crab

Compatibility

  • You need to upgrade all the nodes at the same time, follow the steps below:
    • Stop all the nodes;
    • Upgrade all the nodes;
    • Use the bft-wal tool to manually convert the log format of BFT wal;
    • Restart all the nodes.
    DATA_PATH=./test-chain/0/data ./bin/bft-wal

Protocol

Bootstrap

  • [Optimization] Force the use of --super_admin to configure the administrator account when using create_cita_config.py to create a new chain.

Framework

  • [Upgrade] Upgrade rustc to nightly-2018-10-05, and update the docker image (latest image cita/cita-run:ubuntu-18.04-20181009).

Executor

  • [Deprecated] Deprecate the use of delay_block_number.
  • [Refactor] Use BlockID explicitly in methods that require the use of BlockID instead of using a fuzzy Default value.
  • [Refactor] Refactor duplicated codes in both of Executor and Chain.
  • [Refactor] Refactor some unsafe codes.

Chain

  • [Upgrade] Upgrade RocksDB.

Auth

  • [Feature] Add the check of the version field in the transaction.

Network

  • [Refactor] Refactor network client.
  • [Upgrade] Upgrade network server.
  • [Feature] Support for TLS communication encryption based on self-signed certificate.
  • [Fix] Parsing will stop immediately when the body of messages between nodes is too large.

RPC

  • [Fix] Fix the problem that the website returned by the getMetaData interface is incorrect.
  • [Fix] The error information returned by the sendRawTransaction interface may be inconsistent when there are duplicate transactions.
  • [Feature] Add the pending type in the BlockTag type.
  • [Fix] The exit code caused by the configuration file exception is corrected to 2.

System Contract

  • [Fix] Fix user authentication problem inside the group when the permission management is enabled.

Test

  • [Optimization] Optimize the efficiency of system contract testing.

Doc

  • [Docs] Add system contract interface documents.
  • [Docs] Add more English document.