Releases: MystenLabs/sui
testnet-v1.2.0
Highlights
- [API behavioral changes] - rpc methods that result in errors of variant
UserInputError
,SuiRpcInputError
,SuiError::TransactionNotFound
orSuiError::TransactionsNotFound
now return error code32602
instead of32000
. #11833 #11928 Improve - Fixed a bug for
get_coin_metadata
which can return null when the fullnode is pruned #11971 sui::package::from_package<T>(self: &Publisher)
andsui::package::from_module<T>(self: &Publisher)
returntrue
whenT
is a type introduced at any upgraded version of the package associated withself: &Publisher
(rather than just the types initially present when that package was published).- Protocol version upgrade to version
11
, including a framework upgrade:std::type_name::get_with_original_ids
is introduced as a newstdlib
function to return a representation of the type where package IDs have all been normalized to "original" IDs (the ID of the first version of a package) in contrast to the default behavior ofstd::type_name::get
which distinguishes types introduced at different versions of a package by assigning them the ID of the package that introduced them.
#12026
#12047sui::package::from_package<T>(self: &Publisher)
andsui::package::from_module<T>(self: &Publisher)
returntrue
whenT
is a type introduced at any upgraded version of the package associated withself: &Publisher
(rather than just the types originally present when that package was published).
- The
sui
CLI logging to file is now off by default but can be enabled by setting the env variableSUI_CLI_LOG_FILE_ENABLE=1
#12095. - The default stake subsidy parameters have been changed to 10 distribution epoch periods with a decrease rate of 10%. This will affect rewards distribution on devnet. #11826
- updated documentation on advice for fullnode pruning settings #11905
- New Sui client CLI command (
verify-bytecode-meter
) which reports the bytecode verifier metering ticks for a package. This is useful when triaging why a package times-out during verification at signing. #11974. Example usage:sui client verify-bytecode-meter {package_source_path}
- The
--serialize_output
option of thesui
CLI command now becomes--serialize_unsigned_transaction
; also added--serialize_signed_transaction
option to serialize the transaction after applying the user signature.
Known Issues
Addresses or IDs with a zero 0
after the initial 0x
will have that 0
missing and will be 1
char shorter. This can be used to identify such faulty responses, correct ones should be 66
chars in length. Addresses shown as being 65
chars in length are missing a 0
after the 0x
.
Example: Address 0x0eb97bff42fcef320b5f148db69033b9f689555348b2e90f1da72b0644fa37d0
will be returned as 0xeb97bff42fcef320b5f148db69033b9f689555348b2e90f1da72b0644fa37d0
Full Changelog: https://github.com/MystenLabs/sui/commits/testnet-v1.2.0
devnet-v1.2.0
Highlights
- [API behavioral changes] - rpc methods that result in errors of variant
UserInputError
,SuiRpcInputError
,SuiError::TransactionNotFound
orSuiError::TransactionsNotFound
now return error code32602
instead of32000
. #11833 #11928 - Fixed a bug for
get_coin_metadata
which can return null when the fullnode is pruned #11971 sui::package::from_package<T>(self: &Publisher)
andsui::package::from_module<T>(self: &Publisher)
returntrue
whenT
is a type introduced at any upgraded version of the package associated withself: &Publisher
(rather than just the types initially present when that package was published).- Protocol version upgrade to version
11
, including a framework upgrade:std::type_name::get_with_original_ids
is introduced as a newstdlib
function to return a representation of the type where package IDs have all been normalized to "original" IDs (the ID of the first version of a package) in contrast to the default behavior ofstd::type_name::get
which distinguishes types introduced at different versions of a package by assigning them the ID of the package that introduced them.
#12026
#12047sui::package::from_package<T>(self: &Publisher)
andsui::package::from_module<T>(self: &Publisher)
returntrue
whenT
is a type introduced at any upgraded version of the package associated withself: &Publisher
(rather than just the types initially present when that package was published).
- The
sui
CLI logging to file are now off by default but can be enabled by setting the env variableSUI_CLI_LOG_FILE_ENABLE=1
#12095.
Full Changelog: https://github.com/MystenLabs/sui/commits/devnet-v1.2.0
mainnet-v1.1.1
Highlights
- [Minor Breaking Change] RPC
dev_inspect_transaction_block
is now checking that the gas price provided is correctly in the range, between RGP and max gas price.gas_price
is an optional argument to the API.None
still works fine and it is the recommended usage if a specific gas price is not of interest. But if a value is provided it has to be in range, whereas any value used to work. That is in line with other transaction execution APIs (execute the transaction and dry run).
If the result of the dev inspect RPC call isGasPriceUnderRGP
**or **GasPriceTooHigh
is an indication of an invalid gas price and that can be corrected either by passingNone
or a propergas_price
- [RPC] Added
get_latest_address_metrics
andget_checkpoint_address_metrics
toextended_api
, which are only available on the indexer. - [RPC bugfix] - fixed incorrect zero timing for addresses, also reverted changes to system addresses (e.g. 0x2) - #11887
- [RPC bugfix] - remove outliers from APY calculation #11867
Full Changelog: devnet-v1.1.0...sui-v1.1.1
mainnet-v1.1.0
Hightlights
- [API behavioral changes] - The
suix_getDynamicFields
cursor is now fixed. Note that although the cursor looks like an Object ID, it should be treated as an opaque handle. The cursor value has no relationship to the underlying data.
For more details, see #11789 - [New API method] - Added a
sui_getProtocolConfig
method that returns the protocol configs. If a valid protocol version is specified in the request, the protocol config at that version is returned, otherwise, the highest protocol config the node has synced to is returned. Note that a node might support a higher protocol config than what it has synced to. You can also see the highest (maxSupportedProtocolVersion
) and lowest (minSupportedProtocolVersion
) supported versions in all valid responses. #11510
Full Changelog: devnet-v1.1.0...mainnet-v1.1.0
devnet-v1.1.0
Highlights
- [API behavioral changes] - The
suix_getDynamicFields
cursor is now fixed. Note that although the cursor looks like an Object ID, it should be treated as an opaque handle. The cursor value has no relationship to the underlying data.
For more details, see #11789 - [New API method] - Added a
sui_getProtocolConfig
method that returns the protocol configs. If a valid protocol version is specified in the request, the protocol config at that version is returned, otherwise, the highest protocol config the node has synced to is returned. Note that a node might support a higher protocol config than what it has synced to. You can also see the highest (maxSupportedProtocolVersion
) and lowest (minSupportedProtocolVersion
) supported versions in all valid responses. #11510
Full Changelog: testnet-1.0.0...devnet-v1.1.0
sui-v1.0.0
What's Changed
- [API behavioural changes] - The
sui_getTransactionBlock
method now returns errors in theerrors
field instead of failing the request in the case where the objects needed to compute balance changes and object changes are pruned. For more details, see #11476 - [API behavioural changes] - The
sui_executeTransactionBlock
method no longer attempts to compute balance changes or object changes if local execution timeout (isExecutedLocally = false
). This previously returned anObjectNotFound ObjectSequenceNumberTooHigh
error, which masked the timeout. #11466 - [New API method] - Added a
suix_getValidatorsApy
method that returns APY values for all active validators, which are calculated using the validator’s staking pool exchange rate. #11293 - [New API method] - Added a
suix_subscribeTransaction
method that enables subscription to the transaction effects stream usingTransactionFilter
. #11432
Full Changelog
https://github.com/MystenLabs/sui/commits/sui-v1.0.0
testnet-1.0.0
devnet-0.33.0
Highlights
- [Breaking Change] - You can no longer use package upgrade to add new abilities to a type in a package if you used the type in a previous version of the package.
- This release adds support to override transitive dependencies of a package to avoid conflicts that could otherwise arise.
Full log
https://github.com/MystenLabs/sui/commits/devnet-0.33.0
testnet-0.32.1
Highlights
- getDynamicFieldObject has been updated with a performance enhancement for faster retrieval time
- [Major Breaking Change] The protocol version is upgraded with this release. All full nodes must be updated or they will cease to interoperate with the network.
- [Update] Reduce gas charges for bytes read. It was causing significant increase in gas charges which should now be back to normal.
Full log
https://github.com/MystenLabs/sui/commits/testnet-0.32.1
devnet-0.32.0
Highlights
- [New Feature] Adding the DeepBook package to the Sui Framework. This will allow Sui programmers to begin building on top of DeepBook.
- [New Feature] This release adds a new secondary index for
getBalances/Coins
family endpoints to improve query efficiency. To serve the data correctly, the full node must be wiped the DB and re-sync from Genesis to re-populate the index. We are working on snapshot restoration for secondary indices to help with this process. - [New Feature] This release adds two names service-related RPC methods:
resolveNameSpaceAddress
andresolveNameServiceNames
. TheresolveNameSpaceAddress
method takes in a nameString
and returns the mappedSuiAddress
. TheresolveNameServiceNames
method takes aSuiAddress
and returns aPage
of names. It currently returns only a primary name in this release. - [Update] New cost table for computation gas charges will be enabled in protocol version 5. Transactions may see larger computation charges due to this change.
Full log
https://github.com/MystenLabs/sui/commits/devnet-0.32.0