-
Notifications
You must be signed in to change notification settings - Fork 40
[MOB-11827] add-new-architecture-support #687
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[MOB-11827] add-new-architecture-support #687
Conversation
…le from RNIterableAPI.mm
…or new architecture
…7-add-new-architecture-support
…IterableAPI module
…unnecessary logging
…acy architectures
…ft to streamline code
…ew-arch/MOB-11828-add-backwards-compatibility
…7-add-new-architecture-support
…ew-arch/MOB-11828-add-backwards-compatibility
…eAPI in package.json
…ew-arch/MOB-11828-add-backwards-compatibility
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR migrates the iOS codebase to support React Native's new architecture with TurboModules. The implementation introduces a bridge pattern between Objective-C and Swift to maintain compatibility with the new architecture while preserving existing functionality.
- Adds TurboModule support with a new Objective-C wrapper that bridges to the existing Swift implementation
- Updates package.json to include iOS module configuration for new architecture
- Modifies the Swift ReactIterableAPI class to work with a delegate pattern for event emission
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Adds iOS module configuration mapping for new architecture support |
| ios/RNIterableAPI/ReactIterableAPI.swift | Updates Swift class with delegate pattern and public visibility for TurboModule integration |
| ios/RNIterableAPI/RNIterableAPI.mm | Completely rewritten as Objective-C wrapper implementing TurboModule spec with delegation to Swift |
| ios/RNIterableAPI/RNIterableAPI.h | Updates header to import TurboModule specs and conform to new architecture protocol |
| example/ios/ReactNativeSdkExample.xcodeproj/project.pbxproj | Updates Xcode project references for new CocoaPods configuration |
| example/ios/Podfile | Forces dynamic framework linkage for Swift compatibility |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
…ft and iOS SDK dependency
…ew-arch/MOB-11828-add-backwards-compatibility
evantk91
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just did a cursory look. The example app is running ok.
…s-compatibility [MOB-11828] add-backwards-compatibility
Added copilot suggestion Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…t suggestion Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…t suggestion Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
🔹 JIRA Ticket(s) if any
✏️ Description
Update our codebase to use turbomodules in iOS.
IMPORTANT: This PR is not backwards compatible, and will not build correctly in legacy arch. This will be fixed in a subsequent PR.
Testing
Building the iOS version of this app in NEW arch should work
ENV['RCT_NEW_ARCH_ENABLED'] = '1'is at the top of the file.bundle exec pod deintegraterm -rf ~/Library/Developer/Xcode/DerivedData Pods Podfile.lock build ../Gemfile.lockbundle installbundle exec pod installwatchman watch-del-allyarn start --reset-cacheThe app should build and load correctly