Remix v0.34.0 版本介绍

  • aisiji
  • 更新于 2023-07-03 16:16
  • 阅读 2453

Remix v0.34.0 更新重点:Etherscan 验证代码更好用, 还支持代理合约验证、全新的 Solidity 分析器, 适配 WalletConnect v2.0

image.png

我们已经进入了一年中你可以在花园里的西红柿成熟时听到邻居在淋浴时唱歌的时候。在这个精彩的 Remix 版本中,我们关注是 Linting、Verifying 和 Analyzing……

0.34.0 的重大新闻

  • Etherscan 验证插件更新,包括代理合约!
  • 静态分析插件中添加了 Linting
  • 文件资源管理器的工作区导航菜单已移至左侧。在那里可以导航到所有工作区!
  • 在导航菜单中加入了用于验证和部署的新脚本
  • 部署和运行处显示 EVM 版本的标签
  • Remix 的 WalletConnect 插件已经适配 WalletConnect v2.0

静态分析

Solidity 静态分析插件已重命名为 Solidity 分析器。这个插件现在与 SolHint linter 打包在一起。这个插件也运行 Slither 静态分析(如果你是用Remixd连接文件系统),当然还有 Remix 静态分析。

要使用该插件,源码文件应该已经编译过。

image.png

正如你在上图看到的,Slither 被禁用,Slither 功能只有当你用 Remixd 将 Remix 连接到本地文件系统时才起作用。

导航菜单

工作区导航菜单现在位于文件资源管理器工作区区域的左上角。

image.png

而且,在导航内我们添加了一些新选项:

image.png

添加 Etherscan 脚本(Add Etherscan scripts ) 将在脚本文件夹中添加一个文件夹,其中包含两个 .ts 文件 : 一个用于验证,另一个用于获取已验证合约的 GUID。用于验证的脚本需要输入链 ID ,它也可用于验证代理合约。

添加合约部署脚本(Add contract deployer scripts) 也添加了几个脚本。一个脚本用于自动部署,另一个是工厂脚本,用于将合约部署到不同的链上,但合约的地址是相同的。

你发可以继续探索运行脚本的其他功能!

了解合约的 EVM 版本

并非所有 EVM 版本都可用于所有链。我们在部署和运行中添加了一个标签,表明合约是使用哪个版本的 EVM 编译的。

image.png

Etherscan 插件

针对所有合约验证者(我确定你 100% 就是),我们对 Etherscan 插件进行了一些重要更新。

当然,用 Etherscan 进行合约验证并不是验证合约的唯一方法。你还可以用Sourcify 服务(部署时勾选发布到 IPFS 的复选框,Sourcify 服务就能验证你的合约)或者用 Remix Sourcify 插件。但我离题了……

Etherscan 插件已重命名,现在称为:
合约验证 - Etherscan(Contract Verification — Etherscan)

image.png

你可以从插件管理器列表访问它。

到这个版本为止,除了以太坊主网和测试网之外,这个插件现在还支持通过Etherscan 系列区块链浏览器在其他链上进行验证。但你需要选择一个浏览器有 API Key 的链,然后你需要输入你的 API Key。

image.png

例如,如果你尝试在如 Optimism 这样的 L2 链上进行验证,则需要在https://optimistic.etherscan.io/创建一个帐户,然后获取该网站的 API Key 。并非所有 Etherscan 区块浏览器都有 API Key 。Remix 合约验证 - Etherscan 插件仅适用于你可以登录并获取 API Key 的区块浏览器。

输入 API Key 后,将打开插件的主页进行验证。

image.png

网络是在“部署和运行”以及浏览器钱包(如果你使用了)中选择的。你也需要编译合约,当然,还需要部署合约。

使用构造函数参数验证合约

从这个版本开始,不再需要输入构造函数参数的编码。

可以像部署合约时一样输入。

image.png

验证代理合约

现在可以在 Etherscan 插件中验证用 UUPS 设计模式的可升级合约。在验证代理合约之前,必须先验证实现合约。

实现合约部分

如果你还没有验证实现合约,请不要在验证实现合约时勾选代理合约。只需像标准合约一样验证实现合约。

然后,才可以继续验证代理合约。

代理合约部分

要验证代理合约(在验证实现合约之后):

勾选“这是代理合约地址(It’s a proxy contract address)”

合约地址(Contract Address) 框中复制实现合约的地址并将其粘贴到期望的实现地址(Expected Implementation Address) 框中。

image.png

然后,将代理合约地址粘贴到 “合约地址(Contract Address)” 框中,然后点击 “验证(Verify)”

生成验证脚本

点击 “生成验证脚本(Generate Verification Scripts)” 按钮将在工作区的脚本文件夹中创建一个名为 etherscan 的文件夹,其中包含用于验证和返回收据状态的 .ts 文件。

更新 WalletConnect 插件

自 2023 年 6 月 28 日起,用 WalletConnect 的 DApp 和钱包将需要使用 WalletConnect v2.0。Remix WalletConnect 插件已准备好升级。请记住,升级后并非所有移动钱包都可以使用。在你的移动钱包文档或这里查看有关此内容的信息。

谢谢 Remix Summertime 用户

请报告你在 Remix 中发现的任何问题。并且,一如既往,请向我们发送有关你希望在 Remix 中看到的更改的任何建议,或者你认为应该添加的任何有用的功能。

对于未来的版本,我们正在寻找更多Beta 测试人员。如果你有兴趣,请填写表格

我们已将社区频道从 Gitter 迁移到 Discord。尽管我们仍然关注Gitter上的讨论(现在通过 Matrix),但我们鼓励你转移到我们的Discord服务器。或者,给我们发送电子邮件:remix@ethereum.org!

原文链接:https://medium.com/remix-ide/remix-release-v0-34-0-f40d90c197e2

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
aisiji
aisiji
江湖只有他的大名,没有他的介绍。