Sui主网升级至V1.34.2
Sui主网现已升级至V1.34.2版本,同时协议升级至60版本。
其他升级要点如下所示:
协议
在验证Groth16 zk-proof时对无效公共输入进行快速判断。添加了一个新的Move函数flatten,可将向量中的向量展平成单个向量,这在新协议版本59中引入。
增加了虚拟机中最大类型布局的大小。大多数用户不会注意到此变化。
从协议版本60开始,包含不可解析类型的交易将不再被验证节点签名。
节点(验证节点和全节点)
sui_getTransactionBlock和sui_multiGetTransactionBlock的JSON-RPC端点现在会遵循showRawEffects选项,并返回交易效果的BCS表示。
索引器
在下一次部署之前添加凭证以启用上传。
索引受交易影响的地址(无论它们是交易的发送者还是接收者)。
索引受交易影响的对象(无论它们是输入对象还是被交易更改的对象)。
GraphQL
GraphQL现在只支持一个版本,不再支持beta、stable、legacy。此更改移除了之前的路由,只允许使用 / 和 /graphql,它们将始终指向最新版本。
引入了staging.graphql,此数据结构的蓝图包含正在开发和测试但尚未投入生产的更改。
- TransactionBlockFilter.signAddress被弃用,替换为 TransactionBlockFilter.sentAddress,两者功能相同;
- AddressTransactionBlockRelationship.SIGN被弃用,替换为 AddressTransactionBlockRelationship.SENT。
MoveType在表示不可解析类型的情况下,可能无法提供布局或功能。
CLI
修复了CLI写入配置文件时使用相对路径保存密钥库的错误,该相对路径仅在从创建该配置的相同目录中调用CLI时有效。
Move lint现在会警告没有break或return的循环。
Move现在会警告不必要的条件表达式和if-else表达式。
改进了sui move build的错误和状态消息。
为准备和执行交易增加了调试打印。同样,为执行干运行添加了调试打印。使用 RUST_LOG=debug sui可以在终端上看到额外的调试信息。
CLI在交易执行时切换为使用WaitForEffectsCert,并通过轮询模拟 WaitForLocalExecution,因为JSON RPC现在忽略了WaitForLocalExecution请求。
由于动态链接到libpq已被移除,indexer功能从sui crate中移除,因此 sui-pg二进制文件将不再包含在发布中。如果之前使用了sui-pg,现在可以直接使用sui-pg二进制文件。
完整日志:https://github.com/MystenLabs/sui/commits/mainnet-v1.34.2