{Solidity:log}
Solidity 0.8.6 版本发布公告
发布者:Solidity 团队 于 2021年6月22日
Solidity v0.8.6 修复了一些不关键但令人烦恼的 bug,特别是关于实际上可达的不可达代码的警告。错误修复不可达警告在 Solidity 0.8.5 中,我们发布了一项新功能,用于检测代码是否由于调用的函数在代码执行之前总是回退而变得不可达。此检测包含一个与嵌套调用内部库函数相关的 bug,其中函数的“回退行为”在确定其调用的函数不总是回退后未正确更新。由于该 bug 比较...
阅读更多Solidity 0.8.5 版本发布公告
发布者:Solidity 团队 于 2021年6月10日
Solidity v0.8.5 允许从 bytes 转换为 bytesNN 值,添加了 verbatim 内置函数以在 Yul 中注入任意字节码,并修复了几个较小的 bug。值得注意的新功能字节转换在此处查找完整的功能文档。此版本引入了将 bytes 和 bytes 切片转换为固定字节类型 bytes1 / ... / bytes32 的功能。虽然固定长度字节类型之间的转换一直都是可能的,但现在也可以将动态大小的字节类型转换为固定长度的字节类型。如果字节数组更长...
阅读更多Solidity 相关域名发生了什么?
发布者:Franziska Heintel 于 2021年5月3日
一段时间前,我们决定获取一个 Solidity 团队可以轻松访问的域名,以便简化之前托管在其他域名上的工作和计划。因此,soliditylang.org 诞生了!🎉 我们在 Twitter 上单独宣布了大多数这些域名更改,但我们想花点时间在博客上正式宣布它,并解释我们现在拥有的各种子域名,它们是做什么用的,以及哪些旧域名将来可能会被弃用。简而言之,...
阅读更多Solidity 0.8.4 版本发布公告
发布者:Solidity 团队 于 2021年4月21日
Solidity v0.8.4 添加了自定义结构化错误、bytes.concat(...),允许更灵活地配置 SMT 检查器,并修复了 Solidity ABI 解码器 v2 中的一个 bug。重要的错误修复:2021 年 4 月 5 日,Certora 开发团队的 John Toman 报告了 Solidity ABI 解码器 v2 中的一个 bug。对于二维数组和内存中专门设计的 data,abi.decode 的结果可能取决于内存中其他位置的 data。调用数据解码不受影响。此 bug 存在于所有先前版本中...
阅读更多Solidity ABI 解码器用于多维内存数组的 bug
发布者:Solidity 团队 于 2021年4月21日
2021 年 4 月 5 日,Certora 开发团队的 John Toman 报告了 Solidity ABI 解码器 v2 中的一个 bug。Certora 的 bug 公开发布文章可以在这里找到:反序列化代码中的内存隔离违规。此 bug 已在 2021 年 4 月 21 日发布的 Solidity 版本 0.8.4 中修复。此 bug 存在于所有先前版本的 ABI 解码器 v2 中。我们为该 bug 分配了“非常低”的严重级别,这主要是由于利用此 bug 非常困难。我们正在...
阅读更多Solidity 中的自定义错误
发布者:Solidity 团队 于 2021年4月21日
从 Solidity v0.8.4 开始,有一种方便且节省 gas 的方法可以通过使用自定义错误向用户解释操作失败的原因。到目前为止,您已经可以使用字符串提供有关失败的更多信息(例如,revert("Insufficient funds.");),但它们相当昂贵,尤其是在部署成本方面,并且难以在其中使用动态信息。自定义错误是使用 error 语句定义的,它可以在合约内部和外部使用(包括接口和库)。示例以下合约...
阅读更多宣布 Solidity 版本收藏品和社区治理💎
发布者:Franziska Heintel 于 2021年4月1日
⚠️ 注意:此帖子是愚人节玩笑。请自行承担风险阅读。在可预见的将来,我们不会分发任何 Solidity NFT。请注意安全。今天,我们很高兴宣布我们过去几周一直在秘密进行的一点惊喜。我们听说您真的很喜欢与加密相关的收藏品,我们听到了。您很快就能拥有 Solidity 历史的一部分:我们将每个 Solidity 版本标记为 NFT!...
阅读更多Solidity 0.8.3 版本发布公告
发布者:Solidity 团队 于 2021年3月23日
Solidity v0.8.3 修复了 Solidity 优化器 Keccak 缓存 bug,该 bug 存在于所有先前版本的 Solidity 中,此外还包括对优化器的两项改进,这些改进在将覆盖完整存储槽的结构写入存储时可以提供巨大的 gas 优势。重要的错误修复Solidity 优化器 Keccak 缓存 bug 2021 年 3 月 20 日,通过差异模糊测试发现了 Solidity 字节码优化器中的一个 bug。此版本修复了该 bug。此 bug 存在于所有先前版本中...
阅读更多Solidity 优化器 Keccak 缓存 bug
发布者:Solidity 团队 于 2021年3月23日
2021 年 3 月 20 日,通过差异模糊测试发现了 Solidity 字节码优化器中的一个 bug。此 bug 已在 2021 年 3 月 23 日发布的版本 0.8.3 中修复。此 bug 存在于所有先前版本的 Solidity 中。我们为该 bug 分配了“中等”的严重级别。技术细节摘要:字节码优化器错误地重新使用了先前评估的 Keccak-256 哈希值。如果您不在内联汇编中计算 Keccak-256 哈希值,则您不太可能受到影响。Solidity 的字节码优化器有一个可以计算 Keccak-256 哈希值的步骤,如果...
阅读更多Solidity 0.8.2 版本发布公告
发布者:Solidity 团队 于 2021年3月2日
Solidity v0.8.2 添加了一个优化器阶段,可以内联少量代码以节省 gas,并提供了更多方法来处理代码文档,方法是导出内联注释并允许自定义 natspec 标记。值得注意的新功能内联器此版本向 Solidity 的低级优化器添加了一个简单的内联器。它可以内联不包含控制流分支或具有副作用的操作码的短函数。如果您想了解有关内联器的更多信息,请阅读这篇文章。自定义 Natspec 和导出的文档现在可以使用文档...
阅读更多