react-native-unimodules icon indicating copy to clipboard operation
react-native-unimodules copied to clipboard

Include of non-modular header inside framework module

Open rush86999 opened this issue 2 years ago • 4 comments

I am having two bugs with a fresh react native init bare install with unimodules.

  1. Could not build 'ExpoModulesCore' inside ExPermissions.m related to #import <ExpoModulesCore/EXPermissionsInterface.h>
  2. Include of non-modular header inside framework module inside ExPermissionsInterface.h for #import <UMCore/UMModuleRegistry.h>

here's my package.json:

{
  "name": "XXXXX",
  "version": "0.0.1",
  "private": true,
  "expo-yarn-workspaces": {
    "symlinks": [
      "react-native-unimodules",
      "expo-constants"
    ]
  },
  "scripts": {
    "android": "react-native run-android",
    "ios": "react-native run-ios",
    "start": "react-native start",
    "test": "jest",
    "postinstall": "rn-nodeify --install  --hack --yarn",
    "start:development": "NODE_ENV=development npx react-native start",
    "start:production": "NODE_ENV=production npx react-native start",
    "lint": "eslint ."
  },
  "dependencies": {
    "@aws-sdk/client-s3": "^3.14.0",
    "@craftzdog/react-native-buffer": "^6.0.3",
    "@expo/vector-icons": "^12.0.2",
    "@react-native-async-storage/async-storage": "^1.15.5",
    "@react-native-community/cameraroll": "^4.0.4",
    "@react-native-community/masked-view": "^0.1.10",
    "@react-native-community/netinfo": "^6.0.0",
    "@react-native-community/push-notification-ios": "^1.8.0",
    "@react-native-firebase/app": "^11.0.0",
    "@react-native-firebase/messaging": "^11.0.0",
    "@react-navigation/bottom-tabs": "^5.11.11",
    "@react-navigation/compat": "^5.3.10",
    "@react-navigation/drawer": "^5.12.5",
    "@react-navigation/native": "^5.9.2",
    "@react-navigation/stack": "^5.14.2",
    "@shopify/polaris-tokens": "^2.16.0",
    "@shopify/restyle": "^1.4.0",
    "@tradle/react-native-http": "^2.0.1",
    "@types/base-64": "^0.1.3",
    "@types/mathjs": "^6.0.11",
    "@types/pngjs": "^6.0.0",
    "@types/react-native-calendars": "^1.505.3",
    "@types/react-native-dotenv": "^0.2.0",
    "@types/react-native-material-menu": "^1.0.4",
    "@types/react-native-push-notification": "^7.0.1",
    "@types/uuid": "^8.3.0",
    "@unimodules/core": "^7.1.1",
    "amazon-cognito-identity-js": "^5.0.2",
    "assert": "^1.5.0",
    "aws-amplify": "^4.0.3",
    "aws-amplify-react-native": "^4.2.10",
    "aws-sdk": "^2.897.0",
    "axios": "^0.21.1",
    "base-64": "^1.0.0",
    "browserify-zlib": "^0.1.4",
    "chrono-node": "^2.2.5",
    "compromise": "^13.11.0",
    "compromise-dates": "^2.1.0",
    "compromise-numbers": "^1.4.0",
    "console-browserify": "^1.2.0",
    "constants-browserify": "^1.0.0",
    "dayjs": "^1.9.7",
    "dns.js": "^1.0.1",
    "domain-browser": "^1.2.0",
    "eslint-import-resolver-node": "^0.3.4",
    "events": "^1.1.1",
    "expo-app-loading": "^1.0.1",
    "expo-barcode-scanner": "^10.2.2",
    "expo-calendar": "^9.2.2",
    "expo-camera": "^11.2.2",
    "expo-cli": "^4.3.0",
    "expo-constants": "^11.0.1",
    "expo-font": "^8.4.0",
    "expo-image-picker": "^10.2.2",
    "expo-linear-gradient": "^8.4.0",
    "expo-modules-core": "^0.2.0",
    "expo-sensors": "^10.2.2",
    "expo-task-manager-interface": "^3.0.0",
    "expo-web-browser": "^9.2.0",
    "formik": "^2.2.6",
    "galio-framework": "^0.8.0",
    "global": "^4.4.0",
    "https-browserify": "0.0.1",
    "install": "^0.13.0",
    "lodash": "^4.17.21",
    "lottie-ios": "3.1.8",
    "lottie-react-native": "^3.5.0",
    "mathjs": "^8.1.0",
    "node-nlp-rn": "^3.5.2",
    "npm": "^7.17.0",
    "path-browserify": "0.0.0",
    "pngjs": "^6.0.0",
    "process": "^0.11.10",
    "punycode": "^1.4.1",
    "querystring-es3": "^0.2.1",
    "react": "16.13.1",
    "react-native": "0.63.4",
    "react-native-background-timer": "^2.4.1",
    "react-native-calendars": "^1.1263.0",
    "react-native-chart-kit": "^6.10.0",
    "react-native-crypto": "^2.2.0",
    "react-native-date-picker": "^3.2.10",
    "react-native-dotenv": "^2.5.0",
    "react-native-elements": "git+https://github.com/react-native-elements/react-native-elements.git#259177fd529ae84a2a1bff6c62acc6ed0f0bc5e0",
    "react-native-fast-image": "^8.3.4",
    "react-native-fs": "^2.17.0",
    "react-native-gesture-handler": "^1.10.3",
    "react-native-get-random-values": "^1.7.0",
    "react-native-level-fs": "^3.0.1",
    "react-native-material-menu": "^1.2.0",
    "react-native-os": "^1.2.6",
    "react-native-paper": "^4.9.2",
    "react-native-photo-editor": "^1.0.12",
    "react-native-process-shim": "^1.1.1",
    "react-native-progress": "^4.1.2",
    "react-native-push-notification": "^7.2.1",
    "react-native-quick-base64": "^0.1.4",
    "react-native-randombytes": "^3.6.1",
    "react-native-reanimated": "^1.13.2",
    "react-native-safe-area-context": "^3.1.9",
    "react-native-screens": "^2.17.0",
    "react-native-shared-element": "^0.7.0",
    "react-native-spinkit": "^1.5.1",
    "react-native-style-tachyons": "^4.2.0",
    "react-native-svg": "^12.1.0",
    "react-native-svg-charts": "^5.4.0",
    "react-native-tcp": "^3.3.2",
    "react-native-toast-message": "^1.4.2",
    "react-native-touchable-scale": "^2.1.2",
    "react-native-udp": "^2.7.0",
    "react-native-ui-lib": "^5.19.0",
    "react-native-unimodules": "^0.14.6",
    "react-native-url-polyfill": "^1.3.0",
    "react-native-uuid": "^2.0.1",
    "react-native-vector-icons": "^8.0.0",
    "react-native-view-shot": "^3.1.2",
    "react-native-webview": "^11.0.2",
    "react-navigation-shared-element": "^3.0.0",
    "readable-stream": "^1.0.33",
    "realm": "^10.2.0",
    "rrule": "^2.6.8",
    "spacetime": "^6.16.0",
    "stream-browserify": "^1.0.0",
    "string_decoder": "^0.10.31",
    "timers-browserify": "^1.4.2",
    "tslint-react-a11y": "^1.1.0",
    "tty-browserify": "0.0.0",
    "ulid": "^2.3.0",
    "unimodules-font-interface": "^6.1.0",
    "url": "^0.10.3",
    "util": "^0.10.4",
    "uuid": "^8.3.2",
    "vm-browserify": "0.0.4",
    "zlib": "^1.0.5"
  },
  "devDependencies": {
    "@babel/core": "^7.12.10",
    "@babel/runtime": "^7.12.5",
    "@react-native-community/eslint-config": "^2.0.0",
    "@types/jest": "^26.0.19",
    "@types/node": "^15.0.1",
    "@types/react": "^17.0.0",
    "@types/react-native": "0.63.40",
    "@types/react-test-renderer": "^17.0.0",
    "babel-eslint": "^10.1.0",
    "babel-jest": "^26.6.3",
    "detox": "^18.20.1",
    "eslint": "^7.16.0",
    "eslint-plugin-react": "^7.21.5",
    "eslint-plugin-react-native": "^3.10.0",
    "eslint-plugin-react-native-a11y": "^2.0.4",
    "expo-yarn-workspaces": "^1.5.2",
    "jest": "^27.0.6",
    "metro-react-native-babel-preset": "^0.64.0",
    "prettier": "^2.2.1",
    "react-native-svg-transformer": "^0.14.3",
    "react-test-renderer": "16.13.1",
    "rn-nodeify": "^10.3.0",
    "typescript": "^4.3.2"
  },
  "jest": {
    "preset": "react-native"
  },
  "react-native": {
    "zlib": "browserify-zlib",
    "console": "console-browserify",
    "constants": "constants-browserify",
    "crypto": "react-native-crypto",
    "dns": "dns.js",
    "net": "react-native-tcp",
    "domain": "domain-browser",
    "http": "@tradle/react-native-http",
    "https": "https-browserify",
    "os": "react-native-os",
    "path": "path-browserify",
    "querystring": "querystring-es3",
    "fs": "react-native-level-fs",
    "_stream_transform": "readable-stream/transform",
    "_stream_readable": "readable-stream/readable",
    "_stream_writable": "readable-stream/writable",
    "_stream_duplex": "readable-stream/duplex",
    "_stream_passthrough": "readable-stream/passthrough",
    "dgram": "react-native-udp",
    "stream": "stream-browserify",
    "timers": "timers-browserify",
    "tty": "tty-browserify",
    "vm": "vm-browserify",
    "tls": false
  },
  "browser": {
    "zlib": "browserify-zlib",
    "console": "console-browserify",
    "constants": "constants-browserify",
    "crypto": "react-native-crypto",
    "dns": "dns.js",
    "net": "react-native-tcp",
    "domain": "domain-browser",
    "http": "@tradle/react-native-http",
    "https": "https-browserify",
    "os": "react-native-os",
    "path": "path-browserify",
    "querystring": "querystring-es3",
    "fs": "react-native-level-fs",
    "_stream_transform": "readable-stream/transform",
    "_stream_readable": "readable-stream/readable",
    "_stream_writable": "readable-stream/writable",
    "_stream_duplex": "readable-stream/duplex",
    "_stream_passthrough": "readable-stream/passthrough",
    "dgram": "react-native-udp",
    "stream": "stream-browserify",
    "timers": "timers-browserify",
    "tty": "tty-browserify",
    "vm": "vm-browserify",
    "tls": false
  }
}

I can't seem to find a reason for why this is happening but seems to be related to imports inside swift. Please let me know if I can provide any other info

rush86999 avatar Aug 03 '21 22:08 rush86999

Facing the same issue. Using Mac M1. Does somebody found any workaround?

joartola avatar Aug 12 '21 17:08 joartola

For me, i did a fresh separate install and checked for differences in the pod file. I think there was a post install script by another another module that was causing the problem. I just made sure i got rid of other pod file changes and it worked. It was from react native photo editor I think. I also followed the expo unimodules install instructions and made sure i didn't skip any steps by mistake.

rush86999 avatar Aug 12 '21 17:08 rush86999

I'm having the same issue. It cropped up when I tried to use "use_frameworks!" in the Podfile. It seems use_frameworks is broken in unimodules.

craigsonoffergus avatar Sep 02 '21 23:09 craigsonoffergus

Having the exact same issue and I def need the "use_frameworks!", any real solution or workaround ?

Qwin avatar Oct 06 '21 00:10 Qwin