PhaseScriptExecution error caused by create-manifest-ios.sh script

Please provide the following:

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

I am getting a Command PhaseScriptExecution Failed error when I try and build my project in Xcode (error trace below). I’ve figured out that it is something to do with the create-manifest-ios.sh script that is entered into the Bundle React Native code and images section of Xcode settings. (if i remove that line from the settings I no longer get the error on build).

I’ve tried:

  • Updating expo-updates to latest (4.3)
  • Cleaning Xcode project and rebooting
  • Updating the expo CLI to latest

Any other ideas would be much appreciated!

Here are those settings:
Shell: /bin/sh
export NODE_BINARY=node
…/node_modules/react-native/scripts/react-native-xcode.sh
…/node_modules/expo-constants/scripts/get-app-config-ios.sh
…/node_modules/expo-updates/scripts/create-manifest-ios.sh

And the error:


Skipping bundling in Debug for the Simulator (since the packager bundles for you). Use the FORCE_BUNDLING flag to change this behavior.
+ exit 0
                 Welcome to React Native!
                Learn once, write anywhere


events.js:292
      throw er; // Unhandled 'error' event
      ^

Error: EMFILE: too many open files, watch
    at FSEvent.FSWatcher._handle.onchange (internal/fs/watchers.js:178:28)
Emitted 'error' event on NodeWatcher instance at:
    at NodeWatcher.checkedEmitError (/Users/alexandergould/github/deep-codementor/node_modules/sane/src/node_watcher.js:143:12)
    at FSWatcher.emit (events.js:315:20)
    at FSEvent.FSWatcher._handle.onchange (internal/fs/watchers.js:184:12) {
  errno: -24,
  syscall: 'watch',
  code: 'EMFILE',
  filename: null
}
Command PhaseScriptExecution failed with a nonzero exit code

Fixed this by upgrading to the latest version of Node, then reinstalling expo-updates (yarn remove expo-updates, yarn add expo-updates)