ITMS-90381: Too many symbol files
See original GitHub issueBug Report
Problem
I’m not sure if this is the correct place to submit, but I couldn’t think of any better. Basically, I’ve recently switched to cordova-ios 5.1.1 and cordova 9.0.0 for my Ionic app. I’m using the modern build system for iOS (no legacy system). I’m using several plugins that use cocoapods (firebasex, login via facebook, login via google, etc.). After submitting a build to Apple, they’ve responded with “Too many symbol files” warning. Usually, this was solved by
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['DEBUG_INFORMATION_FORMAT'] = 'dwarf'
end
end
end
added the Podfile, but it doesn’t seem to be working now.
I’ve noticed that when I open the XCode workspace and select the Pods project, every Pod has indeed set debug information format to DWARF, but only for Debug target, where for Release target, it says “DWARF with dSYM”. Switching it manually back to just “DWARF” seems to solve it (Apple doesn’t complain about the symbols).
Perhaps this should be some kind of array, i.e. config.build_settings['DEBUG_INFORMATION_FORMAT'] = ['dwarf', 'dwarf']?
- I’m not familiar with the format here.
Should this be supported by cordova-ios by default?
Also: Cocoapods version - 1.9.0 - might be relevant.
What is expected to happen?
No warnings from Apple.
What does actually happen?
I understand that some additional symbols are copied to the resulting release binary, and they shouldn’t. I’m confused as to which part of the compilation stack should be responsible for it (cordova? cordova-ios? plugin author?)
Checklist
- I searched for existing GitHub issues
- I updated all Cordova tooling to most recent version
- I included all the necessary information above
Issue Analytics
- State:
- Created 4 years ago
- Reactions:2
- Comments:7 (1 by maintainers)
Top GitHub Comments
I’ve now tried some other things and it seems like the issue is already solved by CocoaPods (see referenced GH issue in https://stackoverflow.com/a/50582315), so instead of the
post_install
code I did the following:Podfile
from 10.0 to 11.0 (my xcode project is already set for 11.0, only the Podfile is set to 10.0)pod install
inside the “platforms/ios” folderNow the generated app archive only contains dsyms for the relevant archs (arm64). @sebastian-zarzycki-es Is this working for you?
But changing the deployment target in the Podfile is still a temporary solution. Actually there is a “deployment-target” preference for the config.xml, but changing this to “11.0” does not change the Podfile atm. I’ve found a related issue: https://github.com/apache/cordova-ios/issues/580
Any further information about this? Happened to me now and i don’t what change caused this. I don’t want to enable Firebase’s
IOS_STRIP_DEBUG
to keep the Crash Reports. But it is just a warning and can be used for production?