From f47b5b8b5def41aeb6d5b672928cc57e20fba49d Mon Sep 17 00:00:00 2001 From: David <4661784+retyui@users.noreply.github.com> Date: Thu, 12 Jan 2023 02:53:28 -0800 Subject: [PATCH] Exclude `react-native-flipper` when `NO_FLIPPER=1` to prevent iOS build fail (#35686) Summary: - Flipper issue: https://github.com/facebook/flipper/issues/3995#issuecomment-1333863641 iOS build fail with an error: ```sh node_modules/react-native-flipper/ios/FlipperReactNativeJavaScriptPlugin.h:9:9: 'FlipperKit/FlipperConnection.h' file not found #import ``` ## Changelog [IOS] [FIXED] - Exclude `react-native-flipper` when `NO_FLIPPER=1` to prevent iOS build fail Pull Request resolved: https://github.com/facebook/react-native/pull/35686 Test Plan: ```sh npx react-native init RN0710RC5 --version 0.71.0-rc.5 cd RN0710RC5 yarn add react-native-flipper NO_FLIPPER=1 pod install --project-directory=ios yarn ios # will fail ``` Reviewed By: rshest Differential Revision: D42368444 Pulled By: cipolleschi fbshipit-source-id: a8614ccadb98970ebae15d8743136fa60ead318c --- template/ios/Podfile | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/template/ios/Podfile b/template/ios/Podfile index 419698b1b3fe9f..47e45ba5c5b705 100644 --- a/template/ios/Podfile +++ b/template/ios/Podfile @@ -4,6 +4,15 @@ require_relative '../node_modules/@react-native-community/cli-platform-ios/nativ platform :ios, min_ios_version_supported prepare_react_native_project! +# If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set. +# because `react-native-flipper` depends on (FlipperKit,...) that will be excluded +# +# To fix this you can also exclude `react-native-flipper` using a `react-native.config.js` +# ```js +# module.exports = { +# dependencies: { +# ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}), +# ``` flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled linkage = ENV['USE_FRAMEWORKS']