No such module 'ExpoModulesCore'

I’m trying to build my bare expo project after ugrading the Expo sdk and I’m running into this error:

I’m running it on Expo SDK 44

➜  cultivate-app git:(master) ✗ expo run:ios
› Planning build
    Capabilities for Signing & Capabilities may not function correctly because its entitlements use a placeholder team ID. To resolve this, select a development team in the Cultivate editor. (in target 'Cultivate' from project 'Cultivate')
› Executing Cultivate » Start Packager on http://localhost:8081
    conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'EX_DEV_LAUNCHER_ENABLED=1')
    conditional compilation flags do not have values in Swift; they are either present or absent (rather than 'EX_DEV_MENU_ENABLED=1')

❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ consecutive statements on a line must be separated by ';'
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ expected expression after unary operator
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ expressions are not allowed at the top level
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:8:8)

   6 |  */
   7 | 
>  8 | import ExpoModulesCore
     |        ^ no such module 'ExpoModulesCore'
   9 | import expo-dev-launcher
  10 | import EXUpdates
  11 | 

› Compiling Cultivate » ExpoModulesProvider.swift

❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ consecutive statements on a line must be separated by ';'
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ expected expression after unary operator
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ expressions are not allowed at the top level
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:8:8)

   6 |  */
   7 | 
>  8 | import ExpoModulesCore
     |        ^ no such module 'ExpoModulesCore'
   9 | import expo-dev-launcher
  10 | import EXUpdates
  11 | 

› Compiling Cultivate » noop-file.swift

❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ consecutive statements on a line must be separated by ';'
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ expected expression after unary operator
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:9:12)

   7 | 
   8 | import ExpoModulesCore
>  9 | import expo-dev-launcher
     |            ^ expressions are not allowed at the top level
  10 | import EXUpdates
  11 | 
  12 | @objc(ExpoModulesProvider)


❌  (/Users/bengrady/Documents/code/cultivate-app/ios/Pods/Target Support Files/Pods-Cultivate/ExpoModulesProvider.swift:8:8)

   6 |  */
   7 | 
>  8 | import ExpoModulesCore
     |        ^ no such module 'ExpoModulesCore'
   9 | import expo-dev-launcher
  10 | import EXUpdates
  11 | 


❌  error: emit-module command failed with exit code 1 (use -v to see invocation)



› 13 error(s), and 3 warning(s)

Failed to build iOS project. "xcodebuild" exited with error code 65.

Here’s my package.json

{
  "scripts": {
    "develop": "expo --openssl-legacy-provider start",
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web",
    "eject": "expo eject",
    "test": "jest --watchAll"
  },
  "jest": {
    "preset": "jest-expo"
  },
  "dependencies": {
    "@expo/vector-icons": "^12.0.0",
    "@material-ui/core": "^4.11.4",
    "@material-ui/icons": "^4.11.2",
    "@react-native-community/datetimepicker": "^6.1.3",
    "@react-native-community/masked-view": "0.1.10",
    "@react-navigation/bottom-tabs": "5.11.2",
    "@react-navigation/native": "~5.8.10",
    "@react-navigation/stack": "~5.12.8",
    "@types/cacheable-request": "^6.0.2",
    "eas": "^0.1.0",
    "expo": "~41.0.1",
    "expo-asset": "~8.3.1",
    "expo-constants": "~10.1.3",
    "expo-dev-client": "~0.6.3",
    "expo-device": "~3.2.0",
    "expo-font": "~9.1.0",
    "expo-linking": "~2.2.3",
    "expo-splash-screen": "~0.10.2",
    "expo-status-bar": "~1.0.4",
    "expo-updates": "~0.5.4",
    "expo-web-browser": "~9.1.0",
    "moment": "^2.29.1",
    "react": "16.13.1",
    "react-dom": "16.13.1",
    "react-native": "~0.63.4",
    "react-native-calendar-events": "^2.2.0",
    "react-native-date-picker": "^4.2.1",
    "react-native-gesture-handler": "~1.10.2",
    "react-native-reanimated": "~2.1.0",
    "react-native-safe-area-context": "3.2.0",
    "react-native-screens": "~3.0.0",
    "react-native-unimodules": "~0.13.3",
    "react-native-uuid": "^2.0.1",
    "react-native-web": "^0.17.1",
    "recoil": "^0.3.1"
  },
  "devDependencies": {
    "@babel/core": "^7.9.0",
    "@types/react": "~16.9.35",
    "@types/react-native": "~0.63.2",
    "jest-expo": "~41.0.0",
    "typescript": "~4.0.0"
  },
  "private": true,
  "name": "cultivate-app",
  "version": "1.0.0"
}`Preformatted text`

Hi @bengrady4

It looks like you upgraded from a version less than Expo SDK 43.

You should ideally upgrade step by step from one SDK version to the next instead of jumping to the latest version in one go. While doing this you should read through the breaking changes and upgrade instructions in the release announcements and changelog.

In particular, the SDK 43 release announcement says this:

:building_construction: Deprecations, renamings, and removals

react-native-unimodules has been deprecated, use expo instead.
If you use the managed workflow, this does not impact you. If you are using Expo modules and managing your own iOS and Android projects, you should switch from react-native-unimodules to expo . Learn more about why we are making this change in “What’s new in Expo modules infrastructure” and learn how to migrate in “Migrating to Expo modules”.

See also the Bare workflow part of the " :arrow_right: Upgrading your app" section further down.

Thanks! I did try jumping from 41 to 44… I’ll give this a try!