Closed ddaddy closed 3 years ago
@ddaddy can you please show the screenshot for the warnings?
Sure. Xcode 12 enabled the compiler flag CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
Simply setting it to false removes the warnings, but there must be a good reason Apple decided to enable these warnings.
Thanks @ddaddy .
Actually I have Xcode 12.2 beta 2
, and I don't see any such warnings. That's why I've asked you for the screenshot.
You only see the warnings when you use the framework in a project, not within the framework itself.
You mean by manually adding the framework to another project? Coz I don't see it for the Swift example project, or the after integrating it via cocoapods.
I use Carthage. I have a feeling CocoaPods disables the new check.
Do you want me to upload a sample project?
Hey @ddaddy, no that's fine. I just wanted to understand as I haven't encountered this warning. I'll try integrating with Carthage later sometime, just for my learning purposes. Thanks :)
I've had it with most of the libraries I use through Carthage. Disabling the warning would be simple but I figured i'd try and correct the issue.
If you test out a Carthage build, note that Carthage is pretty broken with Xcode 12 and you need to use this script https://github.com/Carthage/Carthage/issues/3019#issuecomment-665136323 instead of the standard carthage update
command.
well, I hope that they will fix it in carthage or Xcode in the later version. let's wait for a while. I would like to make code clean. Bi thank yo for improvment anyway. it could be helpful for others, @ddaddy 👍
The pull request has nothing to do with the broken Carthage. Frameworks added to a project should use angled bracket imports according to Apple.
The broken Carthage is because Xcode 12 now also builds an arm64 slice for the simulator for new Arm based Macs. The way Carthage currently works makes it fail to build when using lipo to combine slices. That's why at the moment we need to use a script that stops Carthage building the Simulator Arm64 slice.
Got it. Thanks for clarification/ Well, I'm not an active Carthage user. @noorulain17 do you have thougts about this?
@skywinder nopes I'm also not an active Carthage user. @ddaddy explained the reason in the above thread to me too.
Maybe just hold out a short while before implementing this. Let's see what changes Carthage end up making to overcome the fat binary issue with Xcode 12. If they end up moving to use XCFramework, it might end up like CocoaPods and not need this update.
@ddaddy Thank. Let hold it for a while and see how it goes. 👍
@ddaddy please resolve the conflicts
I have had to open a new pull request for this.
FYI, Carthage is now fixed if you want to test it before and after my fix. You just need to use the --use-xcframeworks
argument.
Xcode 12 enables the warning
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER
which then throws up warnings for this framework.