testnet-v1.68.0

MystenLabs/suitestnet-v1.68.0Mar 17, 2026by ebmifa

AI Summary

Enables address aliases and Display V2 on mainnet. Updates indexing framework to use adaptive concurrency control and removes specific configuration constants.

Key Highlights

  • Address aliases feature enabled on mainnet.
  • Display V2 (`0xd` system object) is created.
  • Indexing framework uses adaptive concurrency control by default.
  • JSON-RPC and GraphQL support for Display Registry.

Breaking Changes

  • Processor::FANOUT trait constant has been removed.
  • ingest_concurrency in IngestionConfig changed from usize to ConcurrencyConfig.
  • A new processor_channel_size field controls the channel between processor and downstream stage.

New Features

  • Adaptive concurrency control for processors and ingestion.
  • Display Registry support in JSON-RPC and GraphQL.
  • MoveValue.asVector for paginating through vectors in GraphQL.
  • New SignatureScheme union for UserSignature.

Full Release Notes

## Protocol
#### Sui Protocol Version in this release: `117`

https://github.com/MystenLabs/sui/pull/25827: metadata hardening in Sui System

https://github.com/MystenLabs/sui/pull/25674: Enables address aliases feature on mainnet.

https://github.com/MystenLabs/sui/pull/23710: Enables Display V2 (`0xd` system object is created)

## Nodes (Validators and Full nodes)

https://github.com/MystenLabs/sui/pull/25624: Fixes a potential fullnode panic when simulating a malformed transaction with invalid funds withdrawals.

## JSON-RPC

https://github.com/MystenLabs/sui/pull/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

https://github.com/MystenLabs/sui/pull/25479: Introduce `MoveValue.asVector` for paginating through vectors of Move Values.

https://github.com/MystenLabs/sui/pull/25657: Introduce a new union `SignatureScheme` for `UserSignature`

https://github.com/MystenLabs/sui/pull/25715: ZkLoginVerifyResult will not contain error anymore. Error will not be part of GraphQL response error

https://github.com/MystenLabs/sui/pull/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

https://github.com/MystenLabs/sui/pull/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