Sui mainnet upgraded to version V1.5.0

The Sui mainnet has now been upgraded to version V1.5.0. The key points of the upgrade are as follows:

#12676

The protocol version was updated to v18. The minimum budget for gas fees has been changed to be the same as the minimum charge. In previous versions, the minimum budget provided could be lower than the minimum transaction fee, in which case the transaction would fail due to insufficient gas fees. But when multiple gas coins are provided, the gas coins will still be pooled. In fact, consolidation operations can be performed for less than the minimum charge. With the current changes, only deals with a budget covering the minimum charge will be accepted. It should be noted that there will be no change in gas fees for any previously successful transactions. In other words, the scope of this change is limited to specific transactions that previously failed due to "insufficient gas fees", and these transactions will now be unable to enter the system.

#12515 #12821

The Sui Kiosk 's kiosk::purchase_with_cap method no longer emits an ItemPurchased event, this update has a minor impact. If your application logic does depend on this event, it must be changed to use a custom event.

#12276

An invalid coin_type input in coin_api now produces a -32602 error code instead of the default -32000 error code, and the error string starts with "Invalid struct type". Likewise, if the provided cursor is invalid (using the language "cursor not found") or not a coin (using the language "cursor is not a coin"), the -32602 error code will also be returned. The error message has been slightly modified:

  • ”Invalid Cursor {:?}, Object is not a coin” -> “cursor is not a coin”
  • ”Invalid Cursor {:?}, Object not found” -> “cursor not found”

This is part of an overall plan to make JSON-RPC errors more actionable, by grouping errors into three error codes: -32602 to indicate any client-facing errors, -32000 to indicate non-critical server and general errors, and -32603 for critical errors.

#12650

Developers can now choose to run code lint tools when building/testing/release/upgrading packages by specifying the -lint flag in the CLI.

#12648 #12600

Before this update, the unwrapped_then_deleted field in TransactionEffects only contained unwrapped and then deleted objects that were previously in storage (i.e. objects that were unwrapped during their lifetime). If an object has been wrapped since its creation and has never been unwrapped, it will not appear in unwrapped_then_deleted. With this change, we no longer make this distinction. Whenever an object is unwrapped and then deleted in a transaction, it will show up in the effect regardless of its history. This significantly simplifies the logic for handling them.

To accurately maintain system state, when this upgrade occurs, we must reaccumulate the state root hashes of all objects in storage at epoch boundaries, a process that takes seconds on mainnet. The testnet may take longer (30 seconds to 1 minute) because it contains a higher number of objects. When applying this change, users may observe a brief slowdown in the network during the epoch change.

#12425

The compiler will provide additional warnings for unused private functions and unused (not instantiated) struct types.

Check out the full changelog: Commits MystenLabs/sui GitHub


About Sui Network

Sui is an L1 public chain redesigned and constructed based on first principles, aiming to provide creators and developers with a development platform capable of hosting the next billion users in Web3. Applications on Sui are based on the Move smart contract language and are horizontally scalable, allowing developers to support a wide range of application development quickly and at low cost. For more information: https://linktr.ee/sui_apac

Official WebsiteTwitterDiscordEnglish Telegram GroupChinese Telegram Group

おすすめ

転載: blog.csdn.net/Sui_Network/article/details/131848791