Fuel内幕-2022年的夏天 (Inside Fuel — Summer 2022)

Inside Fuel — Summer 2022

Welcome to Inside Fuel, our review of the technical developments on the Fuel Network. Take a moment to catch up with all of the latest news.

欢迎来到 Inside Fuel,这是我们对 Fuel网络技术发展的回顾。欢迎您拨冗了解所有最新消息。

Fuelup简介 (### Introducing Fuelup)


什么是Fuelup (What is Fuelup?)

Fuelup is the official package manager and multiplexer for Fuel that installs The Fuel Toolchain from the official release channels. It enables you to easily install pre-packaged toolchains, keep them up to date or even create custom toolchains and switch between them.

FuelupFuel 的官方包管理器和复用器,它从官方发布渠道安装Fuel工具链 (The Fuel Toolchain)。它使您能够轻松安装预打包的工具链,使其保持最新状态,甚至创建自定义工具链并在它们之间切换。

Binaries are executed through Fuelup as proxies which allow for flexibility in the execution of tools.

二进制文件通过 Fuelup 作为代理执行,使得工具的执行变得灵活。

It simplifies building and maintaining Sway applications with forc and fuel-core for common platforms.

它为一般平台使用 forcfuel-core 简化了 Sway 应用的构建和维护。


Right now, fuelup has the latest toolchain as the only pre-packaged official toolchain. Components in this toolchain are tested for compatibility in our GitHub CI before being updated. For more flexibility at the cost of possible incompatibility or instability, advanced users can specify specific versions of components they want to install and use.

目前,fuelup 拥有 latest 工具链,也是唯一预打包的官方工具链。此工具链中的组件在更新之前在我们的 GitHub CI 中进行了兼容性测试。以可能的不兼容或不稳定为代价,获得了更大的灵活性,高级用户可以指定他们想要安装和使用的特定版本的组件。

Basic usages such as keeping the toolchain or Fuelup up to date can be found here.

可以在 此处 找到基本用法,例如使工具链或保持更新 Fuelup 。

For more details on how Fuelup works, as well as usage examples, please refer to The Fuelup Book.

有关 Fuelup 工作原理的更多详细信息以及用例,请参阅 The Fuelup Book

Note that Fuelup is still in active development with more features soon to come. Opening issues for any bugs, or suggestions to improve it are welcome.

请注意,Fuelup 仍在积极开发中,即将推出更多功能。欢迎指出任何错误,提出意见或建议。

Swap应用 (Sway Applications)


Sway应用存储库 (The Sway Applications Repository)

The purpose of the Sway Applications repository is to demonstrate what can be built with Sway and to promote good development practices.

Sway 应用存储库的目标是,演示可以使用 Sway 构建什么并激发优秀的开发实践。

That being said, the repository should be deemed as a living project since the applications will be actively maintained, and thus it is likely that none of them will ever reach their final form!

也就是说,存储库应该被视为一个活的项目,因为应用将被积极维护,因此很可能它们都不会达到最终形式/一直更新!

The repository is young so there isn't anything for anyone to use yet, however, we have lots of applications in development, and lots more planned to be worked on in the near future.

存储库还很年轻,所以还没有任何东西可供任何人使用,但是,我们有很多应用正在开发中,并且计划在不久的将来进行更多工作。

So far, the applications are planned to have a smart contract to demonstrate Sway, tests written in Rust to demonstrate the Rust-SDK, and a user interface to demonstrate the use of the Typescript-SDK.

到目前为止,这些应用计划有一个智能合约来演示 Sway,用 Rust 编写的测试来演示 Rust-SDK,以及一个用户界面来演示 Typescript-SDK 的使用。

That isn't to say that you cannot have a CLI application, a plugin, or any other type of app. Those are simply not in development at the moment.

这并不是说您不能拥有 CLI 应用程序、插件或任何其他类型的应用。只是说这些目前根本不在开发中。

This part presents the applications that have gone through some level of scrutiny and have been deemed acceptable to be merged into the master branch.

这部分介绍了经过一定程度审查并被认为可以合并到主分支中的应用。

NOTE
This does not mean that they are complete nor that development has ceased.

注意
这并不意味着它们是完整的,也不意味着开发已经停止。


全新的DAO智能合约原型 (New DAO Smart-Contract prototype)


DAO是什么? (What is a DAO?)

A decentralized autonomous organization (DAO) is akin to an on-chain government where participants are able to cast votes on proposals using some governance token. Various consensus mechanisms may be implemented in order to determine whether a proposal will pass and if that happens then the DAO will begin to operate under the rules of the new proposal.

去中心化自治组织(DAO)类似于链上政府,参与者可以使用一些治理代币对提案进行投票。可以实施各种共识机制来确定提案是否会通过,如果通过,那么 DAO 将开始根据新提案的规则运行。


In this implementation, the user deposits governance tokens and receives some number of votes that can be cast and recast on different proposals. They can vote in favor or against proposals and they can transform their votes back into the governance tokens if they wish to withdraw.

在此实施中,用户存入治理代币并获得一定数量的选票,这些选票可以针对不同的提案进行投票和重新投票。他们可以投票赞成或反对提案,如果他们希望撤回,他们可以将投票转换回治理代币。

  • The smart contract is mostly complete for the basic implementation. There are some issues that need to be worked out but a UI can be started.

    智能合约的实施基本完成。有一些问题需要解决,但已经可以启动 UI。

  • The user interface does not currently exist.
    用户界面当前还不存在。

更新 (Updates)

Swap更新 (Sway Updates)


什么是Swap (What is Sway?)

Sway is a language for writing smart contracts for the Fuel Virtual Machine (FuelVM), a blazing-fast, blockchain-optimized VM designed for the Fuel blockchain. It is heavily inspired by Rust and aims to bring modern language development and performance to the blockchain ecosystem. Start learning the Sway language today with the Sway Book and the FuelVM Bootcamp.

Sway 是一种用于为 Fuel 虚拟机 (FuelVM) 编写智能合约的语言,这是一种专为 Fuel 区块链设计的超快、区块链优化的虚拟机。它深受 Rust 的启发,旨在为区块链生态系统带来现代语言的开发和性能。现在可以立即开始学习 Sway 语言,使用 Sway Book 和 [FuelVM 训练营](https: //www.youtube.com/watch?v=GKNuaFcPaXc)。


版本 0.14.5 - [0.21.0](https://github.com/FuelLabs/sway /releases/tag/v0.21.0) 已发布 (Versions 0.14.5 - 0.21.0 were released)
  • The addition of U256 , StorageVec and more, in the standard library. These are useful data structures for writing Sway programs! And they also open up the doors for Sway users to implement their own complex data structures;
    在标准库中添加了U256StorageVec 等。这些是编写 Sway 程序的有用数据结构!它们还为 Sway 用户实现自己的复杂数据结构打开了大门;

  • The break and continue statements are now supported;
    现在支持 breakcontinue 语句;

  • New swap  method now available on Vec;
    新的 swap 方法现在可以在Vec 上使用;

  • New JSON ABI format supporting generics has been added;
    添加了支持泛型的新 JSON ABI 格式;

  • A new minimum forc version field has been added to the Forc.toml manifest;
    Forc.toml 清单中添加了一个新的最低强制版本字段;

  • Introducing configuration-time constants in Forc.toml;
    Forc.toml 中引入配置时间的常量;

  • Bytecode size has been optimized;
    字节码大小已优化

Fuel核心更新 (Fuel Core Updates)

版本 0.9.1 - [0.10.1](https://github.com/FuelLabs/fuel-core/ release/tag/v0.10.1) 已发布 (Versions 0.9.1 - 0.10.1 were released)
  • New fuel-debugger CLI with Automatic Storage Management (ASM) support;
    新的 fuel-debugger CLI 具有自动存储管理 (ASM) 支持;

  • New VM instructions are now supported:

    • GTF - get transaction field;
    • SMO - send message output;
    • JMP/JNE - dynamic jump;

    现在支持新的 VM 指令:

    • GTF - 获取交易字段;
    • SMO - 发送消息输出;
    • JMP/JNE - 动态跳转;
  • The Produce Block API is now usable for SDK tests;
    Produce Block API 现在可用于 SDK 测试;

  • Integrated Ethereum contract event handling into fuel-core;
    将以太坊合约事件处理集成到 fuel-core;

  • Message inputs and outputs in Fuel Core:

    • Message receiving in the Relayer from L1;
    • TxPool validation of Message inputs;
    • Block execution message spending validation;
    • GraphQL APIs for querying available messages to include in a transaction;

    Fuel Core 中的消息输入和输出:

    • 在中继器中从 L1 接收消息;
    • 消息输入的 TxPool 验证;
    • 区块执行消息花费验证;
    • 用于查询包含在交易中的可用消息的 GraphQL API;
  • Breaking Transaction format changes:

    • Added TxPointer;
    • Removed byte_price;
    • Removed static contracts;

    打破交易格式的变化:

    • 添加了 TxPointer;
    • 删除了 byte_price;
    • 删除了静态合约;
  • Integrated latest VM Changes into fuel-core v0.10.x node:

    • Previously implemented opcodes such as JMP & GTF are now available for use in the node;
    • New TIME opcode to fetch the timestamp on the current block header;

    将最新的 VM 更改集成到fuel-core v0.10.x 节点中:

    • 以前实现的操作码,例如JMPGTF现在可以在节点中使用;
    • 新的 TIME 操作码来获取当前区块头的时间戳;

Fuel-rs (Rust SDK) 更新 Fuel-rs (Rust SDK) Updates

版本 0.17.0 - [0.21.0](https://github.com/FuelLabs/fuels-rs/ release/tag/v0.21.0) 已发布 (Versions 0.17.0 - 0.21.0 were released)
  • You can now bundle many contract calls into one, with ContractMultiCall, which has been officially released;
    现在可以将多个合约调用捆绑为一个,使用正式发布的ContractMultiCall

  • New feature to directly convert raw bytes into contract-defined types;
    直接将原始字节转换为合约定义类型的新功能;

  • New API for manual and automatic storage initialization;
    用于手动和自动存储初始化的新 API;

  • New API to manipulate block height, very useful for testing specific conditions between contract calls;
    操作区块高度的新 API,对于测试合约调用之间的特定条件非常有用;

  • New API to fetch the contract ID and the wallet used to create a contract instance;
    用于获取合约 ID 和用于创建合约实例的钱包新 API;

  • Bech32 support: all of the internal addresses (ContractIdAddress) are now represented as Bech32;
    Bech32 支持:所有内部地址(ContractIdAddress)现在都表示为``Bech32`;

  • You can now create test wallets with multiple custom assets;
    您现在可以创建具有多个自定义资产的测试钱包;

  • You can now generate test nodes with configurable consensus parameters;
    您现在可以生成具有可配置的共识参数的测试节点;

  • You can now change the underlying wallet of a contract instance with the new contract API ._with_wallet();
    您现在可以使用新的合约 API ._with_wallet() 更改合约实例的对应钱包;

  • Wallet.get_coins improvement: now you can specify with assets to be returned;
    Wallet.get_coins 改进:现在您可以指定要退回的资产;

  • Support for the new JSON ABI — generics, VecOption, and Result support coming up!
    支持新的 JSON ABI - 泛型、VecOptionResult 支持即将推出!

  • Wallet is now Wallet for read-only operations that don’t need a private key and WalletUnlocked for read-write operations. This reduces the scope of the default wallet and reduces security risks;

Wallet 现在是 Wallet 用于不需要私钥的只读操作和 WalletUnlocked 用于读写操作。这减少了默认钱包的范围,降低了安全风险;

  • Predicates are now supported;
    现在支持谓词;

For more details, check out the Rust SDK Book here.

有关更多详细信息,请查看 Rust SDK 手册 此处

Fuel-ts (Typescript SDK)更新 Fuel-ts (Typescript SDK) Updates
版本 0.14.5 - [0.21.0](https://github.com/FuelLabs/sway /releases/tag/v0.21.0) 已发布 (Versions 0.7.0 - 0.12.0 were released)

  • New way to pass amount/assetId overrides with the new forward;
    传递amount/assetId 的新方法被新的forward覆盖;

  • Added contract slots on contract deployments;
    在合约部署中添加合约槽;

  • New contract getter on the Provider;
    Provider 上的新合约获取器;

  • New balances API have been added;
    添加了新的余额 API;

  • New multicall (contract calls bundling) API;
    新的多调用(合约调用捆绑)API;

  • Full predicates support;
    完整的谓词/判定支持;

  • You can now set the gas for each call;
    您现在可以为每次调用设置gas;

  • Provider now integrated with query chain information;
    Provider 现在与查询链信息集成;

  • Support for generic custom types;
    支持通用自定义类型;

  • Support for Option and Result;
    支持“选项”和“结果”;

  • Support for the new JSON ABI — Vec support is coming up!
    支持新的 JSON ABI - Vec 支持即将推出!

  • Fixes to the required amount of coins for contract calls;
    修正了合约调用所需的代币数量;

  • Automatic storage initialization upon contract deployment;
    合约部署时自动初始化存储;

  • Better interface for transaction fee payment;
    更好的交易费用支付界面;


今天就开始在Fuel上构建! (Start building on Fuel today)

使用Fuel构建可用的开发资源 (Developer Resources for Building with Fuel)

  • A step-by-step guide to building a full-stack dapp on Fuel can be found here
    这里 可以找到在 Fuel 上构建全栈 dapp 的分步指南
  • The Fuel Book can be found here. It contains everything you need to know about Fuel, from its modular design to its key features.
    Fuel Book 可以在 这里 找到。它包含您需要了解的有关 Fuel 的所有信息,从模块化设计到主要功能。
  • The Sway Book can be found here.
    Sway Book 可以在 这里 找到。

介绍Fuel补助计划 (Introducing the Fuel Grants Program)

The Fuel Grants program is a way to support projects building on Fuel. Currently, we are offering generous grants ranging from 10,000 - 150,000 USD to developers, creators, and new or existing projects to come build on the world's fastest modular execution layer. We welcome all builders with a passion for decentralization, web3, and building the future. We envision an autonomous future, where systems are built to power the next generation of human coordination and cooperation.

Fuel补助计划是支持以 Fuel 为基础的项目的一种方式。目前,我们向开发人员、创作者以及新的或现有的项目提供 10,000 - 150,000 美元 的慷慨赠款,来帮助在世界上最快的模块化执行层上构建。我们欢迎所有对去中心化、web3 和建设未来充满热情的建设者。我们设想一个自治的未来,建立系统来推动下一代人类协调与合作。

Building on Fuel means breaking free from the constraints of monolithic blockchains that have held us back.

以 Fuel 为基础意味着摆脱阻碍我们前进的单一区块链的限制。

To get started applying for a grant, fill out this form. We’re incredibly excited to launch this program, see more people building on Fuel, and taking the modular pill. If you have any additional questions please feel free to reach out to grants@fuel.sh.

要开始申请资助,请填写 此表格。我们非常高兴能够启动这个计划,看到更多的人在 Fuel 上构建,并使用模块化服务。如果您有任何其他问题,请随时与 grants@fuel.sh 联系。


其他 (Other)

播客和推特空间 (Podcasts and Twitter Spaces)

SwaySwap AMA

In case you missed it, discover SwaySwap, a blazingly fast DEX built on the fastest modular execution layer with the developers that built it during the Twitter Space: SwaySwap AMA.

怕您错过了,现在请看 SwaySwap, 一个建立在最快的模块化执行层之上的极快的DEX 并在 Twitter Space: SwaySwap AMA 期间与构建它的开发人员交流.

新闻 (In the News)

☕ ️英文内容 (English Content)

🇹🇷 土耳其语内容 (Turkish Content)

🇷🇺 俄语内容 (Russian Content)


According to the Rust In Blockchain monthly review (July and August), Fuel is still one of the most active Rust-based projects this summer. Fuel ranked 5th in July and August 2022, right behind Sui, Aptos, Parity, and Solana, with 225 merged PRs, 203 closed issues, and 142 open issues in July and 253 merged PRs, 193 closed issues, and 139 open issues in August.

根据Rust In Blockchain 月度审查(7 月 和[8 月](https://rustinblockchain.org/newsletters/rib -newsletter-39/)),Fuel 仍然是今年夏天最活跃的基于 Rust 的项目之一。 Fuel 在 7 月和 2022 年 8 月排名第五,紧随 Sui、Aptos、Parity 和 Solana,7 月份有 225 个合并 PR、203 个已关闭问题和 142 个未解决问题,8 月份有 253 个合并 PR、193 个已关闭问题和 139 个未解决问题.


公开展示 (Public Appearances)

🇫🇷 EthCC

We had the opportunity to give several talks during the EthCC in Paris (July 19-21). In case you missed them, here are the replay links below:

我们有机会在巴黎的 EthCC(7 月 19 日至 21 日)期间进行了几次会谈。如果您错过了它们,以下是重播链接:

🇩🇪 柏林区块链周和 EthBerlin (Berlin Blockchain week & EthBerlin)

Some of the Fuel contributors will be attending the Berlin Blockchain week (Sept 12-18) and EthBerlin (Sept 16-18). Come say hi and grab some swag if you're around.

一些 Fuel 贡献者将参加 柏林区块链周(9 月 12 日至 18 日)和 [EthBerlin](https://ethberlin.ooo /)(9 月 16 日至 18 日)。如果你在附近,来打个招呼,拿些东西!


关注我们 (Follow us)

If you don’t want to miss any update on the Fuel Network, simply follow us and activate the notification bell:

如果您不想错过 Fuel Network 的任何更新,只需关注我们并激活通知铃!

关于我们 (About us)

Fuel is the fastest execution layer for the modular blockchain stack. Powerful and sleek, the technology enables parallel transaction execution, empowering developers with the highest flexible throughput and maximum security required to scale. Developers choose the FuelVM for its superior developer experience and the ability to go beyond the limitations of the EVM.

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

加入我们 (Join us)

If you want to join us in this journey, here are our current job openings.

如果您想加入我们的旅程,这里是我们的当前职位空缺

赞赏