github iotaledger/iota v1.21.0-alpha
[Alphanet] v1.21.0-alpha

pre-release15 hours ago

Protocol

This release introduces protocol version 24

#11073: Switch consensus protocol to Starfish in all networks

#11044: - Bump RocksDB version to 0.24.0

#11039: Add tx_data_bytes and signed_tx_bytes to AuthContext. Add the signing Intent representation to the iota framework.

Nodes (Validators and Full nodes)

#11126: Authority gRPC metrics were renamed for consistency (inflight_grpc => authority_grpc_inflight_requests, grpc_requests => authority_grpc_requests, grpc_request_latency => authority_grpc_request_latency)

Indexer

#10988: Unwrapped objects are now included in transaction object changes. A run-backfill object-changes-unwrapped command is available to populate historical data.

#11040: iota_tryGetObjectBeforeVersion JSON-RPC endpoint returns the bcs encoded object bytes when an object is found

#10875: - Pruning mechanism switched to use the per-table watermarks, allowing for independent pruning of every table with retention policies configured separately for every table (using already existing --pruning-config-path argument)

  • Optimistic indexing now uses object based dependency check, making it resilient to pruning of old (dependent) transactions.
  • The --optimistic-pruner-batch-size CLI argument is deprecated and no longer used. Optimistic transactions are now pruned by the unified pruner.
  • RPC reads now detect querying pruned data ranges when possible and return appropriate error.
  • More aggressive autovacuuming has been configured for pruned tables. Operators using large databases should ensure sufficient shm_size (e.g. 2g) on the Postgres container for effective vacuuming.

#11116: 🪛 Fixes an issue with execution errors not being propagated on the transaction response errors fields.

#11120: ⚠️ Maintenance required: Introducing a new migration in to remove the redundant objects_owner index following v1.20. Operators should update their IOTA Indexer instances and restart the writer service.

#11185: ⚠️iota-data-ingestion-core, the IndexerExecutor::run() is removed as part of CheckpointReaderV1 deprecation effort. Users shall migrate to IndexerExecutor::run_with_config() instead which will use the CheckpointReaderV2 as default. In this regard setup_single_workflow also had breaking changes, the remote_store_url accepts a RemoteUrl instead of a String.⚠️

JSON-RPC

#10988: Transaction responses now include unwrapped objects in the objectChanges field.

#10473: Expose effectiveCommissionRate as part of the IotaValidatorSummary in iotax_getLatestSystemStateV2 following IIP8

GraphQL

#10412: Introducing a new field effectiveCommissionRate in query paths for validators, following IIP8. Before IIP8 (i.e. protocol version 20) effectiveCommissionRate = commissionRate

#11120: ⚠️ Maintenance required: Introducing a new migration in IOTA Indexer requires updating GraphQL and restarting service.

CLI

#10866: Removed deprecated iota start, iota genesis, iota genesis-ceremony, and iota fire-drill stub commands

#10989: - Enables TLS on connections to validators over the gRPC
interface.

gRPC

#10989: - Enables TLS on connections to validators over the gRPC
interface.

REST API

#10566: ⚠️⚠️⚠️ The REST API has been fully removed in this release. ⚠️⚠️⚠️


Full Log: v1.20.0-alpha...v1.21.0-alpha

Don't miss a new iota release

NewReleases is sending notifications on new releases.