Remove New Arch interop checks - New Arch only#456
Merged
kieran-osgood-shopify merged 4 commits intoMay 6, 2026
Merged
Conversation
Contributor
Author
This was referenced Mar 30, 2026
cc709d6 to
f89b585
Compare
14eb240 to
b78d8d1
Compare
3 tasks
b78d8d1 to
ead781e
Compare
07d29f6 to
ba34eac
Compare
995f1b1 to
068673a
Compare
9c8a074 to
4be033f
Compare
068673a to
32a2485
Compare
This was referenced Apr 17, 2026
markmur
reviewed
Apr 17, 2026
markmur
approved these changes
Apr 17, 2026
josemiguel-alvarez
approved these changes
Apr 17, 2026
tiagocandido
approved these changes
Apr 17, 2026
fdb9158 to
c99a638
Compare
83db6fb to
d45eb12
Compare
d45eb12 to
fa18e5f
Compare
c99a638 to
f60bb00
Compare
0d43f55 to
dc837d5
Compare
62d1bcf to
dee8e5c
Compare
dc837d5 to
bf8dba6
Compare
cd35500 to
5d96a31
Compare
bf8dba6 to
6ddb3e2
Compare
5d96a31 to
a3ed0f2
Compare
6ddb3e2 to
afba17f
Compare
Contributor
Author
Merge activity
|
kieran-osgood-shopify
added a commit
that referenced
this pull request
May 6, 2026
…igration (#449) ### What changes are you making? This PR introduces TurboMobule specs and codegen but maintains the existing legacy compatability layer, which is removed in #456 There is no real behavioural differences in this PR - it just introduces the build layer step of compiling the TS specs into c++ --- ### PR Checklist > [!IMPORTANT] > > - [ ] I've added tests to support my implementation > - [ ] I have read and agree with the [Contribution Guidelines](https://github.com/shopify/checkout-sheet-kit-react-native/blob/main/.github/CONTRIBUTING.md). > - [ ] I have read and agree with the [Code of Conduct](https://github.com/shopify/checkout-sheet-kit-react-native/blob/main/.github/CODE_OF_CONDUCT.md). > - [ ] I've updated the [README](https://github.com/shopify/checkout-sheet-kit-react-native). > > _Releasing a new version of the kit?_ > > - [ ] I have bumped the version number in the [`package.json` file](https://github.com/Shopify/checkout-sheet-kit-react-native/blob/main/modules/%40shopify/checkout-sheet-kit/package.json#L4). --- > [!TIP] > See the [Contributing documentation](https://github.com/shopify/checkout-sheet-kit-react-native/blob/main/.github/CONTRIBUTING.md#releasing-a-new-version) for instructions on how to publish a new version of the library.
Now that we're on TurboModules, the four promise-based methods (getConfig, configureAcceleratedCheckouts, isAcceleratedCheckoutAvailable, isApplePayAvailable) can use synchronous JSI dispatch. Their native implementations are pure in-memory reads or state writes, so the Promise wrapper was boilerplate that blocked readable call sites. BREAKING CHANGE: Consumers must drop `await` from these calls. - Spec: return ConfigurationResultSpec / boolean directly instead of Promise - iOS Swift: remove resolve/reject, return NSDictionary / NSNumber - Android: annotate with isBlockingSynchronousMethod = true, return directly - Consumer API in src/index.ts and src/context.tsx: drop async / await - Tests: replace mockResolvedValue with mockReturnValue, drop awaits - Sample app: drop awaits in Cart and SettingsScreen Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The codegen spec returns colorScheme and logLevel as `string`, but the consumer-facing Configuration type uses typed enums. Replace the previous `as Configuration` cast with a parser that: - Validates colorScheme/logLevel against known enum values, falling back to the safest default when the native side returns an unrecognised value - Re-shapes the flat iOS color fields into the nested `colors.ios` shape so a round trip through setConfig preserves user overrides - Omits undefined fields so consumers don't see spurious `title: undefined` Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Swift tests were still calling the four converted methods with resolve/reject callbacks. Update them to call the sync API directly and compare against the returned NSNumber/NSDictionary. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
afba17f to
2978be0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

What changes are you making?
Following on from the introduction of turbo specs in #449 this PR removes the existing fabric conditionals leaving only the new architecture enabled going forwards
PR Checklist
Important
Releasing a new version of the kit?
package.jsonfile.Tip
See the Contributing documentation for instructions on how to publish a new version of the library.