artsy / artsy.github.io

The Artsy Engineering Open-Source Developers Blog
https://artsy.github.io
MIT License
1.08k stars 227 forks source link

Comments: Building a React Native Components Pod #430

Open orta opened 6 years ago

orta commented 6 years ago

When we talk about our React Native setup there are two kinds of "now draw The Tick" for iOS developers:

  • How do I build this React Native as a CocoaPods setup?
  • How do I get all the JavaScript tooling setup up?

We're going to address the first part in this post. By the end of this post we're going to get an Emission-like repo set up for an existing OSS iOS app called GitHawk. The aim being to introduce any no JavaScript tooling into GitHawk itself, and to only expose iOS-native UIViewControllers via a CocoaPod which is consumed by GitHawk.

https://artsy.github.io/blog/2018/04/17/making-a-components-pod/

ferrannp commented 6 years ago

Hey @orta, thanks for the article, I've just completed it all. I have a question though and that might be more related to pods/ios than anything.

Let's say I want to add a native dependency in my RN project like react-native-vector-icons. Then, I would have to add it as dependency in my GitDawg.podspec, I could do:

podspecs = [
  'node_modules/react-native/third-party-podspecs/DoubleConversion.podspec',
  'node_modules/react-native/third-party-podspecs/Folly.podspec',
  'node_modules/react-native/third-party-podspecs/glog.podspec',
  'node_modules/react-native-vector-icons/RNVectorIcons.podspec'
]

And then I need to add it into the Podfile of the Example app like:

pod 'RNVectorIcons', :path => File.join(node_modules_path, 'react-native-vector-icons')

Question is, is it possible to avoid adding anything to the Podfile? Like, couldn't pod 'GitDawg', path: '../' take that pod dependency somehow?

The goal is that native people don't have to modify the Podfile every time we add a native dependency but just run pod install.

Hope my question makes sense :)

orta commented 6 years ago

It does, in our case we have Sentry's react native client as a dependency, so our Emission (GitDawg) Podspec includes it. The example app uses the relative path via node_modules in the Podfile, then the production app uses the official version from our specs repo and so it doesn't need a reference in the Podfile

So you do need it in the Podfile example app for your RN, but you don't need it in consumer apps' Podfile.

vijaytholpadi commented 6 years ago

@orta and team! Thanks for the article. Looks like a neat way to integrate RN into a legacy codebase. I was able to get the setup running on GitHawk+GitDawg. However, I am facing some issues doing it on a legacy codebase I am working on.

Some details on the codebase:

Issue I am facing
- Unable to build system frameworks/modules like `UIKit` in my bridging header for `string.h` as well as in `Folly` (seeing in the screenshot below). Happens to `CoreFoundation`, `Darwin` as well. screen shot 2018-05-06 at 8 47 51 pm Was wondering if you would have some inputs on the same. Thank you so much for your time. *Some error log from Compiler* ``` /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8:9: note: while building module 'Darwin' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8: #import ^ :29:9: note: in file included from :29: #import "string.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/string.h:180:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/string.h:180: #include "strings.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/strings.h:92:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/strings.h:92: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/Folly/folly/string.h:20:10: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/Folly/folly/string.h:20: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/exception:23:12: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/exception:23: # include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/detail/config_all.hpp:43:10: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/detail/config_all.hpp:43: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/compatibility/cpp_c_headers/cstddef:10:1: error: unknown type name 'namespace' namespace std { ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8:9: note: while building module 'Darwin' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8: #import ^ :29:9: note: in file included from :29: #import "string.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/string.h:180:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/string.h:180: #include "strings.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/strings.h:92:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/strings.h:92: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/Folly/folly/string.h:20:10: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/Folly/folly/string.h:20: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/exception:23:12: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/exception:23: # include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/detail/config_all.hpp:43:10: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/detail/config_all.hpp:43: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/compatibility/cpp_c_headers/cstddef:10:14: error: expected ';' after top level declarator namespace std { ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8:9: note: while building module 'Darwin' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8: #import ^ :29:9: note: in file included from :29: #import "string.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/string.h:180:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/string.h:180: #include "strings.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/strings.h:92:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/strings.h:92: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/Folly/folly/string.h:20:10: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/Folly/folly/string.h:20: #include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/exception:23:12: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/exception:23: # include ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/detail/config_all.hpp:158:17: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/detail/config_all.hpp:158: # include_next ^ /Users/vijaytholpadi/Repositories/iosapp/Pods/boost-for-react-native/boost/tr1/tr1/utility:21:20: error: 'utility' file not found # include_next ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ :1:9: note: in file included from :1: #import "Headers/UIKit.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:8:9: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitDefines.h:8:9: error: could not build module 'Darwin' #import ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8:9: note: while building module 'Foundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: note: while building module 'CoreFoundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6: #include ^ :1:9: note: in file included from :1: #import "Headers/CoreFoundation.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:16:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8:9: note: while building module 'Foundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: note: while building module 'CoreFoundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:20:10: note: while building module 'Dispatch' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:20: #include ^ :1:9: note: in file included from :1: #import "dispatch.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/dispatch/dispatch.h:25:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8:9: note: while building module 'Foundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: note: while building module 'CoreFoundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:20:10: note: while building module 'Dispatch' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFStream.h:20: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/dispatch/dispatch.h:59:10: note: while building module 'os_object' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/dispatch/dispatch.h:59: #include ^ :1:9: note: in file included from :1: #import "os/object.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/os/object.h:25:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8:9: note: while building module 'Foundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8: #import ^ :1:9: note: in file included from :1: #import "Headers/Foundation.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: error: could not build module 'CoreFoundation' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8:9: note: while building module 'Foundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:6:9: note: while building module 'ObjectiveC' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:6: #import ^ :1:9: note: in file included from :1: #import "./message.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/objc/./message.h:27:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/objc/./message.h:27: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/usr/include/objc/objc.h:31:10: error: could not build module 'Darwin' #include // for __DARWIN_NULL ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8:9: note: while building module 'Foundation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccelerometer.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLCredential.h:9:9: note: while building module 'Security' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLCredential.h:9: #import ^ :1:9: note: in file included from :1: #import "Headers/Security.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Security.framework/Headers/Security.h:27:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Security.framework/Headers/Security.h:27: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Security.framework/Headers/SecBase.h:27:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:9:9: note: while building module 'CoreGraphics' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h:9: #import ^ :1:9: note: in file included from :1: #import "Headers/CoreGraphics.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:8:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CoreGraphics.h:8: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreGraphics.framework/Headers/CGBase.h:8:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:9:9: note: while building module 'QuartzCore' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:9: #import ^ :1:9: note: in file included from :1: #import "Headers/QuartzCore.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/QuartzCore.h:9:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/QuartzCore.h:9: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h:9:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h:9: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h:11:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:9:9: note: while building module 'QuartzCore' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIView.h:9: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEAGLLayer.h:7:9: note: while building module 'OpenGLES' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEAGLLayer.h:7: #import ^ :1:9: note: in file included from :1: #import "Headers/EAGL.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/OpenGLES.framework/Headers/EAGL.h:8:10: error: could not build module 'Foundation' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11:9: note: while building module 'CoreImage' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11: #import ^ :1:9: note: in file included from :1: #import "Headers/CoreImage.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CoreImage.h:8:9: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CoreImage.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CoreImageDefines.h:10:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11:9: note: while building module 'CoreImage' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIImage.h:10:9: note: while building module 'CoreVideo' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIImage.h:10: #import ^ :1:9: note: in file included from :1: #import "Headers/CoreVideo.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CoreVideo.h:16:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11:9: note: while building module 'CoreImage' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIImage.h:11:9: note: while building module 'ImageIO' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIImage.h:11: #import ^ :1:9: note: in file included from :1: #import "Headers/ImageIO.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/ImageIO.framework/Headers/ImageIO.h:10:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/ImageIO.framework/Headers/ImageIO.h:10: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/ImageIO.framework/Headers/ImageIOBase.h:11:10: error: could not build module 'CoreFoundation' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11:9: note: while building module 'CoreImage' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIRenderDestination.h:16:9: note: while building module 'IOSurface' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIRenderDestination.h:16: #import ^ :1:9: note: in file included from :1: #import "Headers/IOSurfaceBase.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceBase.h:12:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11:9: note: while building module 'CoreImage' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIColor.h:11: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIRenderDestination.h:18:9: note: while building module 'Metal' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIRenderDestination.h:18: #import ^ :1:9: note: in file included from :1: #import "Headers/Metal.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Metal.framework/Headers/Metal.h:8:9: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Metal.framework/Headers/Metal.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLDefines.h:8:9: error: could not build module 'Darwin' #import ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSText.h:10:9: note: while building module 'CoreText' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSText.h:10: #import ^ :1:9: note: in file included from :1: #import "Headers/CoreText.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreText.framework/Headers/CoreText.h:20:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreText.framework/Headers/CoreText.h:20: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTDefines.h:12:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: note: while building module 'UIKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSFileProviderExtension.h:14:9: note: while building module 'FileProvider' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSFileProviderExtension.h:14: #import ^ :1:9: note: in file included from :1: #import "Headers/FileProvider.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/FileProvider.framework/Headers/FileProvider.h:8:9: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/FileProvider.framework/Headers/FileProvider.h:8: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/FileProvider.framework/Headers/NSFileProviderDomain.h:8:9: error: could not build module 'Foundation' #import ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:4:9: error: could not build module 'UIKit' #import ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:8:9: note: while building module 'FBSDKCoreKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:8: #import ^ :1:9: note: in file included from :1: #import "Headers/FBSDKCoreKit.h" ^ /Users/vijaytholpadi/Repositories/iosapp/Externals/Facebook/FBSDKCoreKit.framework/Headers/FBSDKCoreKit.h:19:9: error: could not build module 'UIKit' #import ^ /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:8:9: note: while building module 'FBSDKCoreKit' imported from /Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h:8: #import ^ /Users/vijaytholpadi/Repositories/iosapp/Externals/Facebook/FBSDKCoreKit.framework/Headers/FBSDKAppLinkResolver.h:21:9: note: while building module 'Bolts' imported from /Users/vijaytholpadi/Repositories/iosapp/Externals/Facebook/FBSDKCoreKit.framework/Headers/FBSDKAppLinkResolver.h:21: #import ^ :1:9: note: in file included from :1: #import "Headers/Bolts.h" ^ /Users/vijaytholpadi/Repositories/iosapp/Externals/Parse/Bolts.framework/Headers/Bolts.h:12:9: note: in file included from /Users/vijaytholpadi/Repositories/iosapp/Externals/Parse/Bolts.framework/Headers/Bolts.h:12: #import ^ /Users/vijaytholpadi/Repositories/iosapp/Externals/Parse/Bolts.framework/Headers/BFCancellationToken.h:11:9: error: could not build module 'Foundation' #import ^ /Users/vijaytholpadi/Repositories/iosapp/RedMart/Network/Managers/DataManager+Categories/RMDataManager.h:15:9: note: while building module 'AFNetworking' imported from /Users/vijaytholpadi/Repositories/iosapp/RedMart/Network/Managers/DataManager+Categories/RMDataManager.h:15: @import AFNetworking; ^ :1:9: note: in file included from :1: #import "Headers/AFNetworking-umbrella.h" ^ /Users/vijaytholpadi/Library/Developer/Xcode/DerivedData/RedMart-fgbuthqfuhxoqadzivywqxjkhfhg/Build/Products/Development-Debug-iphonesimulator/AFNetworking/AFNetworking.framework/Headers/AFNetworking-umbrella.h:2:9: error: could not build module 'UIKit' #import ^ /Users/vijaytholpadi/Repositories/iosapp/RedMart/Network/Managers/DataManager+Categories/RMDataManager.h:15:9: note: while building module 'AFNetworking' imported from /Users/vijaytholpadi/Repositories/iosapp/RedMart/Network/Managers/DataManager+Categories/RMDataManager.h:15: @import AFNetworking; ^ /Users/vijaytholpadi/Library/Developer/Xcode/DerivedData/RedMart-fgbuthqfuhxoqadzivywqxjkhfhg/Build/Products/Development-Debug-iphonesimulator/AFNetworking/AFNetworking.framework/Headers/AFNetworkReachabilityManager.h:25:9: note: while building module 'SystemConfiguration' imported from /Users/vijaytholpadi/Library/Developer/Xcode/DerivedData/RedMart-fgbuthqfuhxoqadzivywqxjkhfhg/Build/Products/Development-Debug-iphonesimulator/AFNetworking/AFNetworking.framework/Headers/AFNetworkReachabilityManager.h:25: #import ^ :1:9: note: in file included from :1: #import "Headers/SystemConfiguration.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/SystemConfiguration.framework/Headers/SystemConfiguration.h:27:10: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Checkout/OrderSuccess/RMOrderSuccessfulPopupViewController.h:11:9: note: while building module 'EventKit' imported from /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Checkout/OrderSuccess/RMOrderSuccessfulPopupViewController.h:11: #import ^ :1:9: note: in file included from :1: #import "Headers/EventKit.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/EventKit.framework/Headers/EventKit.h:9:9: error: could not build module 'Darwin' #import ^ /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Checkout/OrderSuccess/RMOrderSuccessfulPopupViewController.h:11:9: note: while building module 'EventKit' imported from /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Checkout/OrderSuccess/RMOrderSuccessfulPopupViewController.h:11: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/EventKit.framework/Headers/EKParticipant.h:17:9: note: while building module 'AddressBook' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/EventKit.framework/Headers/EKParticipant.h:17: #import ^ :1:9: note: in file included from :1: #import "Headers/AddressBook.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/AddressBook.framework/Headers/AddressBook.h:45:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/AddressBook.framework/Headers/AddressBook.h:45: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/AddressBook.framework/Headers/ABAddressBook.h:12:10: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/AddressBook.framework/Headers/ABAddressBook.h:12: #include ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/AddressBook.framework/Headers/AddressBookDefines.h:20:14: error: could not build module 'Darwin' #include ^ /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Checkout/OrderSuccess/RMOrderSuccessfulPopupViewController.h:11:9: note: while building module 'EventKit' imported from /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Checkout/OrderSuccess/RMOrderSuccessfulPopupViewController.h:11: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/EventKit.framework/Headers/EKStructuredLocation.h:10:9: note: while building module 'CoreLocation' imported from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/EventKit.framework/Headers/EKStructuredLocation.h:10: #import ^ :1:9: note: in file included from :1: #import "Headers/CoreLocation.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreLocation.framework/Headers/CoreLocation.h:17:9: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreLocation.framework/Headers/CoreLocation.h:17: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/CoreLocation.framework/Headers/CLAvailability.h:15:9: error: could not build module 'Darwin' #import ^ /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Settings/RMMyAccountViewController.h:11:9: note: while building module 'MessageUI' imported from /Users/vijaytholpadi/Repositories/iosapp/RedMart/ViewControllers/Settings/RMMyAccountViewController.h:11: #import ^ :1:9: note: in file included from :1: #import "Headers/MessageUI.h" ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/MessageUI.framework/Headers/MessageUI.h:10:9: note: in file included from /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/MessageUI.framework/Headers/MessageUI.h:10: #import ^ /Users/vijaytholpadi/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.3.sdk/System/Library/Frameworks/MessageUI.framework/Headers/MFMailComposeViewController.h:8:9: error: could not build module 'UIKit' #import ^ 29 errors generated. :0: error: failed to emit precompiled header '/Users/vijaytholpadi/Library/Developer/Xcode/DerivedData/RedMart-fgbuthqfuhxoqadzivywqxjkhfhg/Build/Intermediates.noindex/PrecompiledHeaders/RM-Bridging-Header-swift_3RNDQI3UERAOW-clang_2TK4SO6T6XVFS.pch' for bridging header '/Users/vijaytholpadi/Repositories/iosapp/Redmart/Application/RM-Bridging-Header.h' ```
orta commented 6 years ago

Hi @vijaytholpadi - I'm afraid I don't have time to do support for something like integrating React Native into an existing app, I'd recommend asking on Stack Overflow or the GitHub issues for React Native

vijaytholpadi commented 6 years ago

@orta No worries! Thanks for the article and taking time to reply 😃

dodongo commented 6 years ago

Awesome tutorial @orta. Everything seems to be working nicely. I was wondering if you had any recommendations on automating the bundled js deployment step:

$ react-native bundle --entry-file src/index.js --bundle-output Pod/Assets/GitDawg.js --assets-dest Pod/Assets

Is this something that can done on the fly as the js is edited?

Finally if you have any pointers on adding Typescript support to all of this that would be amazing. Future post maybe?

orta commented 6 years ago

@dodongo if it’s in the app for GitDawg, you should switch it to use the url from the react native server (instead of requiring a build)

I didn’t get around to it in this post, but it’s probably only a small change

WRT TypeScript, yeah, that’s another post - we did get a post on the official RN blog about it though

dodongo commented 6 years ago

What's interesting is that when I use the bundle url from the react native server it works fine in the Example App in GitDawg but not in GitHawk. I get:

Failed to load bundle(http://localhost:8081/Source/index.bundle?platform=ios) with error:(The operation couldn't be completed.)

When I try to load this in chrome it seems to work though:

screen shot 2018-05-27 at 5 40 39 pm

I double checked the app transport settings on the Info.plist of both the GitHawk and GitDawg targets and they seem correct. Maybe I'm just missing something basic.

I followed @ashfurrow's post and Typescript is working great though!

orta commented 6 years ago

I'm unsure, we haven't explored using the packager inside our main iOS app

dodongo commented 6 years ago

Ah, never mind, my network request stubbing framework was interfering with the bundle loading. Everything works! Thanks for all your help!

victorruschel commented 6 years ago

Hey @orta, great tutorial, do you think this is possible with an Android app too? Any directions maybe :) ? Thanks

devpascoe commented 6 years ago

Amazing article and glad i'm not the only one in the world facing these similar challenges managing a multi-tenant white-label platform. Note: I did need to add "s.dependency 'React/DevSupport', react_native_version" to the .podspec to build on the external app. Looks like some of that is being discussed over at https://github.com/facebook/react-native/pull/19265 Additionally react 0.55.4 didnt seem to pod install on the external app so i went back to 0.54.4 for now.

Keen to hear your take on:

  1. As @victorruschel mentioned an android integration write up would just be gold.
  2. How might i go adding the pod library to a private podspec repo? So far i'm having issues linting the .podspec file since it errors on "unknown error (Unable to find a specification for yoga (= 0.54.4.React)"
  3. From the article the external app is required to add a Gemfile with some references and within the Podfile references to the fix plugin, GitDawg library and local pods for react and yoga. Is there a solution where this external app's Podfile ONLY references a single pod to GitDawg and nothing else? I presume if i can get a private podspec repo going as mentioned in my question 2 i'd be on the right track.

Appreciate any feedback.

orta commented 6 years ago

We don’t have an Android app. So I got no advice there. Must be possible though, it’s only native code plus a is file and some resources.

Because RN doesn’t compile, we add our podspecs pretty much manually to our specs repo. See https://github.com/artsy/emission/issues/971

And yeah, you could, assuming you got the specs repo working right

mrmello commented 6 years ago

Hey @orta, first of all thanks for the awesome article! Great job! If I may ask for tips, my team and I are facing issues with custom fonts after trying to implement our own CocoaPods with a React Native sample application. We followed your tutorial and managed to get the CocoaPod working, however we get the RN red error screen complaining about an unrecognized font family.

screen shot 2018-06-08 at 09 53 32

The custom font family works fine when running only the React Native sample app(with run-ios or on Xcode), but I can't make it work when using the bundled js in my pod. I suspect there is something to do with the assets, since my custom font is in the assets. Maybe the problem is with the path.. I don't know, got a little lost in here. I've tried to manually link the font to the info.plist, but with no success. In my sample RN app, the fonts are loaded in the following way in my package.json:

"rnpm": { "assets": [ "./src/Assets/Fonts" ] }

I've also checked the output assets folder after the bundling and the font files are not there. So maybe I need to run a different RN bundling command. I really don't know.

Any tips that could put me in the right path will be really appreciated. Thanks!

ashfurrow commented 6 years ago

Fonts are always tricky! We do something where we load all our fonts upfront from Objective-C, but our font setup in generally is pretty tricky. Our font pod is here if you're keen. Good luck!

vijaytholpadi commented 6 years ago

@devpascoe

How might i go adding the pod library to a private podspec repo? So far i'm having issues linting the .podspec file since it errors on "unknown error (Unable to find a specification for yoga (= 0.54.4.React)"

Managed to get this working for private pods by using bits from https://github.com/artsy/emission/blob/master/scripts/release.js found in the discussion https://github.com/artsy/emission/issues/1077

@orta @ashfurrow and rest of artsy team - Thanks once again for building it in the open! There is a sense of assurance to see common problems and potential solutions to make them work, especially for people starting out. 🎉

devpascoe commented 6 years ago

@vijaytholpadi assurance on uncommon problems too :) Will try your suggestion.

barrault01 commented 6 years ago

@devpascoe did you fixed the problem?

barrault01 commented 6 years ago

@orta it's was an awsome tutorial 🎉, it's working when referencing the pod locally like this: pod 'GitDawg', path: '../' but I did not was able to publish the pod to my private repository or even to use it with a specific commit.

velevtzvetlin commented 5 years ago

getting this error: Unable to find a specification forDoubleConversion (= 1.1.6)depended upon by... when I try to run bundle exec pod install in a brand new single view application.

pod file:

target 'test' do
    use_frameworks!
    plugin 'cocoapods-fix-react-native'
    pod 'mSDKPod', :path => '../mSDKPod'
    pod 'React', :podspec => 'Local/React.podspec.json'
    pod 'yoga',  :podspec => 'Local/yoga.podspec.json'
  end
nickfujita commented 3 years ago

Hello from 2020! Thanks for this tutorial! I'm currently working on a project that is using react-native 0.63.3, and was was wondering if Artsy has any plans to also update to the same. I've tried following the tutorial, and updating the podspec and example Podfile to match the updated dependencies, but seems that a lot has changed since 0.5x.x.

I've fudged the podspec file to get bundle exec pod install to work, but am worried that removing RTCLinkingIOS could have some unintended consequences.

  # added from react-native
  # https://github.com/facebook/react-native/blob/master/React.podspec
  s.dependency "React-Core", react_native_version
  s.dependency "React-Core/DevSupport", react_native_version
  s.dependency "React-Core/RCTWebSocket", react_native_version
  s.dependency "React-RCTActionSheet", react_native_version
  s.dependency "React-RCTAnimation", react_native_version
  s.dependency "React-RCTBlob", react_native_version
  s.dependency "React-RCTImage", react_native_version
  s.dependency "React-RCTLinking", react_native_version
  s.dependency "React-RCTNetwork", react_native_version
  s.dependency "React-RCTSettings", react_native_version
  s.dependency "React-RCTText", react_native_version
  s.dependency "React-RCTVibration", react_native_version

  # added from tutorial
  # https://artsy.github.io/blog/2018/04/17/making-a-components-pod/
  # removed since it was not in the latest React.podspec, and was throwing errors for incompatible versions
  # s.dependency 'React/CxxBridge', react_native_version
  # s.dependency 'React-RCTLinkingIOS', react_native_version

  # not working, moved to podspec
  # s.dependency 'Yoga', "#{react_native_version}.React"

  podspecs = [
    '../node_modules/react-native/ReactCommon/yoga/Yoga.podspec',
    '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec',
    '../node_modules/react-native/third-party-podspecs/Folly.podspec',
    '../node_modules/react-native/third-party-podspecs/glog.podspec'
  ]
  podspecs.each do |podspec_path|
    spec = Pod::Specification.from_file podspec_path
    s.dependency spec.name, "#{spec.version}"
  end

Further along, while trying to run pod install in the example project, it seems that the cocoapods-fix-react-native pod needs to be updated to accommodate all past versions of react-native between 0.59.x until 0.63.3. I've looked at the last PR that was made to add support for 0.59.x, and it looks like just boilerplate reference updates for each version were added, and I can do the same. However, I'm wondering since the jump to 0.6x.x seems a bit larger, there are probably other patches required. Also it seems that as of react-native 0.60 CocoaPods are now part of React Native's iOS project, so does this mean that cocoapods-fix-react-native is no longer needed?

Thanks for the help. I realize your guys are very busy, and this post is from 2 years ago, so not sure if you are even still using this approach, but I hope to hear back from you. I'm willing to help collaborate on updating the tutorial alongside you, but just need a bit of guidance.

Thanks!

ashfurrow commented 3 years ago

it seems that the cocoapods-fix-react-native pod needs to be updated

Yeah, though React Native has done a lot to advance CocoaPods integration since this post was made and, as you guess, cocoapods-fix-react-native is no longer needed.

I don't have any specific plans to update this post for the latest tech, but the high-level approach is still worthwhile. For what it's worth, Artsy has since moved its React Native components into the native repo, but the components are still in their own CocoaPod. You can check out the repo here: https://github.com/artsy/eigen

Limvunhoy commented 2 years ago

Hello from 2020! Thanks for this tutorial! I'm currently working on a project that is using react-native 0.63.3, and was was wondering if Artsy has any plans to also update to the same. I've tried following the tutorial, and updating the podspec and example Podfile to match the updated dependencies, but seems that a lot has changed since 0.5x.x.

I've fudged the podspec file to get bundle exec pod install to work, but am worried that removing RTCLinkingIOS could have some unintended consequences.

  # added from react-native
  # https://github.com/facebook/react-native/blob/master/React.podspec
  s.dependency "React-Core", react_native_version
  s.dependency "React-Core/DevSupport", react_native_version
  s.dependency "React-Core/RCTWebSocket", react_native_version
  s.dependency "React-RCTActionSheet", react_native_version
  s.dependency "React-RCTAnimation", react_native_version
  s.dependency "React-RCTBlob", react_native_version
  s.dependency "React-RCTImage", react_native_version
  s.dependency "React-RCTLinking", react_native_version
  s.dependency "React-RCTNetwork", react_native_version
  s.dependency "React-RCTSettings", react_native_version
  s.dependency "React-RCTText", react_native_version
  s.dependency "React-RCTVibration", react_native_version

  # added from tutorial
  # https://artsy.github.io/blog/2018/04/17/making-a-components-pod/
  # removed since it was not in the latest React.podspec, and was throwing errors for incompatible versions
  # s.dependency 'React/CxxBridge', react_native_version
  # s.dependency 'React-RCTLinkingIOS', react_native_version

  # not working, moved to podspec
  # s.dependency 'Yoga', "#{react_native_version}.React"

  podspecs = [
    '../node_modules/react-native/ReactCommon/yoga/Yoga.podspec',
    '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec',
    '../node_modules/react-native/third-party-podspecs/Folly.podspec',
    '../node_modules/react-native/third-party-podspecs/glog.podspec'
  ]
  podspecs.each do |podspec_path|
    spec = Pod::Specification.from_file podspec_path
    s.dependency spec.name, "#{spec.version}"
  end

Further along, while trying to run pod install in the example project, it seems that the cocoapods-fix-react-native pod needs to be updated to accommodate all past versions of react-native between 0.59.x until 0.63.3. I've looked at the last PR that was made to add support for 0.59.x, and it looks like just boilerplate reference updates for each version were added, and I can do the same. However, I'm wondering since the jump to 0.6x.x seems a bit larger, there are probably other patches required. Also it seems that as of react-native 0.60 CocoaPods are now part of React Native's iOS project, so does this mean that cocoapods-fix-react-native is no longer needed?

Thanks for the help. I realize your guys are very busy, and this post is from 2 years ago, so not sure if you are even still using this approach, but I hope to hear back from you. I'm willing to help collaborate on updating the tutorial alongside you, but just need a bit of guidance.

Thanks!

Hello @nickfujita, I have followed this tutorial and using the same react-native version as yours (0.63.3). May I know have you got this issue before?

cocoaPods could not find compatible versions for pod "React/Core": In Podfile: GitDawg (from../GitDawg) was resolved to 0.63.3, which depends on React/Core (= 0.63.3)

naquilini commented 1 year ago

Hello from 2020! Thanks for this tutorial! I'm currently working on a project that is using react-native 0.63.3, and was was wondering if Artsy has any plans to also update to the same. I've tried following the tutorial, and updating the podspec and example Podfile to match the updated dependencies, but seems that a lot has changed since 0.5x.x. I've fudged the podspec file to get bundle exec pod install to work, but am worried that removing RTCLinkingIOS could have some unintended consequences.

  # added from react-native
  # https://github.com/facebook/react-native/blob/master/React.podspec
  s.dependency "React-Core", react_native_version
  s.dependency "React-Core/DevSupport", react_native_version
  s.dependency "React-Core/RCTWebSocket", react_native_version
  s.dependency "React-RCTActionSheet", react_native_version
  s.dependency "React-RCTAnimation", react_native_version
  s.dependency "React-RCTBlob", react_native_version
  s.dependency "React-RCTImage", react_native_version
  s.dependency "React-RCTLinking", react_native_version
  s.dependency "React-RCTNetwork", react_native_version
  s.dependency "React-RCTSettings", react_native_version
  s.dependency "React-RCTText", react_native_version
  s.dependency "React-RCTVibration", react_native_version

  # added from tutorial
  # https://artsy.github.io/blog/2018/04/17/making-a-components-pod/
  # removed since it was not in the latest React.podspec, and was throwing errors for incompatible versions
  # s.dependency 'React/CxxBridge', react_native_version
  # s.dependency 'React-RCTLinkingIOS', react_native_version

  # not working, moved to podspec
  # s.dependency 'Yoga', "#{react_native_version}.React"

  podspecs = [
    '../node_modules/react-native/ReactCommon/yoga/Yoga.podspec',
    '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec',
    '../node_modules/react-native/third-party-podspecs/Folly.podspec',
    '../node_modules/react-native/third-party-podspecs/glog.podspec'
  ]
  podspecs.each do |podspec_path|
    spec = Pod::Specification.from_file podspec_path
    s.dependency spec.name, "#{spec.version}"
  end

Further along, while trying to run pod install in the example project, it seems that the cocoapods-fix-react-native pod needs to be updated to accommodate all past versions of react-native between 0.59.x until 0.63.3. I've looked at the last PR that was made to add support for 0.59.x, and it looks like just boilerplate reference updates for each version were added, and I can do the same. However, I'm wondering since the jump to 0.6x.x seems a bit larger, there are probably other patches required. Also it seems that as of react-native 0.60 CocoaPods are now part of React Native's iOS project, so does this mean that cocoapods-fix-react-native is no longer needed? Thanks for the help. I realize your guys are very busy, and this post is from 2 years ago, so not sure if you are even still using this approach, but I hope to hear back from you. I'm willing to help collaborate on updating the tutorial alongside you, but just need a bit of guidance. Thanks!

Hello @nickfujita, I have followed this tutorial and using the same react-native version as yours (0.63.3). May I know have you got this issue before?

cocoaPods could not find compatible versions for pod "React/Core": In Podfile: GitDawg (from../GitDawg) was resolved to 0.63.3, which depends on React/Core (= 0.63.3)

Hello, as @Limvunhoy and @nickfujita I'm trying to follow this tutorial and to apply the same approach with a more recent react-native version (0.67.5) in my case. I'm facing a similar issue as @Limvunhoy once I run bundle exec pod install in the GitHawk project. [!] Unable to find a specification for 'React-Core (= 0.67.5)' depended upon by 'React'

Has anyone figured out how React dependencies can be resolved on newer react-native versions? It seems that the reference to the React.podspec.jsonis not enough.