You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Plugin target deployments are out of range, causes Xcode warning #40109
Plugins can specify their minimum deployment version, but Xcode outputs a warning if this deployment version is less than the range it supports. Random example from #22123:
warning: The iOS deployment target is set to 7.0, but the range of supported deployment target versions for this platform is 8.0 to 12.0. (in target 'Protobuf')
warning: The iOS deployment target is set to 5.0, but the range of supported deployment target versions for this platform is 8.0 to 12.0. (in target 'GoogleToolboxForMac')
warning: The iOS deployment target is set to 4.3, but the range of supported deployment target versions for this platform is 8.0 to 12.0. (in target 'nanopb')
warning: The iOS deployment target is set to 6.0, but the range of supported deployment target versions for this platform is 8.0 to 12.0. (in target 'firebase_analytics')
warning: The iOS deployment target is set to 6.0, but the range of supported deployment target versions for this platform is 8.0 to 12.0. (in target 'firebase_remote_config')
warning: The iOS deployment target is set to 4.3, but the range of supported deployment target versions for this platform is 8.0 to 12.0. (in target 'image_picker')
After reading CocoaPods/CocoaPods#7314 I don't really want to imply libraries support a higher version than they claim to, or worse claim they support a higher version, but I also really hate warnings in dependencies you have no power to fix.
At a minimum, the the 8.0 version in the change doesn't match the version at the top.
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
And now we're chasing a moving target of whatever Xcode decides is the minimum deploy version.
What if we did this:
Then the individual pod targets will inherit IPHONEOS_DEPLOYMENT_TARGET either from the Pods project from that platform :ios call, or inherit from the SDK platform?
Whatever we do in this Podfile should be duplicated in Podfile-ios-swift and Podfile-macos.
post_install do |installer|
...
{{^withPluginHook}}
# Inherit the deployment target from the `platform :ios` call above to avoid un-fixable warnings.
config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
{{/withPluginHook}}
but it doubles down on the Podfile being a template, which goes against @xster's request for it to become dynamically generated here #9827
I need to find a mechanism to know if the app is a plugin example app AFTER the project is already generated, which there isn't right now AFAIK.
Oh yeah, and the other issue is that the Podfile isn't added on create, it's actually added when the first plugin is added. So at that point withPluginHook isn't available, either.
New thought: as of #59044 we have a lot more control over this logic, and changes don't require a developer Podfile migration.
We can parse the minimum versions post-install, and only config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET' if the minimum version is less than the project's version.
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.
Activity
jmagman commentedon Sep 9, 2019
Proposal from #36117 (comment):
First attempt:
#36117 (comment)
And eventual roadblock:
#36117 (comment)
jmagman commentedon Jan 24, 2020
I changed my mind, ignoring the plugin minimum version is probably a bad idea. Closing.
jmagman commentedon Sep 18, 2020
New thought: as of #59044 we have a lot more control over this logic, and changes don't require a developer Podfile migration.
We can parse the minimum versions post-install, and only
config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'if the minimum version is less than the project's version.flutter/packages/flutter_tools/bin/podhelper.rb
Line 29 in 3744b82
See https://www.rubydoc.info/github/CocoaPods/Core/Pod/Podfile
github-actions commentedon Aug 12, 2021
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.