2023 Gear 月度技术更新|4 月
2023-06-02 23:19
Gear
2023-06-02 23:19
订阅此专栏
收藏此文章

欢迎来到 2023 年 4 月更新,重点介绍上个月的技术进展。

让我们深入了解以下重要的技术更新:

  1. Gear 的 CLI 工具获得大幅改进, Pull request #2516[1] 添加了构建智能合约时生成的 *.meta.txt 文件中的新元数据显示,删除了 Wasm 执行器,并将“upload-program”子命令合并到“upload”命令中。

  2. “upload-program”子命令与“upload”合并,“gcli program meta”和“gcli program state pid”命令分别显示元数据和程序状态。

  3. 现在可以使用“gcli upload”访问“upload-program”子命令,“gcli upload code”有一个新的“-code-only”选项。

  4. 可以解析编码结构以使用纯 Rust 和旧功能进行快速调试和状态检查。

  5. Pull Request #2522[2] 为每个 Workspace 添加了对符号扩展 Wasm 指令的支持。

  6. 此更新修补了所有与符号扩展相关的包,并在“gear-wasm-builder”的“wasm-opt”中重新启用符号扩展。它还包括用于符号扩展指令权重的变通方法。

  7. 该更新适用于以下补丁:gear-tech/wasm-instrument#v0.2.1-sign-ext、gear-tech/wasm-instrument#v0.3.0-sign-ext、gear-tech/wasmi#v0.13.2- sign-ext 和 gear-tech/parity-wasm#v0.45.0-sign-ext。

  8. 为了防止内部编译错误,#[feature = “sign-ext”] 仅在这些分支的源文件中进行了注释,而保留了“features.sign-ext”。

  9. Pull Request #2569[3] 中的技术更新引入了一项新功能,通过 validator_set pallet 管理 pallet_session 中的验证器。

  10. 通过此次更新,用户可以向“pallet_session”添加或删除验证器,增强了软件的灵活性。但是,由于 pallet ID 位于“pallet_session”之后,因此此功能不能用于新网络。

  11. 会话初始化存在问题,会话 0 的验证器集在创世块中为空。这个问题已在 gear-tech/substrate-validator-set@fc0fbd5 更新中修复,方法是在验证器列表为空时回退到会话。

除了上述更新外,还进行了以下修改:

Pull Request #2398[4] 将 Gear 内存页大小更改为 16kb,允许动态内存页大小。更新重构了惰性页面,允许在运行时升级期间修改内存页大小,从而提高整体软件性能。

Pull Request #2507[5] 是一系列收费程序任务中的第一个,引入了在特定数量的块后暂停程序的机制。在技术更新后,程序的免费租用期到期后,程序资源暂停(内存页面、等待列表消息等)是可能的。此功能有助于管理程序费用并提供更好的用户体验。

以下是技术变更的摘要:

Pull Request #2398[6]

在改变 Gear 内存页大小后,通过重构的内存页懒加载技术,实现了动态分配内存页大小,Gear 的性能得到了改善。

Pull Request #2507[7]

引入了一种机制来在特定数量的块之后暂停程序,以管理程序费用。

Pull request #2516[8]

启用了对 gcli 工具的更新:

  • 新的元数据显示和 wasm 执行器的删除。
  • 上传程序命令已与上传合并。gcli program meta 和 gcli program state pid 命令显示元数据和程序状态。
  • 现在可以解析编码结构以进行快速调试和状态检查。
Pull Request #2522[9]

通过修补的符号扩展相关包在每个工作区中启用符号扩展。应用符号扩展指令的权重解决方法。

Pull Request #2569[10]

验证人管理功能确保:

  • 用户可以向 pallet_session 添加或删除验证人,增强软件灵活性。Validator_set pallet 不能用于新网络。
  • gear-tech/substrate-validator-set@fc0fbd5 更新中修复的 Session 初始化问题。

Gear 社区继续解决现有挑战并改进代码库,确保平台的性能始终表现出色。

加入 Gear 并开始构建

如果你是 builder 或开发者,希望利用 Gear Protocol 的独特功能进行去中心化和自主智能合约开发,请加入 Gear 社区。异步消息传递和 gas 预留支持支持多种用例,为区块链生态系统中的用户提供新的去中心化功能和价值。你可以通过 hello@gear-tech.io 联系 Gear 以了解更多信息并开始与 Gear Community 合作。

参考资料

[1] 

Pull request #2516: https://github.com/gear-tech/gear/pull/2516

[2] 

Pull Request #2522: https://github.com/gear-tech/gear/pull/2522

[3] 

Pull Request #2569: https://github.com/gear-tech/gear/pull/2569

[4] 

Pull Request #2398: https://github.com/gear-tech/gear/pull/2398

[5] 

Pull Request #2507: https://github.com/gear-tech/gear/pull/2507

[6] 

Pull Request #2398: https://github.com/gear-tech/gear/pull/2398

[7] 

Pull Request #2507: https://github.com/gear-tech/gear/pull/2507

[8] 

Pull request #2516: https://github.com/gear-tech/gear/pull/2516

[9] 

Pull Request #2522: https://github.com/gear-tech/gear/pull/2522

[10] 

Pull Request #2569: https://github.com/gear-tech/gear/pull/2569

历史文章

Gear 合约大揭秘

如何使用 gear-js SDK

如何部署 Gear 合约?

Gear Technologies 完成 1200 万美元融资

Gear 的技术优势

关于 GearFans

Gear 是波卡生态的计算组件,GearFans 是 Gear 爱好者社区。


官网:https://gear-tech.io/
Twitter:https://twitter.com/gear_techs
中文 Twitter:https://twitter.com/gear_fans 
Vara Twitter:https://twitter.com/VaraNetwork
Vara Twitter CN:https://twitter.com/VaraNetwork_CN
GitHub:https://github.com/gear-tech
Discord:https://discord.com/invite/7BQznC9uD9
Telegram 中文群:https://t.me/Gear_CN
Vara Telegram CN:https://t.me/varanetwork_cn
QQ 群:67770333

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

Gear
数据请求中
查看更多

推荐专栏

数据请求中
在 App 打开