Protocol
This release introduces protocol version 23
#10611: sponsor was added to TxContext
#10729: reference_gas_price, gas_price, gas_budget were added to TxContext
#10739: make tx_context::gas_budget public
Nodes (Validators and Full nodes)
#10902: FastCommitSyncer is now enabled by default; operators can disable it locally via enable_fast_commit_syncer: false in node config
#10754: The REST API client has been removed and all internal consumers now use gRPC. The REST API server is deprecated and will be removed in v1.21. ⚠️⚠️⚠️ Users should migrate to the gRPC APIs as a replacement for the REST API. ⚠️⚠️⚠️
Indexer
#10081: The --remote-store-url argument now uses the fullnode gRPC checkpoint stream as primary checkpoint ingestion source. The --rpc-client-url argument now uses the fullnode gRPC for transaction execution. ⚠️⚠️⚠️ Operators must ensure their node are running version v1.19.0 or higher and that the gRPC API is explicitly enabled in the node configuration (enable-grpc-api: true), as it is disabled by default. It is also advised to use the new indexer CLI commands; the deprecated CLI will be removed in v1.23. ⚠️⚠️⚠️
#10754: iota-data-ingestion-core users need to update to the latest version before the support for the REST API will be dropped in v1.21. The iota-analytics-indexer now uses --grpc-url arg instead of --rest-url. ⚠️⚠️⚠️ Operators must ensure their nodes are running version v1.20.0 or higher and that the gRPC API is explicitly enabled in the node configuration (enable-grpc-api: true), as it is disabled by default. ⚠️⚠️⚠️
#10963: From version v1.21.0, the CheckpointReaderV1 in iota-data-ingestion-core will be deprecated. ⚠️⚠️⚠️ Operators maintaining custom indexers are advised to migrate to CheckpointReaderV2 via IndexerExecutor::run_with_config. With pruning enabled on fullnodes, custom indexers will need CheckpointReaderV2 to use hybrid historical storage for syncing from genesis, making CheckpointReaderV1 obsolete. ⚠️⚠️⚠️
#10976: ⚠️ Maintenance required: Introducing a new migration in preparation of removing an index with the subsequent release v1.21. Operators should update their IOTA Indexer instances and restart the writer service.
#10789: Add the ability to sync checkpoints form historical & live storages as an alternative checkpoint source to fullnode.
GraphQL
#10081: The --node-rpc-url argument now uses the fullnode's gRPC API for transaction execution. ⚠️⚠️⚠️ Operators must ensure the gRPC API is enabled on the fullnode (see Indexer note above). ⚠️⚠️⚠️
#10976: ⚠️ Maintenance required: Introducing a new migration in IOTA Indexer requires updating GraphQL and restarting service.
CLI
#10663: The iota start and iota genesis commands have moved to iota-localnet. iota genesis-ceremony, iota fire-drill, and iota replay commands have moved to iota-tool.
#10600: Added vec support in --auth-call-args
#10952: Removed iota client name auction subcommands (bid, claim, metadata, start)
REST API
#10754: Deprecated. The REST API server will be removed in v1.21. Please migrate to the gRPC APIs.