Fuel内部报告:2023年Q1

免责声明:本文由一名Fuel社区的成员翻译。为了提供准确的翻译,我们进行了仔细的检查,但仍然不排除会有错误或遗漏。Fuellabs不对翻译信息的准确性、可靠性或及时性负责。

原文:Inside Fuel: Q1 2023

欢迎收看Fuel 内部报告,这是我们对技术发展和Fuel网络上发生的一切的季度回顾。花点时间了解所有最新消息。

如果没有一个令人难以置信的贡献者团队,构建最快的模块化执行层是不可能的。以下是本季度团队新加入的成员:

🦀在区块链Rust中

根据Rust In Blockchain月度回顾Fuel是本季度最活跃的基于Rust的项目之一,使我们再次跻身基于Rust的区块链最活跃前五名。

✨推出新的Fuel品牌

我们正式推出了最快的模块化执行层Fuel的新视觉标识。

🎙Layer 2 日

就在ETH Denver之前,我们举办了Layer 2 日,这是一场为期一天的活动,汇集了来自世界各地的所有主要的Ethereum可扩展性最大化主义者,讨论区块链的未来、语言设计、账户抽象等!

观看所有会谈和小组讨论的重播:

🏔ETH Denver

ETH Denver是我们与Fuel社区见面、成长和分享见解的绝佳机会。如果你在那里,你可能还有机会喝莫斯科Fuel鸡尾酒,并获得独家Fuel赠品!

ETH Denver也是开发者体验使用SwayFuel上构建的机会。以下是获奖项目的回顾:

一些内部和外部Fuel贡献者在社交媒体上分享的一些最佳内容的样本:

更多精彩的Fuel内容可以**在这里**找到。

Fuelup

  • Fuelup安装脚本和文档现在都在 https://install.fuel.network/latest

  • fuelup show显示了Fuels-rs SDK版本,发布版本针对该版本进行了测试[阅读更多];

  • fuelup show现在展示了兼容性测试中使用的fuels-rs版本。这让用户知道哪个fuels 版本肯定会与工具链兼容;

🌴Sway

常规更新

  • IR优化器添加了一个新的通道管理器;

  • 引入#[allow(dead_code)]注释;

  • 增加了对Enum::<T>::Variant语法的支持;

  • 改进寄存器分配器的性能;

  • 禁止在单元列举变体中使用括号;

  • 增加了对ABI的超级特征的支持;

Bug修复

  • 对死代码分析的各种修复和改进;

  • 修复了类型系统中的多个错误;

  • 修复了Sway中与名称隐藏规则相关的一些问题;

标准库

  • 扩展支持std::inputs中的Input::Message类型字段;

  • 更新了std::storage::getstd::storage::StorageMap::get以返回Option

  • 引入了__state_clearstd::storage::clearstd::storage::StorageMap::remove

  • 引入std::storage::StorageBytes

  • 增加了U128U256Not特征实现;

  • 增加了一个TryFrom特性;

工具

  • forc doc中的项目预览添加了Markdown格式;

  • 添加了#!对内部模块文档属性的支持和//!句法;

  • forc doc中的代码块添加了语法高亮显示;

  • LSP的各种增强,包括从该语言收集更多的代币;

  • 允许通过forc fmt --path格式化单个文件;

Forc

  • 添加了一个forc-submit插件命令,用于向指定节点提交txs

  • forc-deploy中添加salt标志,在forc-disployforc-run中添加maturity标志;

  • 添加了一个forc build标志,将警告视为错误;

Fuel 核心

特点:

  • 实施用于配置节点的Keygen CLI

  • 为带有哨兵的多节点部署绘制Helm图;

  • 用于将 API 请求路由到哨兵的粘性会话;

  • 所有Fuel核心组件的正常关闭;

  • GraphQL解析器中分离API逻辑以支持替代RPC

  • 支持输入上的TxPointer

  • 已实现可重试消息;

  • 支持定期提交 L1 的提款证明;

  • 合约状态、余额和区块头的完全默克尔化;

  • 如果位置正确,零长度内存范围现在可以通过所有权检查;

  • 新的相对跳转操作码、新CFE指令和更新以LDC支持编译器中的位置无关代码;

改进

  • 大量显著的数据库性能改进;

  • 改进了桥接的安全性,有了一个单独的消息已用状态栏;

  • 删除unsafeVM 中的大多数用法以及性能相同的替代方案;

  • 消除虚拟机中的递归瓶颈;

  • ChainID现在在交易ID和谓词所有者哈希过程中使用;

  • $HP现在寄存器指向堆上的第一个可用字节;

  • SMO已更新为在内部环境中从内部余额收费;

  • 改进了负载平衡、指标、超大字段的日志格式化和UTXO修剪;

重新构造:

  • 重构虚拟机以获得更好的单元可测试性;

SDKs (Fuel-TS & Fuel-RS)

🦀Rust SDK

特点:

  • 支持从脚本和合约中返回raw_slice

  • 支持合约调用中的自定义资产转发;

  • 支持Sway#[payable]

  • 支持Sway的可配置常量—使用SDK更新常量值,而无需重新编译您的Sway代码;

  • derive能够Parameterize并且Tokenizable

  • 新的脚本 APIScriptTransactionCreateTransaction;

  • 类型路径支持和冲突类型的解决方案;

  • Vec作为合约方法的输出类型;

  • 一种过滤可支配资源的新方法;

  • 使用谓词支付;

  • 支持从合同中返回Vec<>类型;

  • 返回结果来自try_from_type_application;

  • 添加了排除的最新出块时间和可消耗资源;

改进

  • assert_eq日志的新支持提供了更好的可测试性;

  • 更好的合约部署配置;

  • 更友好地检索最新区块时间;

Bug修复:

  • 存储槽必须在创建tx中进行排序;

  • 使load_contract公开;

  • 硬币查询不再返回已用硬币;

重新构建

  • fuelswasm 违规包/再出口隐藏在std标志后面;

  • 日志解码的改进和ParamType的简化;

  • 合约部署配置;

  • SDK中删除Byte类型;

  • 移除未使用的文件cargo

  • 重组Harness测试;

  • PR模板的更新;

文档

  • 更新有关矢量的文档;

🧰TypeScript SDK

特点

  • 在新的typegen中完全支持谓词和脚本ABI

  • 对谓词和脚本的main论证支持;

  • Typegen添加谓词ABI支持;

  • 将脚本ABI支持添加到Typegen

  • 实现矢量作为输出切片;

改进

  • 谓词现在的工作原理与钱包类似——谓词现在可以用来支付费用等;

  • 切换文档引擎;

  • 重新组织整个存储库中的常量;

  • 封装配置标准化;

Bug修复

  • 修正了B512 ABI编码器和Typegen,以确保正确的Sway类型;

跟着我们

关于我们

Fuel是模块化区块链堆栈的最快执行层。该技术功能强大且时髦,可实现并行交易执行,为开发人员提供扩展所需最大的灵活吞吐量最高级别的安全性。开发人员选择FuelVM是因为其卓越的开发体验以及超越 EVM 局限性的能力。

成为贡献者

Subscribe to Fuel中文频道
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.