Skip to content

Releases: MystenLabs/sui

testnet-v1.69.1

31 Mar 20:23
6c3a747

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 119

#25911: New VM pushed to 119 instead of 118 due to cherry-pick

#25792: metadata hardening in Sui System

#25838: Enables the new Move VM in protocol version 118.

gRPC

#25908: Fix X_SUI_CHAIN_ID header to return full 32-byte, base58 encoded chain id

#25828: Wire up balance changes and object set for archival

CLI

#25862: sui client object now displays decoded Move struct fields instead of raw BCS-encoded byte arrays.

#25444: sui move build --dump can now be run without an active network connection if tree shaking is disabled.

fixes for ephemeral publication with local dependencies on windows.

improved error message when building against an undefined environment.

Indexing Framework

#25838: Fix a clippy lint in mocks/store.rs

Co-authored-by: @cgswords

#25834: Renamed IngestionClientTrait::fetch to IngestionClientTrait::checkpoint.

#25895: Adds new IngestionClientTrait::chain_id to retrieve the chain_id from that ingestion source.

#25905: Changed Processor's receiver to accept new CheckpointEnvelope type containing the chain_id.

#25875: Add Connection::init_chain_id method to store and retrieve chain_id.


Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.69.1

devnet-v1.69.0

30 Mar 16:22
d88847b

Choose a tag to compare

devnet-v1.69.0 Pre-release
Pre-release

Protocol

Sui Protocol Version in this release: 119

#25911: New VM pushed to 119 instead of 118 due to cherry-pick

#25792: metadata hardening in Sui System

#25838: Enables the new Move VM in protocol version 118.

gRPC

#25908: Fix X_SUI_CHAIN_ID header to return full 32-byte, base58 encoded chain id

#25828: Wire up balance changes and object set for archival

CLI

#25862: sui client object now displays decoded Move struct fields instead of raw BCS-encoded byte arrays.

#25444: sui move build --dump can now be run without an active network connection if tree shaking is disabled.

fixes for ephemeral publication with local dependencies on windows.

improved error message when building against an undefined environment.

Indexing Framework

#25838: Fix a clippy lint in mocks/store.rs

Co-authored-by: @cgswords

#25834: Renamed IngestionClientTrait::fetch to IngestionClientTrait::checkpoint.

#25895: Adds new IngestionClientTrait::chain_id to retrieve the chain_id from that ingestion source.

#25905: Changed Processor's receiver to accept new CheckpointEnvelope type containing the chain_id.

#25875: Add Connection::init_chain_id method to store and retrieve chain_id.


Full Log: https://github.com/MystenLabs/sui/commits/devnet-v1.69.0

testnet-v1.68.1

24 Mar 20:13
3c0f387

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 118

#25907: Add missing function for display migration cap

#25674: Enables address aliases feature on mainnet.

#23710: Enables Display V2 (0xd system object is created)

#25827: metadata hardening in Sui System

Nodes (Validators and Full nodes)

#25624: Fixes a potential fullnode panic when simulating a malformed transaction with invalid funds withdrawals.

JSON-RPC

#25360: Adds support for Display Registry to JSONRPC: When showDisplay is set, the RPC will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

GraphQL

#25479: Introduce MoveValue.asVector for paginating through vectors of Move Values.

#25657: Introduce a new union SignatureScheme for UserSignature

#25715: ZkLoginVerifyResult will not contain error anymore. Error will not be part of GraphQL response error

#25242: Adds support for Display Registry to GraphQL: MoveValue.display will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

Indexing Framework

#25641: Processor concurrency (fanout) and ingestion concurrency (ingest_concurrency) now use adaptive concurrency control by default. Instead of a fixed number of workers, concurrency starts at 1 and scales automatically based on downstream channel backpressure — up to num_cpus for processors and up to 500 for ingestion.

Breaking changes:

  • Processor::FANOUT trait constant has been removed. Processor concurrency is now configured via the fanout field on ConcurrentConfig / SequentialConfig, which accepts a ConcurrencyConfig enum instead of usize.
  • ingest_concurrency in IngestionConfig changed from usize to ConcurrencyConfig.
  • A new processor_channel_size field controls the channel between the processor and downstream stage (defaults to num_cpus / 2). This channel previously sized itself from FANOUT + PIPELINE_BUFFER.

Migration: To preserve previous fixed-concurrency behavior, set fanout: Some(ConcurrencyConfig::Fixed { value: N }) or ingest_concurrency: ConcurrencyConfig::Fixed { value: N }. Otherwise, no changes are needed — the adaptive defaults should work well for most workloads.


Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.68.1

mainnet-v1.68.1

25 Mar 17:04
3c0f387

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 118

#25907: Add missing function for display migration cap

#25674: Enables address aliases feature on mainnet.

#23710: Enables Display V2 (0xd system object is created)

#25827: metadata hardening in Sui System

Nodes (Validators and Full nodes)

#25624: Fixes a potential fullnode panic when simulating a malformed transaction with invalid funds withdrawals.

JSON-RPC

#25360: Adds support for Display Registry to JSONRPC: When showDisplay is set, the RPC will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

GraphQL

#25479: Introduce MoveValue.asVector for paginating through vectors of Move Values.

#25657: Introduce a new union SignatureScheme for UserSignature

#25715: ZkLoginVerifyResult will not contain error anymore. Error will not be part of GraphQL response error

#25242: Adds support for Display Registry to GraphQL: MoveValue.display will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

Indexing Framework

#25641: Processor concurrency (fanout) and ingestion concurrency (ingest_concurrency) now use adaptive concurrency control by default. Instead of a fixed number of workers, concurrency starts at 1 and scales automatically based on downstream channel backpressure — up to num_cpus for processors and up to 500 for ingestion.

Breaking changes:

  • Processor::FANOUT trait constant has been removed. Processor concurrency is now configured via the fanout field on ConcurrentConfig / SequentialConfig, which accepts a ConcurrencyConfig enum instead of usize.
  • ingest_concurrency in IngestionConfig changed from usize to ConcurrencyConfig.
  • A new processor_channel_size field controls the channel between the processor and downstream stage (defaults to num_cpus / 2). This channel previously sized itself from FANOUT + PIPELINE_BUFFER.

Migration: To preserve previous fixed-concurrency behavior, set fanout: Some(ConcurrencyConfig::Fixed { value: N }) or ingest_concurrency: ConcurrencyConfig::Fixed { value: N }. Otherwise, no changes are needed — the adaptive defaults should work well for most workloads.


Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.68.1

testnet-v1.68.0

17 Mar 19:35
16bf4d1

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 117

#25827: metadata hardening in Sui System

#25674: Enables address aliases feature on mainnet.

#23710: Enables Display V2 (0xd system object is created)

Nodes (Validators and Full nodes)

#25624: Fixes a potential fullnode panic when simulating a malformed transaction with invalid funds withdrawals.

JSON-RPC

#25360: Adds support for Display Registry to JSONRPC: When showDisplay is set, the RPC will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

GraphQL

#25479: Introduce MoveValue.asVector for paginating through vectors of Move Values.

#25657: Introduce a new union SignatureScheme for UserSignature

#25715: ZkLoginVerifyResult will not contain error anymore. Error will not be part of GraphQL response error

#25242: Adds support for Display Registry to GraphQL: MoveValue.display will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

Indexing Framework

#25641: Processor concurrency (fanout) and ingestion concurrency (ingest_concurrency) now use adaptive concurrency control by default. Instead of a fixed number of workers, concurrency starts at 1 and scales automatically based on downstream channel backpressure — up to num_cpus for processors and up to 500 for ingestion.

Breaking changes:

  • Processor::FANOUT trait constant has been removed. Processor concurrency is now configured via the fanout field on ConcurrentConfig / SequentialConfig, which accepts a ConcurrencyConfig enum instead of usize.
  • ingest_concurrency in IngestionConfig changed from usize to ConcurrencyConfig.
  • A new processor_channel_size field controls the channel between the processor and downstream stage (defaults to num_cpus / 2). This channel previously sized itself from FANOUT + PIPELINE_BUFFER.

Migration: To preserve previous fixed-concurrency behavior, set fanout: Some(ConcurrencyConfig::Fixed { value: N }) or ingest_concurrency: ConcurrencyConfig::Fixed { value: N }. Otherwise, no changes are needed — the adaptive defaults should work well for most workloads.


Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.68.0

devnet-v1.68.0

16 Mar 15:51
16bf4d1

Choose a tag to compare

devnet-v1.68.0 Pre-release
Pre-release

Protocol

Sui Protocol Version in this release: 117

#25827: metadata hardening in Sui System

#25674: Enables address aliases feature on mainnet.

#23710: Enables Display V2 (0xd system object is created)

Nodes (Validators and Full nodes)

#25624: Fixes a potential fullnode panic when simulating a malformed transaction with invalid funds withdrawals.

JSON-RPC

#25360: Adds support for Display Registry to JSONRPC: When showDisplay is set, the RPC will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

GraphQL

#25479: Introduce MoveValue.asVector for paginating through vectors of Move Values.

#25657: Introduce a new union SignatureScheme for UserSignature

#25715: ZkLoginVerifyResult will not contain error anymore. Error will not be part of GraphQL response error

#25242: Adds support for Display Registry to GraphQL: MoveValue.display will look for a Display<T> stored in the Display Registry and will use that as the source of truth for its type's format. This takes precedence over any Display v1 formats that exist for this type.

Indexing Framework

#25641: Processor concurrency (fanout) and ingestion concurrency (ingest_concurrency) now use adaptive concurrency control by default. Instead of a fixed number of workers, concurrency starts at 1 and scales automatically based on downstream channel backpressure — up to num_cpus for processors and up to 500 for ingestion.

Breaking changes:

  • Processor::FANOUT trait constant has been removed. Processor concurrency is now configured via the fanout field on ConcurrentConfig / SequentialConfig, which accepts a ConcurrencyConfig enum instead of usize.
  • ingest_concurrency in IngestionConfig changed from usize to ConcurrencyConfig.
  • A new processor_channel_size field controls the channel between the processor and downstream stage (defaults to num_cpus / 2). This channel previously sized itself from FANOUT + PIPELINE_BUFFER.

Migration: To preserve previous fixed-concurrency behavior, set fanout: Some(ConcurrencyConfig::Fixed { value: N }) or ingest_concurrency: ConcurrencyConfig::Fixed { value: N }. Otherwise, no changes are needed — the adaptive defaults should work well for most workloads.


Full Log: https://github.com/MystenLabs/sui/commits/devnet-v1.68.0

mainnet-v1.67.3

11 Mar 19:48
03cf0fb

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 115

#25795: Adds a new protocol version 115 to normalize representation of some structures within the VM.

#25556: Enables the address aliases feature on mainnet.

#25585: Add a new protocol version to support some refactoring in execution.

#25364: test only changes, no user impact

GraphQL

#25261: Error field is no longer available in simulateResult and ExecutionResult. They will be propagated in GraphQL errors

CLI

#25074: sui move build --dump (the short version of --dump-bytecode-as-base64) now correctly outputs bytecode with the 0 address.

#25587: Fixed a bug to re-enable pretty printing of sui client ptb output.

Indexing Framework

#25434: Fixes an issue where the ingestion client allowed configuring multiple sources but all but one source was ignored, based on an implicit precedence order. Now exactly one source must be supplied.

#25593: Reducing ingestion concurrency and channel size. Testing showed this eliminated OOM issues when processing large checkpoints without bottlenecking a 16 cpu machine.


Full Log: https://github.com/MystenLabs/sui/commits/mainnet-v1.67.3

testnet-v1.67.2

10 Mar 19:35
b020a98

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 114

#25364: test only changes, no user impact

#25556: Enables the address aliases feature on mainnet.

#25585: Add a new protocol version to support some refactoring in execution.

GraphQL

#25261: Error field is no longer available in simulateResult and ExecutionResult. They will be propagated in GraphQL errors

CLI

#25074: sui move build --dump (the short version of --dump-bytecode-as-base64) now correctly outputs bytecode with the 0 address.

#25587: Fixed a bug to re-enable pretty printing of sui client ptb output.

Indexing Framework

#25434: Fixes an issue where the ingestion client allowed configuring multiple sources but all but one source was ignored, based on an implicit precedence order. Now exactly one source must be supplied.

#25593: Reducing ingestion concurrency and channel size. Testing showed this eliminated OOM issues when processing large checkpoints without bottlenecking a 16 cpu machine.


Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.67.2

testnet-v1.67.1

03 Mar 20:51
4e8aa9e

Choose a tag to compare

Protocol

Sui Protocol Version in this release: 114

#25364: test only changes, no user impact

#25556: Enables the address aliases feature on mainnet.

#25585: Add a new protocol version to support some refactoring in execution.

GraphQL

#25261: Error field is no longer available in simulateResult and ExecutionResult. They will be propagated in GraphQL errors

CLI

#25074: sui move build --dump (the short version of --dump-bytecode-as-base64) now correctly outputs bytecode with the 0 address.

#25587: Fixed a bug to re-enable pretty printing of sui client ptb output.

Indexing Framework

#25434: Fixes an issue where the ingestion client allowed configuring multiple sources but all but one source was ignored, based on an implicit precedence order. Now exactly one source must be supplied.

#25593: Reducing ingestion concurrency and channel size. Testing showed this eliminated OOM issues when processing large checkpoints without bottlenecking a 16 cpu machine.


Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.67.1

devnet-v1.67.0

02 Mar 17:45
ecde3d1

Choose a tag to compare

devnet-v1.67.0 Pre-release
Pre-release

Protocol

Sui Protocol Version in this release: 114

#25364: test only changes, no user impact

#25556: Enables the address aliases feature on mainnet.

#25585: Add a new protocol version to support some refactoring in execution.

GraphQL

#25261: Error field is no longer available in simulateResult and ExecutionResult. They will be propagated in GraphQL errors

CLI

#25074: sui move build --dump (the short version of --dump-bytecode-as-base64) now correctly outputs bytecode with the 0 address.

#25587: Fixed a bug to re-enable pretty printing of sui client ptb output.

Indexing Framework

#25434: Fixes an issue where the ingestion client allowed configuring multiple sources but all but one source was ignored, based on an implicit precedence order. Now exactly one source must be supplied.

#25593: Reducing ingestion concurrency and channel size. Testing showed this eliminated OOM issues when processing large checkpoints without bottlenecking a 16 cpu machine.


Full Log: https://github.com/MystenLabs/sui/commits/devnet-v1.67.0