{ 跳至内容 }

Solidity 0.5.4 版本发布公告

由 Solidity 团队发布,发布于 2019 年 2 月 12 日

发布

此版本添加了对 calldata 结构体和使用 ABIEncoderV2 的打包编码的支持。我们还对 C API 做了一些更改,并添加了对使用 Google oss-fuzz 进行持续模糊测试的支持。此外,我们还添加了一个新的命令行选项,用于改进(彩色)诊断格式。

语言特性

  • 允许使用 ABIEncoderV2 的 calldata 结构体,但不能使用动态编码的成员。

编译器特性

  • ABIEncoderV2: 实现打包编码。
  • C API (libsolc / raw soljson.js): 引入 solidity_free 方法,该方法释放所有内部缓冲区以节省内存。
  • 命令行界面:添加了新的选项 new-reporter,用于改进诊断格式,以及 colorno-color 用于强制(或显式禁用)彩色输出。

错误修复

  • 代码生成器:防御性地将创建代码和运行时代码的分配填充到 32 字节的倍数。
  • 命令行界面:仅允许严格的汇编使用 yul 优化器。
  • 解析器:不允许空导入语句。
  • 类型检查器:不允许数据位置不是 storage 的映射。
  • 类型检查器:修复当结构体数组索引不适合 uint256 时出现的内部错误。
  • 类型系统:正确报告数组和结构体的打包编码大小(到目前为止基本未使用)。

构建系统

  • 添加对使用 Google oss-fuzz 进行持续模糊测试的支持
  • SMT:如果使用 Z3,则需要 4.6.0 或更高版本。
  • Soltest:添加在基于文件的单元测试环境中使用的解析器。
  • Ubuntu PPA 软件包:使用 CVC4 作为 SMT 求解器而不是 Z3

非常感谢所有为实现此版本做出贡献的人!

下载 Solidity 的新版本这里.

上一篇

下一篇

参与其中

GitHub

Twitter

Mastodon

Matrix

了解更多

博客文档用例贡献关于论坛

2024Solidity 团队

安全策略

行为准则