{Solidity:log}
Solidity 0.8.27 版本发布公告
发布于 2024 年 9 月 4 日 由 Solidity 团队
我们很高兴地宣布 Solidity 编译器 v0.8.27 发布。这个最新的编译器版本为传统管道带来了在 require 中使用自定义错误的支持,优化器改进,例如优化 IR 的缓存,这将通过 IR 加速编译,以及一些错误修复等等!值得注意的功能 传统管道中 require 中的自定义错误支持 Solidity 中的自定义错误提供了一种方便且节省 gas 的方法,用于向用户解释操作失败的原因。支持使用错误与 require 函数...
阅读更多2024 年阴险 Solidity 竞赛公告
发布于 2024 年 7 月 31 日 由 Vishwa Mehta
2024 年阴险 Solidity 竞赛强势回归!在 2020 年和 2022 年的两个成功赛季之后,受 2017 年首届竞赛的启发,我们带着今年激动人心的挑战回来了。在深入探讨 2024 年主题之前,让我们快速回顾一下阴险 Solidity 竞赛是什么。阴险 Solidity 竞赛是关于编写看似无害的代码,但实际上包含恶意机制或隐藏的后门。通过这场竞赛,我们的目标是:提高对智能合约中的...
阅读更多深入了解 Via-IR
发布于 2024 年 7 月 12 日 由 Solidity 团队
在当前的默认设置中,Solidity 编译器不会将代码转换为任何中间表示(IR)来生成 EVM 字节码,而是以直接的方式进行。然而,有一个最近开发的 via-IR 编译管道,它使用 Yul 编程语言作为中间表示。在高级别上,这两个管道的编译步骤看起来像以下这样:编译管道 在这篇博文中,我们将深入了解 via-IR 的详细信息,了解...
阅读更多Solidity 0.8.26 版本发布公告
发布于 2024 年 5 月 21 日 由 Solidity 团队
我们很高兴地宣布 Solidity 编译器 v0.8.26 发布。这个最新的编译器版本为 require 带来了自定义错误支持,改进了默认的 Yul 优化器序列,这将通过 IR 加速编译,以及一些错误修复等等!值得注意的功能 require 中的自定义错误支持 Solidity 中的自定义错误提供了一种方便且节省 gas 的方法,用于向用户解释操作失败的原因。Solidity 0.8.26 引入了备受期待的功能,它允许在 require 函数中使用错误。require 函数...
阅读更多2023 年 Solidity 开发者调查结果
发布于 2024 年 4 月 3 日 由 Vishwa Mehta
编辑说明:我们注意到 [1] 常见的以太坊专用 IDE 和 [2] Sourcify 使用情况的图形表示存在一个小错误。本文中的结果和幻灯片中相应的图形数据已更新,以反映这种修正,从而准确地代表调查数据。我们很高兴与您分享 2023 年 Solidity 开发者调查结果!在这篇博文中,我们将回顾关键见解以及对调查各个部分的详细分析。在...
阅读更多Solidity 0.8.25 版本发布公告
发布于 2024 年 3 月 14 日 由 Solidity 团队
介绍 Solidity 编译器的最新版本:v0.8.25。这是继 2024 年 3 月 13 日协调世界时 13:55 在以太坊主网上发生的 Dencun 硬分叉后的一个小版本。Dencun 升级 Dencun 升级结合了以太坊共识层和执行层的变化。EIP-7569 中列出了所有协议更改。随着 Dencun 现在在主网上运行,我们相应地将 cancun 作为编译器将为其生成代码的默认 EVM 版本。代码生成器中的 MCOPY 之前的版本使 mcopy() 内置函数...
阅读更多Solidity 0.8.24 中的瞬时存储操作码
发布于 2024 年 1 月 26 日 由 Solidity 团队
Solidity 0.8.24 支持即将到来的 Cancun 硬分叉中包含的操作码,特别是根据 EIP-1153 的瞬时存储操作码 TSTORE 和 TLOAD。瞬时存储是 EVM 级别上的一个期待已久的功能,它引入了除了内存、存储、调用数据(以及返回数据和代码)之外的另一个数据位置。新的数据位置的行为类似于存储,类似于键值存储,主要区别在于瞬时存储中的数据不是永久的,而是仅限于当前交易,之后...
阅读更多Solidity 0.8.24 版本发布公告
发布于 2024 年 1 月 26 日 由 Solidity 团队
我们很高兴地宣布 Solidity 编译器 v0.8.24 发布。这个最新的编译器版本带来了对“Cancun”网络升级的准备,包括对瞬时存储(EIP-1153)、分片 Blob 交易(EIP-4844)等的支持。macOS 的发行版二进制文件现在也与苹果硅芯片兼容。“Cancun”网络升级“Cancun”网络升级以操作码和预编译的形式提供新功能,这些功能需要显式使用才能获得任何好处,但也对现有... 进行了更改。
阅读更多2023 年 Solidity 开发者调查正在进行中!
发布于 2023 年 12 月 8 日 由 Vishwa Mehta
我们最近圆满结束了 Solidity 峰会,并在年底之前有一个最后宣布!2023 年的 Solidity 开发者调查正在进行中!我们很乐意收集您对 Solidity 的反馈和见解!📝 参加调查!📝 您可以在此处找到 2022 年 Solidity 开发者调查的先前结果。在 2022 年,来自 100 个不同国家的 1401 名开发者参加了调查,其中 41% 的开发者每天使用 Solidity,而 37.3% 的开发者...
阅读更多2023 年 Solidity 峰会回顾
发布于 2023 年 11 月 30 日 由 Solidity 团队
我们难以置信,距离我们在土耳其伊斯坦布尔举行第三届 Solidity 峰会已经过去了两个星期!2023 年 Solidity 峰会是 Devconnect 周的一部分,于 2023 年 11 月 16 日星期四举行。这场活动吸引了大约 300 名参与者,参与度很高。这一天充满了 15 多个主题的演讲:Solidity 内部知识和技巧 Solidity 工具 智能合约测试和安全最佳实践 EVM 语言和机制 ... 以及更多!您可以在这里找到当天的完整议程。您...
阅读更多逐字块重复数据删除中的错误
发布于 2023 年 11 月 8 日 由 Solidity 团队
10 月 24 日,Ori Pomerantz 报告了一个影响 Yul 代码中逐字内置函数使用的问题。经过调查,团队能够确认问题并找到其根源。该错误存在于块重复数据删除优化器步骤中,其中识别并合并等效的汇编块。由相同操作码包围的逐字汇编项被错误地认为是相同的并被统一。该错误自 0.8.5 版本(引入了逐字)开始存在,并且仅影响启用了优化的纯 Yul 编译。内联汇编块中使用的 Solidity 代码或 Yul 不会...
阅读更多