Starcoin Release Notes
Epoch and Uncle Block mechanism are introduced.
Refactor and stabilize the basic data types and Stdlib.
Account and State command enhancement.
Sync bug fix.
Stdlib adds Spec validation logic for 80% coverage.
Refactor uncle block and open block, create_block_template and implement service registry.
Support user-defined custom chain, Support multiple Stdlib versions, implements a token gov module for voting governance mechanism
Refactor consensus config, add pre_mine and time locked genesis init
Refactor consensus, implements of new algorithms of cryptonight, optimize accumulator, each epoch dynamically adjusts block gas limit
Fix bug and cleanup.
Sync optimize and stdlib refactor.
Stdlib v7 and p2p network optimize
Refactor miner & BlockTemplate & OpenedBlock and sync node data to elasticsearch
Optimizing network and synchronization
Fix the bug that miner_client cannot continue mining after network failure
Add peer scoring mechanism
StateDB and AccessPath refactor
Refactor BlockHeader and module compatibility check, optimize tx propagation
Implement list-resource api and optimize rpc, system reinforcement
Upgrade move-vm to latest for support new Move language features
Upgrade MoveVm and refactor Stdlib. To support the new abilities syntax, and ScriptFunction as defined in Module. Prepare to officially launch the new Barnard network.
Generate and include barnard genesis.
Optimize sync and network broadcast message handle.
- Optimize the peer selection strategy during sync. <! –more–> [sync] Fix a bug in state handling during sync.#2360 [metrics & log] Improve the metrics collection and network-rpc logs for future optimization. #2364 #2368 [sdk] Fix bug in python transaction generator. #2365 [cli] Add commands for signing and verifying signatures. #2363 [cli] Added tool to export all Resource from state. #2366 [documentation] Documentation update for DAO-related commands. #2358
Network protocol updates to prepare for new protocols or support for light nodes in the future.
Network protocol upgrade, optimize transaction broadcast protocol; Support stratum mining pool protocol; Move contract upgrade method optimization: support incompatible upgrade through governance, and implement hard fork through on-chain governance (sip-4).
Note: starcoin nodes should upgrade to the latest version as soon as possible, a hard fork test will be conducted soon, which will cause nodes with older versions to be unable to execute the latest blocks.
Improve stdlib upgrade
Introduce Treasury and prepare for main network launch.
Generate the Genesis block and the main network is launched.
Account and Miner rpc and command enhancements
Released the Move CLI tool and refactored the authentication key verification mechanism.
Note: This release contains hard fork features that will be activated after stdlib is upgraded to v5 version. Please upgrade to the latest version and wait for the upgrade proposal to be initiated before conducting an on-chain vote. Detailed instructions on voting will be given after the upgrade proposal is submitted.
Move version upgrade, command line development tool improvement, miner client support stratum mining pool protocol, stdlib v5 follow-up update
- cleaned up and refactored some cli commands, some commands are not compatible
- The account address literals in the new Move source code need to be prefixed with
@symbols, for example,
0xA550C18needs to be changed to
Please upgrade to the new version to be ready for open third-party Move contract deployment
Introduce StructABI,ModuleABI,ScriptFunctionABI for auto decode resource,transaction payload and move bytecode.
- Add new API:
- Add new command:
dev resolve function|struct|module,
state get|list resource|code
- Refactored some cli commands, some commands output are not compatible
contract.dry_runAPI output is not compatible.
- Deprecated BlockHeader’s author_auth_key field, author_auth_key is always None from this version. This is compatible.
Bug (#2689) may cause wrong transaction info to be retrieved, please upgrade to v1.3.1 or v1.4.0 as soon as possible
- Add new API: