cita v0.21.0 Release Notes
Release Date: 2019-02-19 // about 5 years ago-
⬆️ Upgrade Note
⬆️ Older version upgrades the v0.21 version requires node configuration modifications.
- ➕ Adding the following three configurations in each node's
executor.toml
The old version
executor.toml
:Journaldb_type = "archive" Prooftype = 2 Grpc_port = 5000
The new version
executor.toml
:Journaldb_type = "archive" Prooftype = 2 Grpc_port = 5000 Genesis_path = "./genesis.json" Statedb_cache_size = 5242880 Eth_compatibility = false
- 🔧 Modifying cita-execuror configuration item in each node's
forever.toml
:
The old version
forever.toml
:[[process]] Name = "cita-executor" Command = "cita-executor" Args = ["-g","genesis.json","-c","executor.toml"] Pidfile = ".cita-executor.pid" Respawn = 3
The new version
forever.toml
:[[process]] Name = "cita-executor" Command = "cita-executor" Args = ["-c","executor.toml"] Pidfile = ".cita-executor.pid" Respawn = 3
⬆️ After completing the above modifications, following [Upgrade Instructions].
CITA-Framework
- ⬆️ [Optimization] Upgrade default rust toolchain to stable. [@yangby-cryptape]
- 🚚 [Optimization] Remove useless dependencies. [@yangby-cryptape]
- [Optimization] Compact block Relay. [@u2] [@yangby-cryptape]
Executor
- [Feature] Automatic execution. [@kaikai1024]
- [Optimization] Enable changing size of global cache in StateDB. [@EighteenZi]
- 🔨 [Refactor] Decouple executor and postman [@keroro520] [@ouwenkg]
- 🔧 [Configuration] Deprecate
--genesis
command option, instead place intoexecutor.toml
. [@keroro520] - 🔧 [Configuration] Add argument about timestamp uint in
executor.toml
to compatibility with Ethereum.[@rink1969] - [Optimization] Change state db type to ensure safe reference. [@ouwenkg]
- 🚚 [Optimization] Remove unused code in state db. [@ouwenkg]
- ✅ [Optimization] Add more tests in executor and postman. [@ouwenkg]
- [Optimization] Add block priority in postman. [@keroro520]
- 🔨 [Refactor] Decouple global sysconfig from transactionOptions. [@kaikai1024]
- 🗄 [Optimization] Deprecate some dangerous clone usage in block and state. [@keroro520]
- 🚚 [Optimization] Remove cached latest hashes. [@rink1969]
- [Fix] Fix problem in zk privacy. [@rink1969]
- [Fix] Fix defects in snapshot. [@keroro520]
Chain
- [Optimization] Rename crypto enum. [@rink1969]
Auth
- [Optimization] Introduce quick check for history heights. [@rink1969]
Network
- 📜 [Feature] Enable parsing hostname directly in network.toml. [@driftluo]
- [Fix] Fix bug for network not send all msg. [@jerry-yu]
Consensus
- [Optimization] Add a min-heap timer. [@KaoImin]
- ⚡️ [Optimization] Optimize wait time for proposal, prevote and precommit. [@jerry-yu]
RPC
- 📇 [Fix] The 'chainIdV1' in the response of getMetaData is hex string, so it should have 0x-prefix. [@yangby-cryptape]
- [Optimization] Split libproto operations from Jsonrpc. [@zeroqn]
- [Feature] Add
from
field inGettransaction
rpc interface. [@zeroqn] - ⬆️ [Optimization] Upgrade hyper version and split
Service
andServer
. [@zeroqn] - [Fix] Fix
getFilterChanges
interface, the hash array returned in the case of a block filter starts from the next block. [@ouwenkg]
System Contract
- 0️⃣ [Feature] Change default quotaPrice to 1000000. [@ouwenkg]
- ✅ [Optimization] Take interfaces and test contracts out as a dependent submodule. [@kaikai1024]
Scripts
- [Feature] Store their own address for each node. [@yangby-cryptape]
- 🔧 [Configuration] Rename checkPermission to checkCallPermission. [@kaikai1024]
- [Feature] Check the maximum number of consensus nodes. [@rink1969]
- ⚡️ [Configuration] Optimize usage of backup and clean command. [@keroro520]
- [Optimization] Add exit info about creating genesis. [@kaikai1024]
- 🐳 [Feature] Support start 4 nodes in docker compose. [@rink1969]
✅ Test
- 👷 [Optimization] Split large ci jobs. [@u2]
- ✅ [Optimization] Add test about amend operation. [@rink1969]
- ✅ [Optimization] Add test to ensure genesis compatibility. [@kaikai1024]
- ✅ [Optimization] Add test about snapshot. [@keroro520]
Doc
- [Doc] Complete the doc of system contract interface. [@kaikai1024]
- ⚡️ [Doc] Update crypto type and timestamp configuration in executor.toml. [@rink1969]
- [Doc] More detail statements about cita-bft consensus. [@KaoImin]
- ⚡️ [Doc] Update sdk info in readme. [@zhouyun-zoe]
- [Doc] Add node command description. [@ouwenkg]
- 📚 [Doc] Build a new [documentation website]. [@zhouyun-zoe]
Tool
- [Optimization] Split util module into standalone crates. [@yangby-cryptape]
- 🔨 [Refactor] Combing the snapshot logic and rewrite snapshot_tools. [@keroro520]
- ➕ Adding the following three configurations in each node's