Sui devnet-v1.83.0

Release

Version
devnet-v1.83.0
Repository
MystenLabs/sui

Release notes

Protocol

Sui Protocol Version in this release: 140

#28271: Adds bulk vector operations: replace_range, keep_range, copy_range, remove_range, and truncate

#27829: Adds bulk vector operations: replace_range, keep_range, copy_range, remove_range, and truncate

#28144: Adds the shuffle_consensus_commit_blocks feature flag (devnet only in version 140). When enabled, consensus orders the blocks within each round of a commit by a hash seeded from the leader block digest instead of by authority index.

#28291: References returned from Move functions can now be used in PTBs.

#28265: Disables the ID leak verifier

#28290: Protocol version 140 enables check_object_funds_withdraw_in_execution on mainnet. Object funds withdrawals that exceed the available balance now fail with a Move abort (EObjectFundsInsufficient in sui::funds_accumulator) instead of the post-execution InsufficientFundsForWithdraw error, and the failure is decided during execution rather than by re-execution.

#28410: Protocol version 140 enables disable_effects_tx_dependencies on mainnet. Transaction effects no longer report transaction dependencies; the effects encoding retains an empty dependency vector, and object versions and per-object previous-transaction metadata are unchanged.

Nodes (Validators and Full nodes)

#28301: tidehunter nodes now keep up to 2 GiB of hot objects-index blobs in memory once they age out of the mmap window; set TH_INDEX_BLOB_CACHE_BYTES=0 to disable or another value to resize.

#28413: Fullnodes no longer run ML-DSA-65 signature verification on networks where mldsa65_auth is off; such transactions are rejected at verification instead of after it.

#28313: validators now cap the user transaction bytes they propose to consensus, defaulting to two full blocks per second. Set consensus-transaction-pool.max-user-bytes-per-second to change it or consensus-transaction-pool.rate-limit-user-bytes: false to turn it off.

gRPC

#28314: When SimulateTransaction gas selection can't find enough SUI to cover the gas budget, the INVALID_ARGUMENT error carries a google.rpc.ErrorInfo with reason INSUFFICIENT_GAS_BALANCE (domain sui.io) and metadata owner, requiredBudget, coinBalance and addressBalance, so clients can read the required budget without parsing the message. If the server estimated the budget and the transaction fails in that estimation, the error instead reports the execution failure ("Transaction fails in simulation: …") with an ErrorInfo of reason TRANSACTION_EXECUTION_FAILED (metadata kind, command) and the ExecutionError detail.

#28345: SubscribeTransactions and SubscribeCheckpoints now fill effects object types, clever errors and event json when the read mask requests them, matching GetTransaction. ListTransactions and ListEvents requests below the node's retention now return OUT_OF_RANGE instead of INTERNAL.

#28308: kv-rpc's ListEvents, ListTransactions and ListCheckpoints no longer start and cancel a checkpoint lookup per progress watermark, the source of the too_many_internal_resets failures, and they are faster on large and sparse requests. While a scan finds no items, it sends a progress-only frame after every 256 buckets of scan work, where reopening a filter's scan past a gap counts as 50. Operators: the read-stage defaults change (table above), and the stage settings are renamed: chunk-size is max-seeks-per-read and min-split-size is min-seeks-per-split-read, with no alias, so old keys are ignored. On tx-seq-digest and the new tx-cp-resolve stage, seeks are buckets of 1,000 transactions rather than keys, and the new max-keys-per-read caps keys per read. New settings: ledger-history.watermark-beacon-buckets and max-keys-per-read. New metrics: kv_rpc_bigtable_reads_started_total and kv_rpc_bigtable_reads_finished_total. On full nodes and kv-rpc, ListCheckpoints, ListTransactions and ListEvents return OUT_OF_RANGE for a starting cursor past the server's indexed tip, instead of an empty page whose cursor is behind the one…

Full release on GitHub ↗

Release Bitcoin Core

v31.2: Bitcoin Core 31.2 final

Tree-SHA512: d510d81e38f5d6e9a3589f3a8e925859ed651a0e148c41750c22b94501e7c510aab9ed422b4c479018ab1d1cedfccb6dc7b832ddeac6a2f03ed4976e0f7fac7e

Release Hardhat

Hardhat v3.21.1

This release is a small bug fix release, but also removes the Amsterdam hardfork activation on Hoodi, as it has been delayed. Changes #8753 cd4766d Thanks @popescuoctavian! - Removed...

Release Hardhat

@nomicfoundation/hardhat-utils@5.1.1

Changes #8765 7de90f0 Thanks @schaable! - Fixed hexStringToBytes converting 0x and the empty string to a zero byte instead of empty bytes. #8757 69ba19b Thanks @fengxueweilai! - Fixed...

Release Bitcoin Core

v32.1: Bitcoin Core 32.1 final

Tree-SHA512: 2f756ad29ce1760c7fd23321e89c1ee3d5374faefc8ebc6238ad139a568f0aac4d82fba7589e8b48ad4075b29ddeeb66a51c12199ed46a5786f6d64d58e7bdc7