iOS build failures after migrating off of react-native-unimodules in bare RN monorepo project

  1. SDK Version: 44
  2. Platforms(Android/iOS/web/all): iOS

I’m trying to do an upgrade from SDK 42 to 44 currently and having issues with the iOS side when migrating off of react-native-unimodules. This is a bare RN project and it’s in a monorepo.

I’m following the guide (Installing Expo modules - Expo Documentation) having stripped out all the react-native-unimodule changes and the Android side is working fine. When I try and build I get compilation errors (build works fine before I add the new expo setup).

Error:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator15.4.sdk/System/Library/Frameworks/JavaScriptCore.framework/Headers/JSTypedArray.h:154:112: error: unknown type name 'JSTypedArrayBytesDeallocator'
JS_EXPORT JSObjectRef JSObjectMakeArrayBufferWithBytesNoCopy(JSContextRef ctx, void* bytes, size_t byteLength, JSTypedArrayBytesDeallocator bytesDeallocator, void* deallocatorContext, JSValueRef* exception) API_AVAILABLE(macos(10.12), ios(10.0));
                                                                                                               ^
<module-includes>:1:9: note: in file included from <module-includes>:1:
#import "ExpoModulesCore-umbrella.h"
        ^
/Users/liam.jones/Library/Developer/Xcode/DerivedData/app-afiwceoqdanycwdhmaaxjtbetkmj/Build/Products/Debug-iphonesimulator/ExpoModulesCore/ExpoModulesCore-umbrella.h:21:9: note: in file included from /Users/liam.jones/Library/Developer/Xcode/DerivedData/app-afiwceoqdanycwdhmaaxjtbetkmj/Build/Products/Debug-iphonesimulator/ExpoModulesCore/ExpoModulesCore-umbrella.h:21:
#import "ExpoModulesCore/ExpoModulesCore.h"
        ^
/Users/liam.jones/code/monorepo/packages/apps/app/ios/Pods/Headers/Public/ExpoModulesCore/ExpoModulesCore/ExpoModulesCore.h:4:9: note: in file included from /Users/liam.jones/code/monorepo/packages/apps/app/ios/Pods/Headers/Public/ExpoModulesCore/ExpoModulesCore/ExpoModulesCore.h:4:
#import "ExpoModulesCore-umbrella.h"
        ^
/Users/liam.jones/code/monorepo/packages/apps/app/ios/Pods/Headers/Public/ExpoModulesCore/ExpoModulesCore-umbrella.h:68:9: note: in file included from /Users/liam.jones/code/monorepo/packages/apps/app/ios/Pods/Headers/Public/ExpoModulesCore/ExpoModulesCore-umbrella.h:68:
#import "ExpoModulesCore/EXJavaScriptContextProvider.h"
        ^
/Users/liam.jones/code/monorepo/packages/apps/app/ios/Pods/Headers/Public/ExpoModulesCore/ExpoModulesCore/EXJavaScriptContextProvider.h:4:9: error: could not build module 'JavaScriptCore'
#import <JavaScriptCore/JavaScriptCore.h>
        ^
<unknown>:0: error: could not build Objective-C module 'ExpoModulesCore'

There are a lot of similar errors about unknown type name '*' but I think the above shows enough probably.

I assume, maybe incorrectly, that the issue is caused by something going on in use_expo_modules or expo_patch_react_imports within the Podfile which is breaking the import lookups but any hints on what to look at specifically would be appreciated!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.