Skip to content

Restore async public API for 3.9#486

Closed
kieran-osgood-shopify wants to merge 1 commit into
mainfrom
kieran-osgood/cx-rn-v39-compat/restore-async-api
Closed

Restore async public API for 3.9#486
kieran-osgood-shopify wants to merge 1 commit into
mainfrom
kieran-osgood/cx-rn-v39-compat/restore-async-api

Conversation

@kieran-osgood-shopify
Copy link
Copy Markdown
Contributor

@kieran-osgood-shopify kieran-osgood-shopify commented May 12, 2026

What?

Restores the V3 Promise-returning JavaScript API while keeping the native New Architecture/TurboModule methods synchronous under the hood.

This also changes the release line from 4.0.0 to 3.9.0 and updates the compatibility docs/Podfile lockfile to match.

Why?

The native API moved from Promise callbacks to synchronous TurboModule methods, but publishing that as-is would break existing V3 consumers that await getConfig, accelerated checkout configuration, and availability checks.

Wrapping the synchronous native calls at the JS facade preserves the existing public async semantics for the 3.9 line without reverting the native New Architecture work.

Validation

  • pnpm module typecheck
  • pnpm module lint
  • pnpm test --watchman=false modules/@shopify/checkout-sheet-kit/tests
  • pnpm module build
  • pnpm sample typecheck
  • cd sample/ios && ../vendor/bundle/ruby/3.4.0/bin/pod install --no-repo-update

Copy link
Copy Markdown
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions
Copy link
Copy Markdown

Coverage Report

Lines Statements Branches Functions
Coverage: 99%
99.53% (215/216) 95.96% (119/124) 100% (65/65)

@kieran-osgood-shopify kieran-osgood-shopify marked this pull request as ready for review May 12, 2026 12:50
@kieran-osgood-shopify kieran-osgood-shopify requested a review from a team as a code owner May 12, 2026 12:50
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.

1 participant