Skip to content

Protocol 23 release candidate 1

Pre-release
Pre-release

Choose a tag to compare

@christian-rogobete christian-rogobete released this 07 Jul 17:17
· 198 commits to master since this release

This is the first release candidate for the Stellar Protocol 23 support. See #112

Horizon updates:

  • remove deprecated fields numArchivedContracts and archivedContractsAmount from AssetResponse
  • add new field destinationMuxedId to AssetBalanceChange
  • remove deprecated field errorResultXdrBase64 from SubmitTransactionAsyncResponse

Soroban rpc:

  • add new authMode field to SimulateTransactionRequest
  • extend GetTransactionResponse and GetTransactionsResponse to support the new field events (TransactionEvents) holding the diagnostic, transaction and contract events.
  • extend GetEventsResponse add latestLedgerCloseTime, oldestLedger and oldestLedgerCloseTime fields.
  • remove pagingToken from GetEventsResponse
  • extend EventInfo add new fields opIndex and txIndex
  • add the new ext field to LedgerEntry from GetLedgerEntriesResponse
  • extend testing for parsing the different kinds of events returned in GetTransactionResponse and GetTransactionsResponse

StrKey:

  • add support for StrKey claimable balance ids ("B...")
  • add support for StrKey liquidity pool ids ("L...")
  • accept StrKey claimable balance ids ("B...") in: ClaimClaimableBalanceOperation, ClawbackClaimableBalanceOperation, ClaimableBalancesRequestBuilder, OperationsRequestBuilder, TransactionsRequestBuilder RevokeSponsorshipOperation, XdrSCAddress, XdrLedgerKey, XdrClaimableBalanceID, and TxRep
  • accept StrKey liquidity pool ids ("L...") in LiquidityPoolDepositOperation,LiquidityPoolWithdrawOperation, LiquidityPoolsRequestBuilder, OperationsRequestBuilder, TradesRequestBuilder, AccountsRequestBuilder, EffectsRequestBuilder , LiquidityPoolTradesRequestBuilder , TransactionsRequestBuilder, XdrSCAddress, XdrLedgerKey and TxRep
  • add a new StrKey test case (StrKeyTest).
  • extend amm, claimable_balance and query test cases for the new StrKey claimable balance ids and liquidity pool ids

XDR changes:

  • extend XdrSCAddress and XdrSCAddressType to support muxed accounts, claimable balance ids and liquidity pool ids
  • extend XdrSCSpecType to support muxed account addresses
  • XdrTransactionMeta: add transaction meta v4 support to XdrTransactionMeta, add XdrTransactionMetaV4, XdrOperationMetaV2 and XdrTransactionEvent
  • extend XdrContractCostType to support the new cost types
  • XdrSCSpecEntry: add support for spec events (XdrSCSpecEventV0). Add XdrSCSpecEventV0, XdrSCSpecEventParamV0, XdrSCSpecEventDataFormat and XdrSCSpecEventParamLocationV0
  • XdrSorobanTransactionData: add support for indices representing what Soroban entries in the footprint are archived (add XdrSorobanTransactionDataExt, XdrSorobanResourcesExtV0)
  • add restored case to XdrLedgerEntryChange
  • XdrConfigSettingContractLedgerCostV0: rename txMaxReadLedgerEntries to txMaxDiskReadEntries, ledgerMaxDiskReadBytesto txMaxDiskReadBytes, feeReadLedgerEntry to feeDiskReadLedgerEntry, feeRead1KB to feeDiskRead1KB, bucketListTargetSizeBytes to sorobanStateTargetSizeBytes, writeFee1KBBucketListLow to rentFee1KBSorobanStateSizeLow, writeFee1KBBucketListHigh to rentFee1KBSorobanStateSizeHigh, bucketListWriteFeeGrowthFactor to sorobanStateRentFeeGrowthFactor
  • extend XdrConfigSettingEntry with new cases for contractParallelCompute, contractLedgerCostExt and contractSCPTiming
  • rename bucketListSizeWindow case in XdrConfigSettingEntry to liveSorobanStateSizeWindow
  • add XdrConfigSettingContractParallelComputeV0, XdrConfigSettingContractLedgerCostExtV0 and XdrConfigSettingSCPTiming
  • XdrStateArchivalSettings: rename bucketListSizeWindowSampleSize to liveSorobanStateSizeWindowSampleSize and bucketListWindowSamplePeriod to liveSorobanStateSizeWindowSamplePeriod
  • XdrConfigSettingID: add new cases for contractParallelComputeV0, contractLedgerCostExtV0 and scpTiming, rename bucketListSizeWindow case to liveSorobanStateSizeWindow

SEP-11 (TxRep):

  • update TxRep to support new address types for muxed accounts, claimable balances and liquidity pools.
  • accept new StrKey claimable balance ids ("B...")
  • accept new StrKey liquidity pool ids ("L...")
  • rename readBytes to diskReadBytes for XdrSorobanResources. TxRep can still read the old version (readBytes) but writes diskReadBytes now.
  • rename CONFIG_SETTING_BUCKETLIST_SIZE_WINDOW to CONFIG_SETTING_LIVE_SOROBAN_STATE_SIZE_WINDOW
    for ConfigSettingID. TxRep can still read the old value (CONFIG_SETTING_BUCKETLIST_SIZE_WINDOW) but writes CONFIG_SETTING_LIVE_SOROBAN_STATE_SIZE_WINDOW now.
  • add support for CONFIG_SETTING_CONTRACT_PARALLEL_COMPUTE_V0, CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0, CONFIG_SETTING_SCP_TIMING
  • add support for XdrSorobanResources extension holding indices representing what Soroban entries in the footprint are archived.

Other improvements:

  • extend Address class to support new address types for muxed accounts, claimable balances and liquidity pools.
  • SEP-02: Improve federation test
  • improve soroban test cases