{Solidity:log}
Solidity 0.7.5 版本发布公告
发布于 2020 年 11 月 18 日 Solidity 团队
Solidity v0.7.5 添加了通过 pragma abicoder v1 和 pragma abicoder v2 选择 ABI 编码器的功能,为将 ABI 编码器 v2 设为 0.8.0 的默认值做准备,并引入了 --experimental-via-ir,它通过新的实验性基于 Yul 的编译器管道进行编译。完整变更日志 语言特性:能够使用 pragma abicoder v1 和 pragma abicoder v2 选择 abi 编码器。内联汇编:使用 .offset 和 .length 访问动态数组类型 calldata 变量的 calldata 偏移量和长度(元素数量)。两者都...
阅读更多向 Solidity 团队提问 #1 回顾
发布于 2020 年 11 月 4 日 Solidity 团队
我们上周在 Reddit 上举办了我们的第一次 Solidity 团队 AMA!我们想借此机会总结一下这篇文章中最有趣和最受关注的问题和答案。如果您有兴趣浏览完整的 AMA 线程,可以在这里进行。一般问题 路线图展望:Solidity 团队将中长期最重要的功能目标视为哪些?实现这些目标的最大障碍是什么?就编译器而言...
阅读更多Solidity 0.8.x 预览版发布
发布于 2020 年 10 月 28 日 Solidity 团队
随着 Solidity 0.8.x 系列即将发布,我们想提供一些关于即将发布的重大变更的见解。我们想提供一个预览版二进制文件供所有人试用,以便您可以提供反馈。0.8.x 的主要变化是默认情况下切换到检查算术运算。这意味着 x + y 在溢出时将抛出异常。换句话说:您不再需要 SafeMath!由于范围...
阅读更多Solidity 0.7.4 版本发布公告
发布于 2020 年 10 月 19 日 Solidity 团队
Solidity v0.7.4 修复了一个中等严重程度的存储损坏错误。要了解有关此错误的更多信息并检查您的合约是否易受攻击,请阅读这篇文章,其中包含有关此错误的更多详细信息。该错误是由 Certora 开发团队的 John Toman 报告的。此外,v0.7.4 在文件级别添加了常量。重要的错误修复 代码生成器:修复将空字节数组从内存或 calldata 复制到存储时的数据损坏错误。在此处阅读更多内容。值得注意的新功能 文件级别的常量 为了使函数在...
阅读更多Solidity 空字节数组复制错误
发布于 2020 年 10 月 19 日 Solidity 团队
2020 年 10 月 14 日,Certora 开发团队的 John Toman 报告了 Solidity 代码生成器中的一个错误。Certora 的错误披露文章可以在这里找到。该错误已通过于 2020 年 10 月 19 日发布的 Solidity 版本 0.7.4 修复。该错误存在于所有之前的 Solidity 版本中。我们为该错误指定了“中等”严重程度级别。谁应该关注 此错误会导致存储中新创建的字节或字符串数组元素被非零值初始化。对于...
阅读更多Solidity 动态数组清理错误
发布于 2020 年 10 月 7 日 Solidity 团队
2020 年 9 月 17 日,发现了 Solidity 代码生成器中的一个错误。该错误已通过于 2020 年 10 月 7 日发布的版本 0.7.3 修复。该错误存在于所有之前的 Solidity 版本中。我们为该错误指定了“中等”严重程度级别。错误的技术细节 摘要:对于大小最多为 16 字节的动态大小存储数组,需要删除插槽的分配不会正确地将删除的插槽清零。考虑存储中动态大小的数组,其基本类型足够小...
阅读更多Solidity 0.7.3 版本发布公告
发布于 2020 年 10 月 7 日 Solidity 团队
Solidity v0.7.3 修复了动态数组清理中的一个错误。要了解有关此错误的更多信息并检查您的合约是否易受攻击,请阅读这篇文章,其中包含有关此错误的更多详细信息。此外,v0.7.3 添加了在解析阶段后停止编译的选项,使用 solc --stop-after parsing。重要的错误修复 代码生成器:在将动态数组复制到存储(用于打包类型)后正确清理。在此处阅读更多内容。值得注意的新功能 在解析后停止编译 solc --stop-after parsing(或 standard-json 中的 settings.stopAfter = 'parsing')现在可用于指示...
阅读更多Solidity 0.7.2 版本发布公告
发布于 2020 年 9 月 28 日 Solidity 团队
Solidity v0.7.2 修复了自由函数中的一个错误(该错误是在 v0.7.1 中引入的),并添加了编译器生成的实用程序文件导出。此外,它还附带了 SMTChecker 的语言支持范围大大扩展。重要的错误修复 自由函数重载检查 自由函数是在上一个版本(Solidity v0.7.1)中引入的。事实证明,即使包含相同的参数类型,也可以多次定义一个具有相同名称的函数。允许两个具有相同名称但参数类型不同的函数称为“重载”,并且...
阅读更多阴险的 Solidity 竞赛又回来了!
发布于 2020 年 9 月 21 日 Franziska Heintel
我们很高兴地分享,阴险的 Solidity 竞赛终于回来了!受阴险的 C 竞赛和 2017 年由 Nick Johnson 组织的第一届阴险的 Solidity 竞赛的启发,我们决定是时候进行一次急需的复兴。阴险的 Solidity 竞赛 此次竞赛的目标是编写看似无害的 Solidity 代码,这些代码看起来清晰直观,但实际上包含恶意行为或后门。通过举办这样的竞赛,我们的目标是:提高对智能合约安全的意识。发现语言设计缺陷。对...进行实战测试
阅读更多认识 Solidity 团队!🧑💻👩💻
发布于 2020 年 9 月 18 日 Solidity 团队
如您所知,Solidity 是一个开源社区项目,主要由核心团队开发和维护。今天,我们想介绍一些团队成员,并分享他们专业背景的见解,他们主要负责 Solidity 的哪些组件,他们希望将来在 Solidity 和生态系统中看到什么,以及更多!由于我们几乎所有的工作都在 Github 上进行,因此您可以在每个团队成员姓名旁边找到他们的 Github 句柄。在...
阅读更多