expo / config-plugins

Out-of-tree Expo config plugins for packages that haven't adopted the config plugin system yet.
427 stars 91 forks source link

iOS deployment target was not taken from the configuration. #160

Open proton1k opened 1 year ago

proton1k commented 1 year ago

Summary

We're trying to build an ios app using eas build --platform ios in the project which contains a newly installed plugin "@config-plugins/react-native-webrtc",. We followed instructions in the really big and old thread about implementing WebRTC with Expo (link here). According to the recommendation, we need to install package expo-dev-client along with the @config-plugins/react-native-webrtc and according to the example offered for review, we did exactly as required. Due to having a failing build with traceback logs saying

compiling for iOS 12.0, but module 'ExpoModulesCore' has a minimum deployment target of iOS 13.0:

we added

  [
    "expo-build-properties",
    {
      "ios": {
        "deploymentTarget": "13.0"
      }
    }
  ]

to the app.json configuration, but it looks like it does not catch up in the eas build environment. We still get

❌  (node_modules/expo-linear-gradient/ios/LinearGradientModule.swift:4:8)

  2 | 
  3 | import CoreGraphics
> 4 | import ExpoModulesCore
    |        ^ compiling for iOS 12.0, but module 'ExpoModulesCore' has a minimum deployment target of iOS 13.0: /Users/expo/Library/Developer/Xcode/DerivedData/binaschoolapp-eykxagvjwynwjugxpprchszbfdvw/Build/Intermediates.noindex/ArchiveIntermediates/binaschoolapp/BuildProductsPath/Release-iphoneos/ExpoModulesCore/ExpoModulesCore.swiftmodule/arm64-apple-ios.swiftmodule

after adding this config instructions.

Config Plugin

@config-plugins/react-native-webrtc

What platform(s) does this occur on?

iOS

SDK Version

~47.0.12

Reproducible demo

Minumum reproducible example: https://drive.proton.me/urls/Y4TY3DFGCM#NBcYtaD7q31N

1st failed build: https://expo.dev/accounts/the_bina_school/projects/bina-app/builds/f0ad1db9-6a74-4585-b047-d01ec8a6fbd0

2nd failed build: https://expo.dev/accounts/the_bina_school/projects/bina-app/builds/ec898bf2-a7c2-421d-a05b-ff2a7640208e

zane-commeatio commented 6 months ago

Same issue here

Malachite40 commented 5 months ago

same

GoldAndLink commented 4 months ago

Did you find out a way to force the deploymentTarget ?

tomhopkins commented 4 months ago

Any update on this? Having same/similar issue: https://stackoverflow.com/questions/78027658/expo-eas-build-getting-deployment-target-error-despite-setting-it-in-app-js

c-fitzmaurice commented 4 months ago

Also looking for any update here I just ran into this as well when trying to include a third party pod in a custom native module

GoldAndLink commented 4 months ago

On my side I had to use npx expo prebuild -p ios --clean so I could generate a prebuild and force the target of the third party (NotificationService in my case) right into XCode

MichaelDickinson20I commented 3 months ago

I was having this issue and found that the native module I was trying to install had this line in the podspec:

s.platforms  = { :ios => '12.0', :tvos => '12.0' }

I set the version numbers there to 13, ran a clean prebuild, and the issue went away