Skip to content

Update to stellar sdk 14 prerelease in prep for protocol 23#135

Merged
stwiname merged 2 commits intomainfrom
stellar-14
Aug 11, 2025
Merged

Update to stellar sdk 14 prerelease in prep for protocol 23#135
stwiname merged 2 commits intomainfrom
stellar-14

Conversation

@stwiname
Copy link
Copy Markdown
Contributor

@stwiname stwiname commented Jul 24, 2025

Description

Prep work for supporting stellar protocol 23

Fixes # (issue)

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Checklist

  • I have tested locally
  • I have performed a self review of my changes
  • Updated any relevant documentation
  • Linked to any relevant issues
  • I have added tests relevant to my changes
  • Any dependent changes have been merged and published in downstream modules
  • My code is up to date with the base branch
  • I have updated relevant changelogs. We suggest using chan

@stwiname stwiname marked this pull request as draft July 24, 2025 04:55
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jul 24, 2025

Coverage report

Caution

Test run failed

St.
Category Percentage Covered / Total
🔴 Statements 47.4% 1648/3477
🟡 Branches 75.1% 184/245
🔴 Functions 51.48% 87/169
🔴 Lines 47.4% 1648/3477

Test suite run failed

Failed tests: 4/72. Failed suites: 3/8.
  ● dictionary v1 › successfully validates metatada

    ApolloError: Only absolute URLs are supported

      at new ApolloError (node_modules/@apollo/client/errors/index.js:40:28)
      at node_modules/@apollo/client/core/QueryManager.js:785:71
      at both (node_modules/@apollo/client/utilities/observables/asyncMap.js:22:31)
      at node_modules/@apollo/client/utilities/observables/asyncMap.js:11:72
      at Object.then (node_modules/@apollo/client/utilities/observables/asyncMap.js:11:24)
      at Object.error (node_modules/@apollo/client/utilities/observables/asyncMap.js:24:49)
      at notifySubscription (node_modules/zen-observable/lib/Observable.js:140:18)
      at onNotify (node_modules/zen-observable/lib/Observable.js:179:3)
      at SubscriptionObserver.error (node_modules/zen-observable/lib/Observable.js:240:7)
      at node_modules/@apollo/client/utilities/observables/iteration.js:7:68
          at Array.forEach (<anonymous>)
      at iterateObserversSafely (node_modules/@apollo/client/utilities/observables/iteration.js:7:25)
      at Object.error (node_modules/@apollo/client/utilities/observables/Concast.js:76:21)
      at notifySubscription (node_modules/zen-observable/lib/Observable.js:140:18)
      at onNotify (node_modules/zen-observable/lib/Observable.js:179:3)
      at SubscriptionObserver.error (node_modules/zen-observable/lib/Observable.js:240:7)
      at handleError (node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js:170:14)
      at node_modules/@apollo/client/link/http/createHttpLink.js:145:17

    Cause:
    TypeError: Only absolute URLs are supported

      250 |       chainId,
      251 |     );
    > 252 |     await dictionary.init();
          |                      ^
      253 |     return dictionary;
      254 |   }
      255 |

      at getNodeRequestOptions (node_modules/node-fetch/lib/index.js:1327:9)
      at node_modules/node-fetch/lib/index.js:1440:19
      at fetch (node_modules/node-fetch/lib/index.js:1437:9)
      at fetch (node_modules/cross-fetch/dist/node-ponyfill.js:10:20)
      at node_modules/@apollo/client/link/http/createHttpLink.js:127:13
      at new Subscription (node_modules/zen-observable/lib/Observable.js:197:34)
      at Observable.subscribe (node_modules/zen-observable/lib/Observable.js:279:14)
      at Object.complete (node_modules/@apollo/client/utilities/observables/Concast.js:111:43)
      at Concast.Object.<anonymous>.Concast.start (node_modules/@apollo/client/utilities/observables/Concast.js:152:23)
      at new Concast (node_modules/@apollo/client/utilities/observables/Concast.js:137:19)
      at QueryManager.Object.<anonymous>.QueryManager.getObservableFromLink (node_modules/@apollo/client/core/QueryManager.js:711:35)
      at QueryManager.Object.<anonymous>.QueryManager.getResultsFromLink (node_modules/@apollo/client/core/QueryManager.js:748:30)
      at resultsFromLink (node_modules/@apollo/client/core/QueryManager.js:1049:26)
      at QueryManager.Object.<anonymous>.QueryManager.fetchQueryByPolicy (node_modules/@apollo/client/core/QueryManager.js:1112:52)
      at fromVariables (node_modules/@apollo/client/core/QueryManager.js:819:41)
      at QueryManager.Object.<anonymous>.QueryManager.fetchConcastWithInfo (node_modules/@apollo/client/core/QueryManager.js:861:35)
      at QueryManager.Object.<anonymous>.QueryManager.fetchQuery (node_modules/@apollo/client/core/QueryManager.js:374:21)
      at QueryManager.Object.<anonymous>.QueryManager.query (node_modules/@apollo/client/core/QueryManager.js:468:21)
      at ApolloClient.Object.<anonymous>.ApolloClient.query (node_modules/@apollo/client/core/ApolloClient.js:233:34)
      at StellarDictionaryV1.init (node_modules/@subql/node-core/src/indexer/dictionary/v1/dictionaryV1.ts:57:21)
      at Function.create (packages/node/src/indexer/dictionary/v1/stellarDictionaryV1.ts:252:22)
      at Object.<anonymous> (packages/node/src/indexer/dictionary/v1/stellarDictionaryV1.spec.ts:182:44)


  ● BlockchainService › correctly calculates block timestamp

    NotFoundError: Not Found

      146 |
      147 |   async getBlockTimestamp(height: number): Promise<Date> {
    > 148 |     const block = await this.apiService.api.api.ledgers().ledger(height).call();
          |                   ^
      149 |
      150 |     return new Date(
      151 |       (block as unknown as Horizon.ServerApi.LedgerRecord).closed_at,

      at node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:329:52
      at Generator.<anonymous> (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:13:1494)
      at Generator.next (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:14:354)
      at asyncGeneratorStep (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:15:70)
      at _next (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:16:163)
      at node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:16:299
      at node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:16:90
      at _handleNetworkError (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:343:37)
      at BlockchainService.getBlockTimestamp (packages/node/src/blockchain.service.ts:148:19)
      at Object.<anonymous> (packages/node/src/blockchain.service.spec.ts:24:23)

  ● BlockchainService › correctly gets the header for a height

    NotFoundError: Not Found

       98 |
       99 |   async getHeaderForHeight(height: number): Promise<Header> {
    > 100 |     const res = await this.apiService.api.api.ledgers().ledger(height).call();
          |                 ^
      101 |     return stellarBlockToHeader(res as any);
      102 |   }
      103 |

      at node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:329:52
      at Generator.<anonymous> (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:13:1494)
      at Generator.next (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:14:354)
      at asyncGeneratorStep (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:15:70)
      at _next (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:16:163)
      at node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:16:299
      at node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:16:90
      at _handleNetworkError (node_modules/@stellar/stellar-sdk/lib/horizon/call_builder.js:343:37)
      at BlockchainService.getHeaderForHeight (packages/node/src/blockchain.service.ts:100:17)
      at Object.<anonymous> (packages/node/src/blockchain.service.spec.ts:30:20)


  ● StellarApi › handles a transaction with multiple operations and events

    startLedger must be within the ledger range: 814316 - 935275



Report generated by 🧪jest coverage report action from 7f7bad9

@lehoangnam040
Copy link
Copy Markdown

hi @stwiname,
is there anything block on this PR? I really need it to be upgraded as now my subquery are break because of stelalr sdk 14

@stwiname stwiname marked this pull request as ready for review August 11, 2025 22:32
@stwiname stwiname merged commit cba739a into main Aug 11, 2025
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants