Skip to content

searchPaths.filter is not a function, when unlinking a library #21614

Closed
@dantman

Description

@dantman

Environment

  React Native Environment Info:
    System:
      OS: macOS 10.14
      CPU: x64 Intel(R) Core(TM) i5-7267U CPU @ 3.10GHz
      Memory: 35.42 MB / 16.00 GB
      Shell: 3.2.57 - /bin/bash
    Binaries:
      Node: 10.11.0 - /usr/local/bin/node
      Yarn: 1.10.1 - /usr/local/bin/yarn
      npm: 6.4.1 - /usr/local/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.0, macOS 10.14, tvOS 12.0, watchOS 5.0
      Android SDK:
        Build Tools: 23.0.0, 23.0.1, 23.0.2, 23.0.3, 25.0.0, 25.0.1, 25.0.2, 25.0.3, 26.0.1, 26.0.2, 26.0.3, 27.0.2, 27.0.3, 28.0.3
        API Levels: 19, 23, 24, 25, 26, 27, 28
    IDEs:
      Android Studio: 3.0 AI-171.4443003
      Xcode: 10.0/10A255 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.5.0 => 16.5.0
      react-native: 0.57.1 => 0.57.1
    npmGlobalPackages:
      create-react-native-app: 1.0.0
      react-native-cli: 2.0.1
      react-native-git-upgrade: 0.2.7

Description

When I try to run react-native unlink react-native-firebase it fails with the error "searchPaths.filter is not a function".

This is because my LIBRARY_SEARCH_PATHS is LIBRARY_SEARCH_PATHS: '"$(inherited)"', and the version of the xcode library react-native uses assumes that that is always an array.

  • This has already been fixed in xcode (a year ago), the reason this is still a bug is because react-native has not updated.
  • The xcode library have released a new version since that fix, so it's also not a case that the fix has not been released. I have also verified that this release has been pushed to npm. The only issue is that react-native has not updated.
  • This was previously reported in searchPaths.filter is not a function, when unlinking #13160, however that issue has been closed by a bot despite this bug still being present in react-native.
  • I cannot upgrade to React Native 0.57.2, I had to downgrade to 0.57.1 because of a regression in .2. However I have verified that the xcode dependency has not been updated in 2 years so verifying this behaviour in 0.57.1 is enough.

Someone in #13160 stated that the package is not even in react-native, however this is patently false. It's in the package.json and it's present in npm list.

$ npm list xcode
[email protected] /Users/daniel/Workspace/work/MindMonkeyRN
└─┬ [email protected]
  └── [email protected]

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions