Releases: MystenLabs/sui
testnet-v1.74.0
Protocol
Sui Protocol Version in this release: 127
#26896: added protocol version 127 enabling always_advance_dkg_to_resolution. Corrects version 126 which was incorrectly modified after being released to testnet.
#26901: Updated gas prices for range proof verification and Ristretto group operations in protocol version 127.
#26998: Enable Ristretto255 group operations and bulletproofs range proof verification on testnet.
#26996: Mainnet switches to timestamp-based epoch close at protocol version 127. No operator action required.
Nodes (Validators and Full nodes)
#26973: A node now reports and disconnects state-sync peers that are consistently unreachable even when it is not actively syncing from them; previously this could fail to happen. No operator action required.
#26989: Fixes a spurious panic that could occur during a normal node shutdown/restart. No action required.
gRPC
#26763: `SimulateTransaction` now accepts `gas_price=0` for gasless-tier-eligible transactions (both via the unresolved proto path and as pre-built BCS transactions) instead of returning an error.
CLI
#26991: adds sui move lint command
#27012: Renamed the --forking-mode flag to --skip-signing to more correctly represent what it does.
Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.74.0
devnet-v1.74.0
Protocol
Sui Protocol Version in this release: 127
#26896: added protocol version 127 enabling always_advance_dkg_to_resolution. Corrects version 126 which was incorrectly modified after being released to testnet.
#26901: Updated gas prices for range proof verification and Ristretto group operations in protocol version 127.
#26998: Enable Ristretto255 group operations and bulletproofs range proof verification on testnet.
#26996: Mainnet switches to timestamp-based epoch close at protocol version 127. No operator action required.
Nodes (Validators and Full nodes)
#26973: A node now reports and disconnects state-sync peers that are consistently unreachable even when it is not actively syncing from them; previously this could fail to happen. No operator action required.
#26989: Fixes a spurious panic that could occur during a normal node shutdown/restart. No action required.
gRPC
#26763: `SimulateTransaction` now accepts `gas_price=0` for gasless-tier-eligible transactions (both via the unresolved proto path and as pre-built BCS transactions) instead of returning an error.
CLI
#26991: adds sui move lint command
#27012: Renamed the --forking-mode flag to --skip-signing to more correctly represent what it does.
Full Log: https://github.com/MystenLabs/sui/commits/devnet-v1.74.0
mainnet-v1.73.2
Protocol
Sui Protocol Version in this release: 126
#26849: version 126 introduced that changes how insufficient funds for withdrawals are handled.
#26740: Testnet: advance epoch based on timestamp instead of validator votes.
#26246: New flag for dealing with party object extensions for incurring post execution writes
GraphQL
#26594: Support checkpoint lookup by digest
#26495: add asTransactionObject which allows user to query the status of address that is involved as an object in a particular transaction
CLI
#26521: Adds sui move format passthrough command for prettier-move auto-formatter.
#26697: sui start --with-faucet now responds to Ctrl+C / SIGINT and shuts down all subservices gracefully.
Indexing Framework
#26229: Validate streaming backoff config and use saturating fallback math so retries cannot stall without progress.
Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.73.2
testnet-v1.73.1
Protocol
Sui Protocol Version in this release: 126
#26849: version 126 introduced that changes how insufficient funds for withdrawals are handled.
#26740: Testnet: advance epoch based on timestamp instead of validator votes.
#26246: New flag for dealing with party object extensions for incurring post execution writes
GraphQL
#26594: Support checkpoint lookup by digest
#26495: add asTransactionObject which allows user to query the status of address that is involved as an object in a particular transaction
CLI
#26521: Adds sui move format passthrough command for prettier-move auto-formatter.
#26697: sui start --with-faucet now responds to Ctrl+C / SIGINT and shuts down all subservices gracefully.
Indexing Framework
#26229: Validate streaming backoff config and use saturating fallback math so retries cannot stall without progress.
Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.73.1
mainnet-v1.72.5
⚠️ ⚠️ ⚠️ Emergency Release ⚠️ ⚠️ ⚠️
#26846: Adds a force_epoch_close operator lever (node config or mainnet binary constant) to deterministically close a wedged epoch at a pinned consensus commit index. No-op and behavior-identical when unset.
Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.72.5
mainnet-v1.72.4
⚠️ ⚠️ ⚠️ Emergency Release ⚠️ ⚠️ ⚠️
#26832: Fixed an address-balance gas-smashing edge case where InsufficientFundsForWithdraw transactions could panic during settlement; they now fail cleanly with zero gas charged.
Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.72.4
mainnet-v1.72.3
Protocol
Sui Protocol Version in this release: 125
#26740: Testnet: advance epoch based on timestamp instead of validator votes.
#26246: New flag for dealing with party object extensions for incurring post execution writes
GraphQL
#26594: Support checkpoint lookup by digest
#26495: add asTransactionObject which allows user to query the status of address that is involved as an object in a particular transaction
CLI
#26521: Adds sui move format passthrough command for prettier-move auto-formatter.
#26697: sui start --with-faucet now responds to Ctrl+C / SIGINT and shuts down all subservices gracefully.
Indexing Framework
#26229: Validate streaming backoff config and use saturating fallback math so retries cannot stall without progress.
Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.72.3
testnet-v1.73.0
Protocol
Sui Protocol Version in this release: 125
#26740: Testnet: advance epoch based on timestamp instead of validator votes.
#26246: New flag for dealing with party object extensions for incurring post execution writes
GraphQL
#26594: Support checkpoint lookup by digest
#26495: add asTransactionObject which allows user to query the status of address that is involved as an object in a particular transaction
CLI
#26521: Adds sui move format passthrough command for prettier-move auto-formatter.
#26697: sui start --with-faucet now responds to Ctrl+C / SIGINT and shuts down all subservices gracefully.
Indexing Framework
#26229: Validate streaming backoff config and use saturating fallback math so retries cannot stall without progress.
Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.73.0
devnet-v1.73.0
Protocol
Sui Protocol Version in this release: 125
#26740: Testnet: advance epoch based on timestamp instead of validator votes.
#26246: New flag for dealing with party object extensions for incurring post execution writes
GraphQL
#26594: Support checkpoint lookup by digest
#26495: add asTransactionObject which allows user to query the status of address that is involved as an object in a particular transaction
CLI
#26521: Adds sui move format passthrough command for prettier-move auto-formatter.
#26697: sui start --with-faucet now responds to Ctrl+C / SIGINT and shuts down all subservices gracefully.
Indexing Framework
#26229: Validate streaming backoff config and use saturating fallback math so retries cannot stall without progress.
Full Log: https://github.com/MystenLabs/sui/commits/devnet-v1.73.0
testnet-v1.72.2
Protocol
Sui Protocol Version in this release: 124
#26505: Bump protocol version
#26203: Adds protocol version 123 (gas_model_version 12). Fixes a stack-height double-decrement in the gas meter for native calls. Internal accounting correctness only; no user-visible change to successful transactions.
#26504: Enables address balances, gasless transactions, coin reservations, and the accumulator/withdraw stack on mainnet at protocol version 125. Gasless transactions are gated behind an empty token allow-list until a follow-up configures the mainnet tokens.
#26417: Adds the mainnet stablecoin gasless allowlist (USDC, USDSUI, SUI_USDE, USDY, FDUSD, AUSD, USDB) with a $0.01 per-stable minimum transfer in protocol v123. Gasless remains disabled on mainnet.
Nodes (Validators and Full nodes)
#26456: callers of DBMap::safe_range_iter(..=K) or DBMap::reversed_safe_iter_with_bounds(_, Some(K)) where K serializes to all 0xFF will now correctly include the entry at K. Previously that entry was silently skipped.
gRPC
#26403: rpc-index DB version has been updated to 4. This means that on startup re-indexing will be required and can take some time depending on the amount of object history present on the node.
GraphQL
#26525: Adding new TransactionEffects.version field for typed TransactionEffects version (v1, v2, etc)
CLI
#26369: Fix sui client send-funds which was always failing with Insufficient balance … Coin balance: 0 regardless of the sender's actual coin balance.
#26405: sui replay now allows to pass a custom node url to a GraphQL server: sui replay --node https://graphql.devnet.sui.io/graphql.
#26346: external-keys subcommand receives --provision-mode [recoverable-assumed|mnemonic-backed|non-recoverable]
#26485: Sui CLI has a new --forking-mode flag to be used with the new sui-fork tool to allow impersonate a sender.
Indexing Framework
#26357: A new pipeline-depth config knob is added to sequential pipelines which allows the pipeline to continue to build batches while a batch is being flushed to the database. No need to set this config explicitly, the default value should suffice.
#26358: Added MAX_PENDING_ROWS to sequential pipelines. It's a soft-cap that forces the batching loop to attempt a flush to the database, not a hard-cap on the amount of rows buffered in memory.
#26268: sui-indexer-alt-framework-store-traits: add store/connection test macros
#26526: Add support to IngestionClient to set arbitrary headers when making requests to remote stores.