doctor: check if Xcode pbxproj deployment target coincides with Podfile ios version
Describe the Feature
A source of hard-to-figure-out errors is the Xcode pbxproj file having iOS deployment target values that are different than the Podfile ios version value.
I was trying to find an issues link for it but could not, from memory it can result in a linker issue where .a files are not found for some reason and the build fails. Of course it also generates lots of iOS warning messages, which is noisy during the build
It would be nice if doctor could determine the two values, compare them, and emit some sort of warning if they were not in agreement
Possible Implementations
I think the pbxproj part is somewhat easy, I'm not sure about the cocoapods part since you'd want to get the value after it was determined by the cocoapods ruby execution environment (since it could be set programmatically)
Related Issues
I was trying to find an issues link for it but could not,
I would be interested in reading more about it, if you find any issue to link
Indeed, it was nasty. Was actually something that blocked me doing the AppCheck module for react-native-firebase, was one of the most subtle iOS build failures I have ever had, and I've suffered through a few. Part of it was architecture exclusion (removing 32-bit targets) and part of it was the deploy targets not lining up, resulting in a transitive lib .a not being produced and culminating in link failure. Unfortunately, all you've got is my blah blah right here which is apocryphal and I couldn't turn up a link now so :shrug: - will treat this as lower priority vs the other little stack of doctor things I want to implement
still not concrete but came across my old comments on this while fuzzbusting catalyst builds It seemed to show up with the Yoga modulemap file not being found while integrating the old react-native-fbsdk and the newer react-native-fbsdk-next and was partially handled by people either adding a swift bridging header (which modifies the linker path, really) or directly modifying the linker path, but also a subset of people were fixed by aligning their ios deployment target. If I find something concrete I'll update of course, but I do have a memory of this being useful FWIW
There hasn't been any activity on this issue in the past 3 months, so it has been marked as stale and it will be closed automatically if no further activity occurs in the next 7 days.