EAS fails to build on managed expo (Found some duplicated unimodule packages but they are no duplicates)

every time I run eas build it fails with given errors:

Both for iOS and Android:

> Found some duplicated unimodule packages. Installed the ones with the highest version number.
> Make sure following dependencies of your project are resolving to one specific version:
>  expo-modules-core, expo-constants, expo-splash-screen

but I can’t find any duplicates. I have gone through all of the deprecated packages and updated all of them. For managed workflow, so those shouldn’t even be affected. I’m using yarn to install packages in my project but for global installs, I run npm.

Expo v43
Managed workflow
eas-cli/0.38.2 darwin-x64 node-v14.17.0

run yarn why expo-modules-core in your project to determine where it’s coming from

@notbrent thank you for taking the time to help me out on this. I have posted the log output below

yarn why v1.22.17
[1/4] 🤔  Why do we have the module "expo-modules-core"...?
[2/4] 🚚  Initialising dependency graph...
[3/4] 🔍  Finding dependency...
[4/4] 🚡  Calculating file sizes...
=> Found "expo-modules-core@0.2.0"
info Has been hoisted to "expo-modules-core"
info Reasons this module exists
   - Hoisted from "expo-app-auth#expo-modules-core"
   - Hoisted from "expo-av#expo-modules-core"
   - Hoisted from "expo-camera#expo-modules-core"
   - Hoisted from "expo-constants#expo-modules-core"
   - Hoisted from "expo-face-detector#expo-modules-core"
   - Hoisted from "expo-facebook#expo-modules-core"
   - Hoisted from "expo-font#expo-modules-core"
   - Hoisted from "expo-image-manipulator#expo-modules-core"
   - Hoisted from "expo-image-picker#expo-modules-core"
   - Hoisted from "expo-media-library#expo-modules-core"
   - Hoisted from "expo-permissions#expo-modules-core"
   - Hoisted from "react-native-unimodules#expo-modules-core"
   - Hoisted from "expo#expo-file-system#expo-modules-core"
info Disk size without dependencies: "468KB"
info Disk size with unique dependencies: "468KB"
info Disk size with transitive dependencies: "468KB"
info Number of shared dependencies: 0
=> Found "expo-web-browser#expo-modules-core@0.4.8"
info This module exists because "expo-web-browser" depends on it.
info Disk size without dependencies: "1.57MB"
info Disk size with unique dependencies: "1.63MB"
info Disk size with transitive dependencies: "1.69MB"
info Number of shared dependencies: 4
=> Found "expo-linking#expo-modules-core@0.4.8"
info Reasons this module exists
   - "expo-linking#expo-constants" depends on it
   - Hoisted from "expo-linking#expo-constants#expo-modules-core"
info Disk size without dependencies: "1.57MB"
info Disk size with unique dependencies: "1.63MB"
info Disk size with transitive dependencies: "1.69MB"
info Number of shared dependencies: 4
=> Found "expo-app-loading#expo-modules-core@0.4.8"
info Reasons this module exists
   - "expo-app-loading#expo-splash-screen" depends on it
   - Hoisted from "expo-app-loading#expo-splash-screen#expo-modules-core"
info Disk size without dependencies: "1.57MB"
info Disk size with unique dependencies: "1.63MB"
info Disk size with transitive dependencies: "1.69MB"
info Number of shared dependencies: 4
✨  Done in 1.85s.

it doesn’t look like you’re on an sdk 43 project. expo-modules-core@0.2.0 was used in sdk 42. did you follow the upgrade instructions correctly? also, in sdk 43 you shouldn’t have react-native-unimodules.

@notbrent sorry i was on a different branch and didn’t notice it. I switched to a different branch and have expo v43 install and when I do an eas build --platform ios I get this erro:

Prebuilding managed project
2
- Creating native project directories (./ios and ./android) and updating .gitignore
3
✔ Created native project | synced gitignore
4
- Adding Metro bundler config
5
- Updating your package.json scripts, dependencies, and main file
6
✔ Updated package.json and added index.js entry point for iOS and Android
7
- Config syncing
8
[stderr] dyld: lazy symbol binding failed: Symbol not found: _g_once_impl
9
[stderr]   Referenced from: /Users/expo/workingdir/build/node_modules/sharp/build/Release/sharp.node
10
[stderr]   Expected in: /Users/expo/.nvm/versions/node/v14.15.1/lib/node_modules/sharp-cli/node_modules/sharp/build/Release/../../vendor/lib/libvips-cpp.42.dylib
11
[stderr] 
12
[stderr] dyld: Symbol not found: _g_once_impl
13
[stderr]   Referenced from: /Users/expo/workingdir/build/node_modules/sharp/build/Release/sharp.node
14
[stderr]   Expected in: /Users/expo/.nvm/versions/node/v14.15.1/lib/node_modules/sharp-cli/node_modules/
15
[stderr] sharp/build/Release/../../vendor/lib/libvips-cpp.42.dylib
node exited with signal: SIGABRT

I’ve googled it for hours and can not figure out what is causing this or how to even fix it.

Package.json

"dependencies": {
    "@expo/ngrok": "^2.4.3",
    "@expo/webpack-config": "^0.16.2",
    "@react-native-async-storage/async-storage": "~1.15.0",
    "@react-native-community/masked-view": "0.1.10",
    "@react-navigation/compat": "^5.3.15",
    "@react-navigation/native": "^5.9.4",
    "@react-navigation/stack": "^5.14.5",
    "@reduxjs/toolkit": "^1.6.2",
    "@supabase/supabase-js": "^1.28.0",
    "axios": "^0.21.1",
    "debounce": "^1.2.1",
    "electron": "^12.0.9",
    "expo": "^43.0.3",
    "expo-app-auth": "~11.0.3",
    "expo-app-loading": "~1.2.1",
    "expo-apple-authentication": "~4.0.3",
    "expo-application": "~4.0.0",
    "expo-asset": "~8.4.3",
    "expo-av": "~10.1.3",
    "expo-blur": "~10.0.3",
    "expo-camera": "~12.0.3",
    "expo-checkbox": "~2.0.0",
    "expo-cli": "^4.4.8",
    "expo-constants": "~12.1.3",
    "expo-device": "~4.0.3",
    "expo-face-detector": "~11.0.3",
    "expo-facebook": "~12.0.3",
    "expo-font": "~10.0.3",
    "expo-google-app-auth": "~9.0.0",
    "expo-image-manipulator": "~10.1.2",
    "expo-image-picker": "~11.0.3",
    "expo-linking": "~2.4.2",
    "expo-media-library": "~13.0.3",
    "expo-permissions": "~13.0.3",
    "expo-random": "~12.0.1",
    "expo-redux-logger": "^2.0.0",
    "expo-splash-screen": "~0.13.5",
    "expo-status-bar": "~1.1.0",
    "expo-updates": "~0.10.15",
    "expo-web-browser": "~10.0.3",
    "firebase": "8.2.3",
    "interval-timer": "^1.1.2",
    "moment": "^2.29.1",
    "native-base": "^2.15.2",
    "prop-types": "^15.7.2",
    "react": "17.0.1",
    "react-devtools": "^4.13.4",
    "react-dom": "17.0.1",
    "react-native": "0.64.3",
    "react-native-background-timer": "^2.4.1",
    "react-native-gesture-handler": "~1.10.2",
    "react-native-keyboard-aware-scroll-view": "^0.9.4",
    "react-native-modal": "^11.10.0",
    "react-native-netinfo": "^1.1.0",
    "react-native-popup-menu": "^0.15.10",
    "react-native-reanimated": "~2.2.0",
    "react-native-root-toast": "^3.2.1",
    "react-native-safe-area-context": "3.3.2",
    "react-native-screens": "~3.8.0",
    "react-native-svg": "12.1.1",
    "react-native-unimodules": "~0.15.0",
    "react-native-vector-icons": "^8.1.0",
    "react-native-video": "^5.1.1",
    "react-native-web": "0.17.1",
    "react-native-webview": "11.13.0",
    "react-native-youtube-iframe": "^2.2.1",
    "react-navigation": "^4.4.4",
    "react-navigation-drawer": "^2.7.1",
    "react-navigation-hooks": "^1.1.0",
    "react-navigation-stack": "^2.10.4",
    "react-navigation-tabs": "^2.11.1",
    "react-redux": "^7.2.4",
    "redux": "^4.1.0",
    "redux-devtools-extension": "^2.13.9",
    "redux-persist": "^6.0.0",
    "redux-saga": "^1.1.3",
    "redux-thunk": "^2.3.0",
    "sentry-expo": "^4.0.0",
    "sharp": "^0.28.2",
    "sharp-cli": "^1.15.0",
    "unimodules-permissions-interface": "^6.1.0",
    "xdl": "^59.2.3"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9",
    "@babel/runtime": "^7.14.0",
    "@react-native-community/eslint-config": "^2.0.0",
    "@types/react-native": "~0.64.12",
    "babel-eslint": "^10.1.0",
    "babel-jest": "^26.6.3",
    "babel-preset-expo": "8.5.1",
    "eslint": "^7.27.0",
    "eslint-config-airbnb": "^18.2.1",
    "eslint-config-prettier": "^6.15.0",
    "eslint-plugin-import": "^2.23.3",
    "eslint-plugin-jsx-a11y": "^6.4.1",
    "eslint-plugin-only-warn": "^1.0.2",
    "eslint-plugin-prettier": "^3.1.2",
    "eslint-plugin-react": "^7.23.2",
    "install-peers": "^1.0.3",
    "jest": "^26.6.3",
    "metro-react-native-babel-preset": "^0.66.0",
    "prettier": "^2.3.0",
    "react-native-bundle-visualizer": "^2.2.1",
    "typescript": "~4.3.5"
  },
  "jest": {
    "preset": "react-native"
  },

can you link to your build page? note for the future that we have some guidance on troubleshooting builds in the docs

@notbrent I’m trying to figure out how to do it since it’s a private project. I have even upgraded my react-navigation to V6 thinking maybe it was something old that was causing the failure. Still same error