starcoin

Starcoin - A Move smart contract blockchain network that scales by layering

APACHE-2.0 License

Stars
1.4K

Bot releases are hidden (Show)

starcoin - v0.8.6

Published by jolestar almost 4 years ago

starcoin - Release 0.8.1

Published by sanlee42 almost 4 years ago

[stdlib] Release stdlib v7 and generate new genesis.

starcoin - v.0.8.0

Published by ssyuan almost 4 years ago

Main feature and update

  1. [cli] Add get_epoch_uncles_by_number cmd. (#1677)
  2. [cli] explain move error code even if there is no location (#1669)
  3. [functional-tests]Implement split_fixed_key & split_linear_key (#1667)
  4. [stest & join handler] Fix ThreadJoinHandler detect thread panic and return the correct error. (#1655)
  5. [metrics] Add more metrics in db, vm, block-relay,network (#1656)
  6. [block-relayer] Query txn in txpool without load all (#1656)
  7. [vm] upgrade vm to the latest revision (#1653)
  8. [stdlib] Add PackageTxnManager Spec. (#1647)
  9. [vm] Check strategy when upgrade module. (#1644)
  10. [network] Add some command to manage network and change network init config (#1643)
  11. [cli] Show more details of txpool status (#1636)
  12. [stdlib] Modify error_code for voted to others already (#1642)
  13. [script] Implement mint token script (#1640)
  14. [network-rpc] Change the params of network rpc apis from usize to u64 (#1641)
  15. [cli] Add command to show tps for given epoch (#1617)
  16. [kube]: Use pv storage (#1635)
  17. [script] Add update_module_upgrade_strategy script. (#1631)
  18. [network] Optimize network and block-relay event process logic (#1630)
  19. [cli] Fix console error sometimes (#1632)
  20. [service-registry] Optimize service status check and report, add a service status check cmd and api (#1626)
  21. [stdlib]Refactor dao (#1621)
  22. [cleanup] Cleanup startup info's field. (#1618)
  23. [stdlib] Update dao time unit to milliseconds (#1619)
  24. [consensus ]Change nonce u64 to u32
  25. [consensus] change mining_hash from hashvalue to vec mining_blob
  26. [consensus] Refactor solver trait for support dynamic link
  27. [stdlib & cmd] Stdlib Version (#1603)
  28. [miner] Merge headblock pacemaker with ondemand pacemaker. (#1613)
  29. [sync] Refactor SyncStatus, remove judgement about is_nearly_synced. (#1613)
  30. [sync] Add a way to reuse blocks that have already been fetched in a previous sync task. (#1613)
  31. [stress test] fix tx-factory crash when account_num is less than TXN_LIMIT (#1612)
  32. [cmd] fix format table result for vec types (#1605)
  33. [sync] Finished new sync service and refactor WriteChainService. (#1596)
  34. [stress-test] improve the method to set expiration time (#1598)
  35. [stream-task] Implement stream-task
  36. [bugfix]Fix bug for submit txn failed since SEQUENCE_NUMBER_TOO_OLD (#1590)
  37. [accumulator] Fix accumulator get_leaves return order and append result. (#1581)
  38. [deploy] update docker build auth config (#1587)
  39. unify binary serde-json to hex string with 0x (#1579)

中文说明

  1. [cli] 增加了命令 get_epoch_uncles_by_number (#1677)
  2. [cli] 增加了对 move 中的错误代码的说明。
  3. [functional-tests] 实现了 split_fixed_key 和 split_linear_key (#1667)
  4. [stest & join handler] 修复了 ThreadJoinHandler 检测导致的线程 panic 并返回正确的错误。(#1655)
  5. [metrics] 在模块 db、vm、block-relay、network中增加更多的指标 (#1656)
  6. [block-relayer] 优化了获取txns 的方式。不需要从 txpool 中全部加载 (#1656)
  7. [VM] 将 VM 升级到最新版本 (#1653)
  8. [stdlib] 添加 PackageTxnManager 规范。(#1647)
  9. [VM] 升级模块时检查策略。(#1644)
  10. [cli] 添加一些管理网络的命令,并更改网络初始配置(#1643)
  11. [cli] 显示 txpool 状态的更多细节(#1636)
  12. [stdlib] 修改已投票给他人的错误代码(#1642)
  13. [scripts] 增加执行铸币脚本(#1640)
  14. [network-rpc] 将network rpc apis 的参数从 usize 改为 u64 (#1641)
  15. [Cli] 添加命令,显示给定时间段的 tps (#1617)
  16. [kube] 使用 PV 存储(#1635)
  17. [scripts] 添加 update_module_upgrade_strategy 脚本。(#1631)
  18. [network] 优化网络和块中继事件处理逻辑 (#1630)
  19. [cli] 修正控制台的一些错误(#1632)
  20. [service-registry] 优化服务状态检查和报告,增加服务状态检查cmd和api(#1626)
  21. [stdlib]重构了 dao (#1621)
  22. [cleanup] 清理启动信息的字段。(#1618)
  23. [stdlib] 更新dao 时间单位为毫秒(#1619)
  24. [consensus]将 nonce 从 u64改为 u32。
  25. [consensus]将 mining_hash 从 hashvalue 改为 vec mining_blob。
  26. [miner_client] 支持加载 solver 的动态链接库。
  27. [stdlib & cmd] Stdlib 版本(#1603)
  28. [miner]将 headblock pacemaker 和 ondemand pacemaker 合并。(#1613)
  29. [sync] 重构 SyncStatus,删除对 is_nearly_synced 的判断。(#1613)
  30. [sync] 增加一种重用在前一个同步任务中已经获取的块的方法。(#1613)
  31. [bench] 修正当账户数小于 TXN_LIMIT 时的 tx-factory 崩溃 (#1612)
  32. [cmd] 修正 vec 类型的格式表结果(#1605)
  33. [sync] 完成了基于 stream task的优化,并重构 WriteChainService。(#1596)
  34. [stress test] 改进了过期时间设置方法(#1598)
  35. [stream-task] 实现 stream-task。
  36. [bugfix]修正 SEQUENCE_NUMBER_TOO_OLD后提交TXN失败的问题(#1590)
  37. [accumulator] 修正累加器 get_leaves 的返回顺序和追加结果。(#1581)
  38. [deploy] 更新 docker build auth 配置(#1587)
  39. 将 serve-json 中的 json 二进制统一为 0x 的十六进制字符串(#1579)
starcoin - v0.7.2.6

Published by jolestar almost 4 years ago

starcoin - v0.7.2

Published by jolestar almost 4 years ago

starcoin - V0.7.1

Published by ssyuan almost 4 years ago

Main feature and update

  1. [Stdlib|VM-runtime] Fix typos of VM.
  2. [stress-test] Add stress test tool based on txn factory.
  3. [jsonRPC] Rename NodeInfo now to now_seconds to avoid misuse.
  4. [onchainconfig] Add on chain config test by Dao.
  5. Cleanup event serialize.
  6. Bumped some dependencies crate.

中文说明

  1. [Stdlib|VM-runtime]修正VM的一些错别字。
  2. [stress-test] 增加基于 txn factory 的压力测试工具。
  3. [jsonRPC] 重命名NodeInfo now为now_seconds,避免误用。
  4. [onchainconfig] 增加on chain config测试。
  5. 清理事件序列化。
  6. 升级了一些依赖包。
starcoin - V0.7.0

Published by jolestar almost 4 years ago

Main feature and update

  1. [break] Enhancement Stdlib events handle, and account deposit handle.
  2. Refactor json-rpc, Mutex RpcClientInner instead of RefCell, and bump jsonrpc to 15.1.0.
  3. [break] Refactor timeService and related module references to time-based changes, modify stdlib timestamp to millisecond.
  4. [break] Further refinement of Stdlib Spec verify, Account, ConsensusConfig, Authenticator, Dao, etc.
  5. Refactor consensus, implements of new algorithms of cryptonight, update consensus_config for modify strategy.
  6. [break] Upgrade Move-vm and do some clean.
  7. Implement new network rpc api and BlockAccumulatorSyncTask.
  8. Enhancement and optimize accumulator, migration InMemoryAccumulator from libra, and related storage refactor.
  9. Enhancement association_account use multi key address and account support multi key.
  10. Refactor miner, modify miner client remove consensus strategy.
  11. [break] Remove scaling factor, improve dao related features and events, modify Config script and TransactionTimeoutConfig.
  12. [break] Update genesis for CNR config and fix hash rate info.
  13. [break] Refactor Stdlib error code.
  14. Refactor chain network, fix GetBlockStateByHash error, add test apply without execute for chain, and add verify uncle test_case.
  15. Optimize stest error message report, modify node start error handle, add tool to explain move abort error code.
  16. Fix a PoW difficulty calculate window bug.
  17. Each epoch dynamically adjusts the block gas limit of the next epoch according to the average value of block gas_used of the previous epoch and the block target time.

中文说明

  1. [break] 改进了Stdlib事件相关的处理,和 account deposit处理。
  2. Refactor json-rpc,用Mutex RpcClientInner代替RefCell,并将jsonrpc提升到15.1.0。
  3. [break] Refactor timeService和相关模块引用基于时间的更新,修改stdlib时间戳为毫秒。
  4. [break] 进一步完善Stdlib Spec verify、Account、ConsensusConfig、Authenticator、Dao等模块。
  5. 重构共识,实现cryptonight的新算法,为修改策略更新共识配置。
  6. [break]升级Move-vm,做一些清理。
  7. 实现新的network rpc api和BlockAccumulatorSyncTask。
  8. 增强和优化累加器,从Libra移植InMemoryAccumulator,以及相关存储的重构。
  9. 增强association_account使用多密钥地址和账户支持多密钥。
  10. 重构miner模块,修改miner客户端删除共识策略。
  11. [break]删除scaling factor,改进dao相关功能和事件,修改Config脚本和TransactionTimeoutConfig。
  12. [break] 更新CNR共识的genesis配置,修正hash rate信息。
  13. [break] 重构Stdlib错误代码。
  14. 重构chain和network模块,修复GetBlockStateByHash错误,为chain增加测试非执行的apply用例,并增加验证叔块的测试用例。
  15. 优化stest模块错误信息报告,修改节点启动错误处理,增加工具解释移动中止错误代码。
  16. 修复了 PoW 难度计算窗口的一个 bug。
  17. 每个 epoch 根据上个 epoch 的 block gas_used 平均值以及出块目标时间,动态调整下个 epoch 的 block gas limit。
starcoin - V0.5.1

Published by ssyuan about 4 years ago

Main feature and update

  1. Refactor consensus config, optimize difficulty codes for test.
  2. [break] Refactor Stdlib TokenBox to TokenLockPool,add pre_mine and time locked genesis init,update scaling_factor to
    10^9, Timestamp allow equals conditional judgement.
  3. Implement STCUnit/TokenUnit and TokenValue.
  4. Upgrade move_vm to the September 27th version, update of libra-related break functions.
  5. Implement on_chain_config by Dao, and voting-related functions.
  6. [break] Add hash field to block_body.
  7. Repackage of U256 U512 to uint module and implementation of conversion methods.
  8. Refactor sync actor to ActorService, remove NetworkService generic from SyncActor.
  9. Added unit tests of network, consensus, miner, chain module.

中文说明

  1. 重构共识配置,优化difficulty代码。
  2. [break] 重构Stdlib的TokenBox到TokenLockPool,在genesis初始化时增加了预挖、时间锁功能,更新scaling_factor到
    10^9,时间戳允许等于条件判断。
  3. 实现STCUnit/TokenUnit和TokenValue。
  4. 将move_vm升级到9月27日的版本,同步更新libra相关break功能。
  5. 实现Dao的on_chain_config,以及投票相关功能。
  6. [break]在block_body中增加哈希字段。
  7. 将U256 U512重新封装为uint模块,并实现相关转换方法。
  8. 将同步actor重构为ActorService,删除SyncActor中的NetworkService泛型。
  9. 增加了network, consensus, miner, chain模块的单元测试。
starcoin - V0.5.0

Published by ssyuan about 4 years ago

Main feature and update

  1. Add scalable token for Stdlib, add test to ensure generated files are up to date.
  2. Implements a new service registry, and refactor module of MinerService, TxPoolService, ChainNotifyHandlerService, network-rpc etc.
  3. [break] Refactor block header fields, remove gas limit and add chain_id field and modify public_key field.
  4. Implements readonly function call of VM.
  5. Further refinement test case of block sync, state sync, and uncle check.
  6. [break] Update accumulator field of block_info, and related changes to the affected modules.
  7. [break] Arrange prologue/epilogue function parameter of block.
  8. Add a new hash consensus by keccak algorithms.

中文说明

  1. 为Stdlib添加可扩展的Token,增加了测试用例以确保生成的文件是最新的。
  2. 实现新的Service Registry框架,重构MinerService、TxPoolService、ChainNotifyHandlerService、network-rpc等模块。
  3. [break] 重构区块头字段,去掉gas_limit并增加chain_id字段,修改public_key字段的展示。
  4. 实现VM的readonly function的调用。
  5. 进一步完善区块同步、状态同步、叔块检查的测试用例。
  6. [break] 更新block_info的累加器字段,并对受影响的模块进行相关修改。
  7. [break] 重构block的prologue/epilogue函数参数。
  8. 新增一种keccak Hash算法的共识的实现。
starcoin - v0.4.6

Published by ssyuan about 4 years ago

Main feature and update

  1. Support user-defined custom chain, renamed chain config to genesis config.
  2. Add generate genesis config command, add generate transaction for test.
  3. Support multiple Stdlib versions, implements a token gov module for voting governance mechanism.
  4. Refactor UncleActor to CreateBlockTemplateActor,and remove ChainAsyncService from miner.
  5. Add compatibility check in verify_transaction.
  6. Enhance network rpc, analog network synchronization RPC calls.
  7. Refactor uncle block verify, enhance header verify, and add typical test scenarios.
  8. Additional test cases of jellyfish_tree.

中文说明

  1. 支持用户自定义Chain,将chain配置改为genesis配置。
  2. 增加生成genesis config命令,为测试模块增加生成transaction功能。
  3. 支持多个Stdlib版本,实现了token gov投票治理机制。
  4. 将UncleActor重构为CreateBlockTemplateActor,并将ChainAsyncService从miner中移除。
  5. 在verify_transaction中增加兼容性检查。
  6. 增强网络RPC,模拟网络同步RPC调用。
  7. 重构叔叔块验证,增强头验证,增加典型测试场景。
  8. 增加了jellyfish_tree模块的测试用例。
starcoin - V0.4.5

Published by ssyuan about 4 years ago

Main feature and update

  1. Refactor uncle block and open block, create_block_template.
  2. Benchmark add chain test, includes block query and apply functions.
  3. Stdlib fix module name order, and adds Spec validation of Block, Account, Token, etc.
  4. Implement service registry, all services are started by default, may specify that some services should not be started.
  5. Command Line Tools add a generator command for generate config and data.

中文说明

  1. 重构叔块、Open block,create_block_template模块。
  2. 基准测试增加了chain相关测试,包括块块查询和apply功能。
  3. Stdlib修正模块名称顺序,并增加Block、Account、Token等Spec验证。
  4. 实现服务注册器功能,默认启动所有服务,可定制部分服务不启动。
  5. 命令行工具增加generator命令,用于生成配置和block数据。
starcoin - v0.4.3

Published by jolestar about 4 years ago

Main feature and update

  1. Fix the bug of fast sync mode.
  2. Fix the bug of finding common ancestor block during sync, add filtering condition based on difficulty.

中文说明

  1. 修复快速同步模式的 bug.
  2. 修复同步过程中查找共同祖先的 bug,增加根据难度过滤的条件。
starcoin - v0.4.2

Published by jolestar about 4 years ago

Main feature and update

  1. Enhance the Account command.
  2. Enhance the State command and support ResourceView.
  3. Add the command epoch_info_by_number to support querying EpochInfo by block number.
  4. Fix the bug of block time verification.
  5. Fix the bug of block stop after block produce error.
  6. Refactor the logic of initializing Storage via Genesis.
  7. Refactor the error handling during Node startup.

中文说明

  1. 增强 Account 命令。
  2. 增强 State 命令,支持 ResourceView。
  3. 增加 epoch_info_by_number 命令,支持根据区块查询 EpochInfo。
  4. 修复区块时间校验的 bug。
  5. 修复出块错误后出块停止的 bug。
  6. 重构通过 Genesis 初始化 Storage 的逻辑。
  7. 重构 Node 启动过程中的错误处理机制。

Main dependency bump

  1. move-vm bump to fb0724ca39edc9afc8c697d1183d562880433d8e (Aug 11) .
starcoin - v0.4.1

Published by jolestar about 4 years ago

Main feature and update

  1. Refactor and stabilize the basic data types, Block, Transaction, etc.
  2. Add ChainID in the transaction to distinguish the transactions of different chain networks.
  3. Add Gas TokenCode in transactions, in preparation for supporting any Token as Gas in the future.
  4. Improve the expiration mechanism of transactions.
  5. Rebuild and stabilize Stdlib.
  6. Refactor VM and VM error handling.
  7. Fix the Token Type Determination bug in Token Module, and use TokenCode to mark the Token Type, such as: 0x1::STC::STC.
  8. Clean up and stabilize P2P network messages.
  9. Restructure and implement Fast Sync.
  10. Fix some bugs in the uncle's block.
  11. Refactor the CLI, rename the wallet command to account, and implement the off-chain data storage and query of account.
  12. Introduce Move prover, prepare for Stdlib to implement formal proof.
  13. Improve the unit test coverage of Stdlib to 80%.
  14. Refactoring and improving the integration testing framework.
  15. Refactor and stabilize node configuration.
  16. Refactor block rewards, Epoch's tuning algorithm, and STC's distribution strategy.

中文说明

  1. 重构以及稳定化基本数据类型,Block,Transaction 等。
  2. 交易中增加 ChainID 用于区分不同网络的交易。
  3. 交易中增加 Gas TokenCode, 为未来支持任意 Token 作为 Gas 做准备。
  4. 完善交易的过期机制。
  5. 重构以及稳定化 Stdlib。
  6. 重构 VM 以及 VM 的错误处理。
  7. 修复 Token 合约的 Token 类型判断 bug,统一使用 TokenCode 来标记 Token 类型,比如: 0x1::STC::STC。
  8. 清理以及稳定化 P2P 网络消息。
  9. 重构以及完善 Fast Sync。
  10. 修复叔块的若干 Bug。
  11. 重构 cli,将 wallet 命令重命名为 account,实现了 account 的 off-chain 数据存储和检索。
  12. 引入 Move prover,为 Stdlib 实现形式化证明做准备。
  13. 提升 Stdlib 单元测试覆盖率到 80%。
  14. 重构以及完善集成测试框架。
  15. 重构以及稳定化节点配置。
  16. 重构了区块奖励, Epoch 的调整算法,以及 STC 的发行策略。

Main dependency bump

  1. move-vm bump to 9eadc565466d3db3a2b6b4f38c3fea78dcddc372 (July 29) .
  2. rust tool chain bump to 1.45.0.

For a full rundown of the changes please consult the Starcoin 0.4 release milestone

starcoin - Release v0.3.1

Published by jolestar about 4 years ago

Main feature and update

  1. Epoch and Uncle Block mechanism are introduced, the difficulty of PoW can be dynamically adjusted according to the Uncle Block rate.
  2. The Package transaction type is introduced, which supports batch deployment of multiple Modules with initialization scripts.
  3. Stabilization of Token module and issuance mechanism, the value of Token is changed from u64 to u128, which can support larger total amount and higher accuracy.
  4. Implementation of Transaction fee distribution contracts.
  5. Stdlib added SortedLinkedList, Math, BitOperators modules.
  6. The BlockReword contract was refactored to accommodate Epoch and Uncle Block mechanisms.
  7. Module upgrade mechanism is provided, and developers can customize the strategy of contract upgrade. Module upgrade compatibility check is implemented to ensure compatibility with the old version when upgrading.
  8. Refactor Genesis to implement Genesis transaction via Package transaction. Simplify Genesis Account, retaining only 0x1 Genesis account.
  9. Introduced the network rpc framework to simplify the implementation of the rpc interface on p2p networks.
  10. Introduce Move's coverage tool to count stdlib's test coverage.
  11. Simplify Node configuration and unify command line parameter format.

中文说明

  1. 引入 Epoch 以及叔块机制,PoW 出块难度可以根据叔块率来动态调整。
  2. 引入 Package 交易类型,支持批量部署多个 Module 以及附带初始化脚本。
  3. Token 模块以及发行机制的稳定化,Token 的值从 u64 改为 u128,可以支持更大的总量以及更高的精度。
  4. 实现了 Transaction fee 的分发合约。
  5. Stdlib 增加了 SortedLinkedList,Math,BitOperators 模块。
  6. 重构了 BlockReword 合约,以适应 Epoch 以及叔块机制。
  7. 提供了 Module 升级机制,开发者可以自定义合约升级的策略。实现了升级 Module 的兼容性检查,保证升级时和旧的版本兼容。
  8. 重构 Genesis,通过 Package 交易实现 Genesis 交易。简化 Genesis Account,只保留 0x1 一个 Genesis account。
  9. 引入 network rpc 框架,简化 p2p 网络上的 rpc 接口实现。
  10. 引入 Move 的覆盖率工具,统计 stdlib 的测试覆盖率。
  11. 简化 Node 配置以及统一命令行参数格式。

Main dependency bump

  1. move-vm bump to 821ac69a5e3ff3e323601c355d8de42f957d9c26 (July 14) .
  2. libp2p bump to 0.22.
  3. rust tool chain bump to 1.44.1.

For a full rundown of the changes please consult the Starcoin 0.3 release milestone

starcoin - v0.2.0

Published by fanngyuan over 4 years ago

Unify the semantic meaning of txn id, block id, block header id
Stdlib upgrade
Verify Block
Add multiple sub stream support
Transaction Executor refractor
Remove BlockSonsStorage
Fix bug

starcoin - Release v0.1.2

Published by sanlee42 over 4 years ago

starcoin - Release v0.1.0-alpha

Published by sanlee42 over 4 years ago

Package Rankings
Top 8.17% on Proxy.golang.org
Badges
Extracted from project README
Build and Test License codecov LoC