New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

appex contains disallowed file 'Frameworks' (cocoapods 0.39.0.beta.4) #4203

Closed
mikehouse opened this Issue Sep 17, 2015 · 128 comments

Comments

Projects
None yet
@mikehouse

mikehouse commented Sep 17, 2015

The iTunes Connect gave this error message to me when I wanted to upload an ipa file to.
Several days I used to have a trouble with that. I found out that it was caused by cocoapods 0.39.0.beta.4. To be more accurate this problem appears when I'm adding some dependencies to a watch extension target. That is the empty folder 'Frameworks' is being created into the appex directory which causes the current issue. Downgrade to 0.38.2 have solved this problem though.

The same behavior is for such combinations
Xcode 6 + watch os 1
Xcode 7 + watch os 1
Xcode 7 + watch os 2

Thanks.

@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Sep 19, 2015

Experiencing the same issue. Extension targets are containing the Frameworks folder when they should not.

bassrock commented Sep 19, 2015

Experiencing the same issue. Extension targets are containing the Frameworks folder when they should not.

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Sep 25, 2015

Member

I believe we have other reports of this happening, I believe it's being caused by the embed frameworks script

Member

segiddins commented Sep 25, 2015

I believe we have other reports of this happening, I believe it's being caused by the embed frameworks script

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Sep 25, 2015

Member

Can you see if #4261 fixes things for you?

Member

segiddins commented Sep 25, 2015

Can you see if #4261 fixes things for you?

@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Sep 25, 2015

@segiddins just tried it same results.

bassrock commented Sep 25, 2015

@segiddins just tried it same results.

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Sep 25, 2015

Member

hm strange, that PR makes it so that the Frameworks directory should never be empty

Member

segiddins commented Sep 25, 2015

hm strange, that PR makes it so that the Frameworks directory should never be empty

@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Sep 25, 2015

The .apex's (extensions) should not contain the Frameworks period as they use the frameworks from the main app. Thats the main issue.

bassrock commented Sep 25, 2015

The .apex's (extensions) should not contain the Frameworks period as they use the frameworks from the main app. Thats the main issue.

@mikehouse

This comment has been minimized.

Show comment
Hide comment
@mikehouse

mikehouse Sep 25, 2015

Have just tried, the same(
This as I think causes the problem

local destination="${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"

mikehouse commented Sep 25, 2015

Have just tried, the same(
This as I think causes the problem

local destination="${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Sep 25, 2015

A Today or a Watch Extension 1.0 should technically merge their frameworks to the main host app, but only link against the ones they require.

bassrock commented Sep 25, 2015

A Today or a Watch Extension 1.0 should technically merge their frameworks to the main host app, but only link against the ones they require.

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Sep 25, 2015

Member

In that case, it sounds like the framework folders path is actually what's wrong here?

Member

segiddins commented Sep 25, 2015

In that case, it sounds like the framework folders path is actually what's wrong here?

@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Sep 25, 2015

I think so, right now the following occurs when archiving:

.xcarchive/Products/Applications/Acme.app/PlugIns/TodayExtension.appex/Frameworks/ (all the used frameworks here)

but the /Frameworks/(frameworks here) should not exist in the .appex.

I think the scripts need to be different for extensions and instead copy into the .xcarchive/Products/Applications/Acme.app/Frameworks/ directory

bassrock commented Sep 25, 2015

I think so, right now the following occurs when archiving:

.xcarchive/Products/Applications/Acme.app/PlugIns/TodayExtension.appex/Frameworks/ (all the used frameworks here)

but the /Frameworks/(frameworks here) should not exist in the .appex.

I think the scripts need to be different for extensions and instead copy into the .xcarchive/Products/Applications/Acme.app/Frameworks/ directory

@neonichu

This comment has been minimized.

Show comment
Hide comment
@neonichu

neonichu Sep 25, 2015

Member

I don't think this can be solved inside the embed frameworks script, as the application extension is build separately first and then later copied into the application bundle by Xcode. We need to merge the dependencies of application extension targets into the ones of the host app at an earlier stage.

Member

neonichu commented Sep 25, 2015

I don't think this can be solved inside the embed frameworks script, as the application extension is build separately first and then later copied into the application bundle by Xcode. We need to merge the dependencies of application extension targets into the ones of the host app at an earlier stage.

@rocxteady

This comment has been minimized.

Show comment
Hide comment
@rocxteady

rocxteady Oct 12, 2015

I got this error on 0.39

rocxteady commented Oct 12, 2015

I got this error on 0.39

@mikehouse

This comment has been minimized.

Show comment
Hide comment
@mikehouse

mikehouse Oct 12, 2015

I think it could be fixed by bash script.
Try to create the script there 'watch extension target -> Build Phases' then click on '+' and select "New Run Script Phase", the run script should go after all others. Insert there

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then 
    rm -fr Frameworks
fi

after clean a project and try to create an archive once again.

mikehouse commented Oct 12, 2015

I think it could be fixed by bash script.
Try to create the script there 'watch extension target -> Build Phases' then click on '+' and select "New Run Script Phase", the run script should go after all others. Insert there

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then 
    rm -fr Frameworks
fi

after clean a project and try to create an archive once again.

@romanr

This comment has been minimized.

Show comment
Hide comment
@romanr

romanr Oct 13, 2015

@mikehouse Thank you for the script! That's the only thing that worked for me out of many other solutions.
I wonder why this don't work in 0.39.0 even if it looks like it was referenced in some commit that went in 0.39.
Was this caused by use_frameworks! ? I had use_frameworks in my Podfile when I tried some pod and later removed use_frameworks. Perhaps it leaves Frameworks directory somewhere in the extension target.

romanr commented Oct 13, 2015

@mikehouse Thank you for the script! That's the only thing that worked for me out of many other solutions.
I wonder why this don't work in 0.39.0 even if it looks like it was referenced in some commit that went in 0.39.
Was this caused by use_frameworks! ? I had use_frameworks in my Podfile when I tried some pod and later removed use_frameworks. Perhaps it leaves Frameworks directory somewhere in the extension target.

@raylillywhite

This comment has been minimized.

Show comment
Hide comment
@raylillywhite

raylillywhite Oct 13, 2015

I was receiving the following error while trying to upload to the app store:
ERROR ITMS-90206: "Invalid Bundle. The bundle at 'Spruce.app/Frameworks/SpruceCore.framework' contains disallowed file 'Frameworks'."to address this issue."

The framework mentioned there is a dynamically linked framework that's shared between two apps. The framework and the two apps are all in the same workspace, each with separate Xcode projects, but sharing a Podfile. And the frameworks that were contained at Spruce.app/Frameworks/SpruceCore.framework/Frameworks/* were the standard Swift frameworks.

I fixed this by overriding the Embedded Content Contains Swift Code build setting on my framework target. It was previously being set to YES by Pods.*.xcconfig and I overrode it to set it to NO.

raylillywhite commented Oct 13, 2015

I was receiving the following error while trying to upload to the app store:
ERROR ITMS-90206: "Invalid Bundle. The bundle at 'Spruce.app/Frameworks/SpruceCore.framework' contains disallowed file 'Frameworks'."to address this issue."

The framework mentioned there is a dynamically linked framework that's shared between two apps. The framework and the two apps are all in the same workspace, each with separate Xcode projects, but sharing a Podfile. And the frameworks that were contained at Spruce.app/Frameworks/SpruceCore.framework/Frameworks/* were the standard Swift frameworks.

I fixed this by overriding the Embedded Content Contains Swift Code build setting on my framework target. It was previously being set to YES by Pods.*.xcconfig and I overrode it to set it to NO.

@brianmichel

This comment has been minimized.

Show comment
Hide comment
@brianmichel

brianmichel Oct 13, 2015

Hey @segiddins is there anywhere I can read about the nuance here that may be required? I'd be interested in working on this, but it seems like a hard and fast rule that we just shouldn't have the Frameworks directory inside of AppEx targets, right?

I'd love to take a crack at this, but it sounds like it's a bit more nuanced, can you help me understand?

brianmichel commented Oct 13, 2015

Hey @segiddins is there anywhere I can read about the nuance here that may be required? I'd be interested in working on this, but it seems like a hard and fast rule that we just shouldn't have the Frameworks directory inside of AppEx targets, right?

I'd love to take a crack at this, but it sounds like it's a bit more nuanced, can you help me understand?

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Oct 13, 2015

Member

Nope, that's about it. The tough part is that, at appex build time, there doesn't appear to be any way to know where those frameworks actually should be copied, i.e. We don't have the containing apps frameworks directory available.

Member

segiddins commented Oct 13, 2015

Nope, that's about it. The tough part is that, at appex build time, there doesn't appear to be any way to know where those frameworks actually should be copied, i.e. We don't have the containing apps frameworks directory available.

@csotiriou

This comment has been minimized.

Show comment
Hide comment
@csotiriou

csotiriou Oct 13, 2015

I have an iOS application, with a Today Extension + an shared embedded framework, for sharing code between the two. I have found that when archiving, the embedded framework contains a folder named "Frameworks" that includes many frameworks (including swift standard libraries!) and also the today extension does the same. These are the folders that mess with the App Store submission.

I have tried using mikehouse's approach by putting his script in both the extension's and the framework's build phases, but after archiving those two folders, the "Framework" folders are still there, so the problem persists. The interesting thing is that this happens only with Cocoapods 0.39. I solved it manually by deleting all "Frameworks" folders of any bundle, except the one of the root application.

@segiddins , why do you need the containing app's directory available during the appex build? Can't you just remove the "Frameworks" folder from each appex and embedded framework build before it gets contained to the final app? Or the "Frameworks" folders are being copied AFTER they are embedded into the main application?

In any case, is seems logical to make a post-install script that traverses the "Plugins" and "Frameworks" directory of the main app, and then delete any "Frameworks" directory contained in any bundle that exists in those folders. Could this be the solution?

csotiriou commented Oct 13, 2015

I have an iOS application, with a Today Extension + an shared embedded framework, for sharing code between the two. I have found that when archiving, the embedded framework contains a folder named "Frameworks" that includes many frameworks (including swift standard libraries!) and also the today extension does the same. These are the folders that mess with the App Store submission.

I have tried using mikehouse's approach by putting his script in both the extension's and the framework's build phases, but after archiving those two folders, the "Framework" folders are still there, so the problem persists. The interesting thing is that this happens only with Cocoapods 0.39. I solved it manually by deleting all "Frameworks" folders of any bundle, except the one of the root application.

@segiddins , why do you need the containing app's directory available during the appex build? Can't you just remove the "Frameworks" folder from each appex and embedded framework build before it gets contained to the final app? Or the "Frameworks" folders are being copied AFTER they are embedded into the main application?

In any case, is seems logical to make a post-install script that traverses the "Plugins" and "Frameworks" directory of the main app, and then delete any "Frameworks" directory contained in any bundle that exists in those folders. Could this be the solution?

@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Oct 13, 2015

@csotiriou This is due to the fact that one could use a Watch Specific or Today Specific Framework in their Podfile for the Today View Target but not add it to the Main App Target. And extensions need to embed the frameworks into their main app targets. So while deleting the folders can work, the real solution is to embed the frameworks from the extension target into the main target while still linking the right frameworks at build.

bassrock commented Oct 13, 2015

@csotiriou This is due to the fact that one could use a Watch Specific or Today Specific Framework in their Podfile for the Today View Target but not add it to the Main App Target. And extensions need to embed the frameworks into their main app targets. So while deleting the folders can work, the real solution is to embed the frameworks from the extension target into the main target while still linking the right frameworks at build.

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Oct 14, 2015

Member

I made some progress on this in the seg-no-embed-in-extensions branch

Member

segiddins commented Oct 14, 2015

I made some progress on this in the seg-no-embed-in-extensions branch

@orta

This comment has been minimized.

Show comment
Hide comment
@orta

orta Oct 14, 2015

Member

I just gave this a shot on emergence on this branch and got:

NoMethodError - undefined method `embedded_targets' for <Pod::AggregateTarget name=Pods >:Pod::AggregateTarget
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:684:in `block (2 levels) in verify_extension_bs'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:674:in `each'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:674:in `block in verify_extension_bs'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:672:in `each'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:672:in `verify_extension_bs'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:74:in `analyze'
Member

orta commented Oct 14, 2015

I just gave this a shot on emergence on this branch and got:

NoMethodError - undefined method `embedded_targets' for <Pod::AggregateTarget name=Pods >:Pod::AggregateTarget
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:684:in `block (2 levels) in verify_extension_bs'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:674:in `each'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:674:in `block in verify_extension_bs'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:672:in `each'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:672:in `verify_extension_bs'
/Users/orta/.rvm/gems/ruby-2.1.3/bundler/gems/CocoaPods-bd1b036e6cc6/lib/cocoapods/installer/analyzer.rb:74:in `analyze'
@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Oct 14, 2015

Member

@orta it's by no means runnable, I just said its progress

Member

segiddins commented Oct 14, 2015

@orta it's by no means runnable, I just said its progress

@enricenrich

This comment has been minimized.

Show comment
Hide comment
@enricenrich

enricenrich Oct 15, 2015

With the final release of 0.39.0 this error still happens. I fixed it with the suggestion by @mikehouse that I found here: http://stackoverflow.com/a/33092433

enricenrich commented Oct 15, 2015

With the final release of 0.39.0 this error still happens. I fixed it with the suggestion by @mikehouse that I found here: http://stackoverflow.com/a/33092433

@Spacelapp

This comment has been minimized.

Show comment
Hide comment
@Spacelapp

Spacelapp Oct 18, 2015

Same problem for me with 0.39.0...

Spacelapp commented Oct 18, 2015

Same problem for me with 0.39.0...

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Oct 18, 2015

Member

Yes, we know it's an issue.

Member

segiddins commented Oct 18, 2015

Yes, we know it's an issue.

@seamane

This comment has been minimized.

Show comment
Hide comment
@seamane

seamane Oct 23, 2015

Thank you @mikehouse for the script! I have been working on this submitting issue for the past day, but nothing has worked until now. :) thanks again!

PS - I am using 0.39.0

seamane commented Oct 23, 2015

Thank you @mikehouse for the script! I have been working on this submitting issue for the past day, but nothing has worked until now. :) thanks again!

PS - I am using 0.39.0

mikeh added a commit to mikeh/alfresco-ios-app that referenced this issue Nov 10, 2015

@siuying

This comment has been minimized.

Show comment
Hide comment
@siuying

siuying Nov 12, 2015

Contributor

I think I have another use case for this issue. My app have three targets:

  • App Target
  • AppExtension Target
  • AppShared Dynamic Framework

The dynamic framework supposedly is shared by both extension and app. When submitted, ITC complains:

  • The bundle at 'App.app/Frameworks/AppShared.framework' contains disallowed file 'Frameworks'
  • The bundle at 'App.app/Plugins/AppExtension.appex' contains disallowed file 'Frameworks'

Remove "Embed Pods Framework" or the script by @mikehouse will not fix the validation error.

Contributor

siuying commented Nov 12, 2015

I think I have another use case for this issue. My app have three targets:

  • App Target
  • AppExtension Target
  • AppShared Dynamic Framework

The dynamic framework supposedly is shared by both extension and app. When submitted, ITC complains:

  • The bundle at 'App.app/Frameworks/AppShared.framework' contains disallowed file 'Frameworks'
  • The bundle at 'App.app/Plugins/AppExtension.appex' contains disallowed file 'Frameworks'

Remove "Embed Pods Framework" or the script by @mikehouse will not fix the validation error.

@mikehouse

This comment has been minimized.

Show comment
Hide comment
@mikehouse

mikehouse Nov 12, 2015

@siuying Did you add the script to 'AppExtension Target'? If so, check pls that it goes after cocoapods' scripts.

mikehouse commented Nov 12, 2015

@siuying Did you add the script to 'AppExtension Target'? If so, check pls that it goes after cocoapods' scripts.

@siuying

This comment has been minimized.

Show comment
Hide comment
@siuying

siuying Nov 12, 2015

Contributor

@mikehouse Yep. I found the cause is the extension target has "Embedded Content Contains Swift Code" set to YES, which it should be NO.

Contributor

siuying commented Nov 12, 2015

@mikehouse Yep. I found the cause is the extension target has "Embedded Content Contains Swift Code" set to YES, which it should be NO.

@bassrock

This comment has been minimized.

Show comment
Hide comment
@bassrock

bassrock Nov 12, 2015

@siuying yea by setting "Embedded Content Contains Swift Code" to Yes I have found that it creates the Framework folder in the target with the swift lib files.

bassrock commented Nov 12, 2015

@siuying yea by setting "Embedded Content Contains Swift Code" to Yes I have found that it creates the Framework folder in the target with the swift lib files.

@pilot34

This comment has been minimized.

Show comment
Hide comment
@pilot34

pilot34 Nov 21, 2015

I made script to remove 'Embed Pods Frameworks' phase from Extension target, but don't know how to integrate it to Podfile http://stackoverflow.com/questions/33846361/hook-in-podfile-to-edit-my-project-file

pilot34 commented Nov 21, 2015

I made script to remove 'Embed Pods Frameworks' phase from Extension target, but don't know how to integrate it to Podfile http://stackoverflow.com/questions/33846361/hook-in-podfile-to-edit-my-project-file

@segiddins

This comment has been minimized.

Show comment
Hide comment
@segiddins

segiddins Dec 4, 2015

Member

As I've said, that branch isn't meant to work yet, hence why there's no pull request for it.

Member

segiddins commented Dec 4, 2015

As I've said, that branch isn't meant to work yet, hence why there's no pull request for it.

@mtucker

This comment has been minimized.

Show comment
Hide comment
@mtucker

mtucker Dec 10, 2015

Am I correct in saying that, as a result of this bug, it is currently impossible to use Swift libraries in App Extensions via CocoaPods?

mtucker commented Dec 10, 2015

Am I correct in saying that, as a result of this bug, it is currently impossible to use Swift libraries in App Extensions via CocoaPods?

@siuying

This comment has been minimized.

Show comment
Hide comment
@siuying

siuying Dec 11, 2015

Contributor

@mtucker no. If you seeing this error, just follow the workaround above:

  • remove embed pod framework
  • add a user script to clean framework
  • make sure framework and app extension are not build with "embedded content contains swift code", and
  • do a clean rebuild

I have apps with extension shipped without issue.

Contributor

siuying commented Dec 11, 2015

@mtucker no. If you seeing this error, just follow the workaround above:

  • remove embed pod framework
  • add a user script to clean framework
  • make sure framework and app extension are not build with "embedded content contains swift code", and
  • do a clean rebuild

I have apps with extension shipped without issue.

@mtucker

This comment has been minimized.

Show comment
Hide comment
@mtucker

mtucker Dec 11, 2015

@siuying I seems like that workaround assumes that I am not using Swift frameworks in my extension. In my case, I would like to be able to do that.

For example:

platform :ios, '8.0'

use_frameworks!

target :MyShareExtension do
  pod 'Parse'
  pod 'Kanna', '~> 1.0.0'
end

target :MyApp do
  pod 'Parse'
end

In this case, Kanna is a Swift library. After following the workaround, Kanna does not get bundled with ShareExtension and generates an error at runtime when I try to use the library:

dyld: Library not loaded: @rpath/Kanna.framework/Kanna

For this reason, it seems like using Swift libraries in app extensions is not possible. Is that accurate?

mtucker commented Dec 11, 2015

@siuying I seems like that workaround assumes that I am not using Swift frameworks in my extension. In my case, I would like to be able to do that.

For example:

platform :ios, '8.0'

use_frameworks!

target :MyShareExtension do
  pod 'Parse'
  pod 'Kanna', '~> 1.0.0'
end

target :MyApp do
  pod 'Parse'
end

In this case, Kanna is a Swift library. After following the workaround, Kanna does not get bundled with ShareExtension and generates an error at runtime when I try to use the library:

dyld: Library not loaded: @rpath/Kanna.framework/Kanna

For this reason, it seems like using Swift libraries in app extensions is not possible. Is that accurate?

@huyouare

This comment has been minimized.

Show comment
Hide comment
@huyouare

huyouare Aug 10, 2016

@benasher44 Thanks for the quick fix! I tried using your PR which worked, but only after removing the Build Setting manually from both targets. Otherwise I get the error [!] The 'EncryptText [Debug]' target overrides the 'ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES' build setting defined in... This can lead to problems with the CocoaPods installation

huyouare commented Aug 10, 2016

@benasher44 Thanks for the quick fix! I tried using your PR which worked, but only after removing the Build Setting manually from both targets. Otherwise I get the error [!] The 'EncryptText [Debug]' target overrides the 'ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES' build setting defined in... This can lead to problems with the CocoaPods installation

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Aug 11, 2016

Member

@huyouare okay great! That's expected, since my update adds a setting, which you are overriding. When you override a setting set by CocoaPods, it warns you that you might be undoing some of its magic. Thanks!

Member

benasher44 commented Aug 11, 2016

@huyouare okay great! That's expected, since my update adds a setting, which you are overriding. When you override a setting set by CocoaPods, it warns you that you might be undoing some of its magic. Thanks!

@jonasman

This comment has been minimized.

Show comment
Hide comment
@jonasman

jonasman Aug 13, 2016

@benasher44 is your PR merged into 1.0.1 or the new beta versions of CP?

jonasman commented Aug 13, 2016

@benasher44 is your PR merged into 1.0.1 or the new beta versions of CP?

@jonasman

This comment has been minimized.

Show comment
Hide comment
@jonasman

jonasman Aug 13, 2016

also the script works fine in extensions but doesnt clean the frameworks folder from my own shared framework.

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then
rm -fr Frameworks
fi

jonasman commented Aug 13, 2016

also the script works fine in extensions but doesnt clean the frameworks folder from my own shared framework.

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then
rm -fr Frameworks
fi
@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Aug 13, 2016

Member

@jonasman, if you're not using Xcode 8 yet, then the PR merged into 1.1.0.beta.1 should work. Otherwise, the PR for Xcode 8 is on master and not in a release yet

Member

benasher44 commented Aug 13, 2016

@jonasman, if you're not using Xcode 8 yet, then the PR merged into 1.1.0.beta.1 should work. Otherwise, the PR for Xcode 8 is on master and not in a release yet

@mlchild

This comment has been minimized.

Show comment
Hide comment
@mlchild

mlchild Aug 16, 2016

@huyouare Were you able to run the iMessage extension from Testflight on your phone successfully? I was able to upload it to the app store, but it just hangs after I install it on my iOS 10 beta phone.

mlchild commented Aug 16, 2016

@huyouare Were you able to run the iMessage extension from Testflight on your phone successfully? I was able to upload it to the app store, but it just hangs after I install it on my iOS 10 beta phone.

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

Hello, I have this problem what should i do? I added this to my build phases at the end:

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then
rm -fr Frameworks
fi

But no luck, I am using xcode 7.3.1

antonioreyna commented Aug 25, 2016

Hello, I have this problem what should i do? I added this to my build phases at the end:

cd "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/"
if [[ -d "Frameworks" ]]; then
rm -fr Frameworks
fi

But no luck, I am using xcode 7.3.1

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Aug 25, 2016

Member

@antonioreyna you can remove that build phase if you upgrade to 1.1.0.beta.1

Member

benasher44 commented Aug 25, 2016

@antonioreyna you can remove that build phase if you upgrade to 1.1.0.beta.1

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

I have that version installed @benasher44 should i add something on my podfile?

antonioreyna commented Aug 25, 2016

I have that version installed @benasher44 should i add something on my podfile?

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

this is my podfile, am i doing somehting wrong @benasher44

source 'https://github.com/CocoaPods/Specs.git'

# Uncomment this line to define a global platform for your project
platform :ios, '9.0'
# Uncomment this line if you're using Swift
use_frameworks!


def shared_pods

pod 'Alamofire', '~> 3.4'
pod 'AlamofireObjectMapper', '~> 3.0'

end

target 'MyApp' do

shared_pods
pod 'BWWalkthrough', '~> 1.1'
pod 'SideMenuController', '~> 0.1'
pod 'WWCalendarTimeSelector', '~> 1.2'
#pod 'Alamofire', '~> 3.4'
pod 'AlamofireNetworkActivityIndicator', '~> 1.0'
#pod 'AlamofireObjectMapper', '~> 3.0'
pod 'RoundedViews', '~> 1.0'
pod 'SwiftLocation', '~> 0.9'
pod 'PopupController', '~> 0.1'
pod 'PMAlertController', '~> 1.0'
pod 'SwiftDate', '~> 3.0'
pod 'SwiftString', '~> 0.5'
pod 'TextFieldEffects', '~> 1.2'
pod 'JWTDecode', '~> 1.0'
pod 'FluentConstraints', '~> 1.0'
pod 'QRCode', '~> 0.5'
pod 'SwiftyTimer', '~> 1.4'
pod 'PayPal-iOS-SDK'
pod 'SwiftValidator', '~> 3.0'
pod 'KeychainSwift', git: "https://github.com/marketplacer/keychain-swift.git", branch: "swift_2_3"
pod 'RSBarcodes_Swift', '~> 0.1'
pod 'Google/Analytics'
pod 'GoogleIDFASupport'

end

target 'shareContent' do

shared_pods

end

target 'watch' do

platform :watchos, '2.0'

end

target 'watch Extension' do

platform :watchos, '2.0'

shared_pods

end

antonioreyna commented Aug 25, 2016

this is my podfile, am i doing somehting wrong @benasher44

source 'https://github.com/CocoaPods/Specs.git'

# Uncomment this line to define a global platform for your project
platform :ios, '9.0'
# Uncomment this line if you're using Swift
use_frameworks!


def shared_pods

pod 'Alamofire', '~> 3.4'
pod 'AlamofireObjectMapper', '~> 3.0'

end

target 'MyApp' do

shared_pods
pod 'BWWalkthrough', '~> 1.1'
pod 'SideMenuController', '~> 0.1'
pod 'WWCalendarTimeSelector', '~> 1.2'
#pod 'Alamofire', '~> 3.4'
pod 'AlamofireNetworkActivityIndicator', '~> 1.0'
#pod 'AlamofireObjectMapper', '~> 3.0'
pod 'RoundedViews', '~> 1.0'
pod 'SwiftLocation', '~> 0.9'
pod 'PopupController', '~> 0.1'
pod 'PMAlertController', '~> 1.0'
pod 'SwiftDate', '~> 3.0'
pod 'SwiftString', '~> 0.5'
pod 'TextFieldEffects', '~> 1.2'
pod 'JWTDecode', '~> 1.0'
pod 'FluentConstraints', '~> 1.0'
pod 'QRCode', '~> 0.5'
pod 'SwiftyTimer', '~> 1.4'
pod 'PayPal-iOS-SDK'
pod 'SwiftValidator', '~> 3.0'
pod 'KeychainSwift', git: "https://github.com/marketplacer/keychain-swift.git", branch: "swift_2_3"
pod 'RSBarcodes_Swift', '~> 0.1'
pod 'Google/Analytics'
pod 'GoogleIDFASupport'

end

target 'shareContent' do

shared_pods

end

target 'watch' do

platform :watchos, '2.0'

end

target 'watch Extension' do

platform :watchos, '2.0'

shared_pods

end
@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Aug 25, 2016

Member

It looks like you're installing frameworks in both the watch app and watch extension targets. You only need to install them in the watch extension target. Try removing the "watch" target from your Podfile.

Member

benasher44 commented Aug 25, 2016

It looks like you're installing frameworks in both the watch app and watch extension targets. You only need to install them in the watch extension target. Try removing the "watch" target from your Podfile.

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

OK let me try, I am doing a test right now, i read somewhere that i have to remove the embed swift code on the share extension and apparently its uploading now. If that works, why its on YES that option if its not needed? is that some xcode stuff or is part of the cocoapods configurations when it created the workspace?

antonioreyna commented Aug 25, 2016

OK let me try, I am doing a test right now, i read somewhere that i have to remove the embed swift code on the share extension and apparently its uploading now. If that works, why its on YES that option if its not needed? is that some xcode stuff or is part of the cocoapods configurations when it created the workspace?

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

@benasher44 now that i removed the target 'watch' i keep getting this on archive:

diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

and cant continue

antonioreyna commented Aug 25, 2016

@benasher44 now that i removed the target 'watch' i keep getting this on archive:

diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

and cant continue

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

Looks like when i removed the target for the watch app the projects keept a phase for that target, to run the script Pods-watch/Pods-watch-resources.sh but i cant find that phase?

My apple watch app has no Build Phases tab

antonioreyna commented Aug 25, 2016

Looks like when i removed the target for the watch app the projects keept a phase for that target, to run the script Pods-watch/Pods-watch-resources.sh but i cant find that phase?

My apple watch app has no Build Phases tab

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Aug 25, 2016

Member

@antonioreyna maybe try pod deintegrateing and then pod installing again. Without a sample project, it's hard to debug. If it's not much trouble, you might want to re-create your watch target.

Member

benasher44 commented Aug 25, 2016

@antonioreyna maybe try pod deintegrateing and then pod installing again. Without a sample project, it's hard to debug. If it's not much trouble, you might want to re-create your watch target.

@antonioreyna

This comment has been minimized.

Show comment
Hide comment
@antonioreyna

antonioreyna Aug 25, 2016

yeah maybe i will try to remove the target and then create it again, its empty by now :D, i already used the deintegrate and same result i ended up keeping the target on the pods but i will remove it to see the result @benasher44

antonioreyna commented Aug 25, 2016

yeah maybe i will try to remove the target and then create it again, its empty by now :D, i already used the deintegrate and same result i ended up keeping the target on the pods but i will remove it to see the result @benasher44

@Urkman

This comment has been minimized.

Show comment
Hide comment
@Urkman

Urkman Sep 1, 2016

I'm currently on Xcode 8 Beta 6 and Cocoapos 1.1.0-beta1 and now I get this error :(
Nothing inside this thread helps :(

Any more ideas on this?

Urkman commented Sep 1, 2016

I'm currently on Xcode 8 Beta 6 and Cocoapos 1.1.0-beta1 and now I get this error :(
Nothing inside this thread helps :(

Any more ideas on this?

@marco318

This comment has been minimized.

Show comment
Hide comment
@marco318

marco318 Sep 1, 2016

@Urkman I've been working on this error on last week, and it's so difficult to get out from this one.
Finally I made it after tons of trial, but it's not clear what was the key.
From my git log, I did these things below,

  • update cocoapods to 1.1.0-beta1
  • pod deintegrate & pod install
  • Add run script by @benasher44 (remove 'Frameworks' from path)
  • set 'Embedded Content Contains Swift' to No at Buid Settings of extension target, ($inherited) at others (I'm using Swift only, so I'm not sure with necessity of this one)
  • remove run script named '[CP] Embed Pods Frameworks' at build phase
  • Clear and re-Build

I'm not sure these will work, because I didn't do more test on last commit(with bug).
After having confidence, I will write about it again.

I agree with updating Cocoapods is not enough for fixing this error.
Is there anyone who fix this problem with only updating Cocoapods?

marco318 commented Sep 1, 2016

@Urkman I've been working on this error on last week, and it's so difficult to get out from this one.
Finally I made it after tons of trial, but it's not clear what was the key.
From my git log, I did these things below,

  • update cocoapods to 1.1.0-beta1
  • pod deintegrate & pod install
  • Add run script by @benasher44 (remove 'Frameworks' from path)
  • set 'Embedded Content Contains Swift' to No at Buid Settings of extension target, ($inherited) at others (I'm using Swift only, so I'm not sure with necessity of this one)
  • remove run script named '[CP] Embed Pods Frameworks' at build phase
  • Clear and re-Build

I'm not sure these will work, because I didn't do more test on last commit(with bug).
After having confidence, I will write about it again.

I agree with updating Cocoapods is not enough for fixing this error.
Is there anyone who fix this problem with only updating Cocoapods?

@Urkman

This comment has been minimized.

Show comment
Hide comment
@Urkman

Urkman Sep 1, 2016

@marco318: Thanks for that, but it does not help at all :(

Urkman commented Sep 1, 2016

@marco318: Thanks for that, but it does not help at all :(

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Sep 1, 2016

Member

Upgrading CocoaPods worked for me. There are 2 root causes of this issue. Either you have an embed frameworks build phase in one of your extension targets, which will create the disallowed Frameworks folder when the script runs (not sure why App Store calls it a file), or your target is overriding a build setting that is causing Xcode to embed the Swift libraries/frameworks in your extension (similarly not allowed). You could also have both of these. CocoaPods in 1.1.0.beta.1 tries to fix both of these things, but there are ways that the project file can get into weird states and have duplicates of these build phases or other incorrect build settings, which makes it harder for CocoaPods to help you shake this issue in your project. If you provide a sample project, I'm happy to add more to CocoaPods to either have better warnings, errors, or otherwise attempt to fix this in ways that me and others have yet to report or provide reproducible examples for.

Member

benasher44 commented Sep 1, 2016

Upgrading CocoaPods worked for me. There are 2 root causes of this issue. Either you have an embed frameworks build phase in one of your extension targets, which will create the disallowed Frameworks folder when the script runs (not sure why App Store calls it a file), or your target is overriding a build setting that is causing Xcode to embed the Swift libraries/frameworks in your extension (similarly not allowed). You could also have both of these. CocoaPods in 1.1.0.beta.1 tries to fix both of these things, but there are ways that the project file can get into weird states and have duplicates of these build phases or other incorrect build settings, which makes it harder for CocoaPods to help you shake this issue in your project. If you provide a sample project, I'm happy to add more to CocoaPods to either have better warnings, errors, or otherwise attempt to fix this in ways that me and others have yet to report or provide reproducible examples for.

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Sep 1, 2016

Member

You can also tell if this issue is going to happen to you before you submit to the App Store by inspecting the BUILT_PRODUCTS_DIR in your projects derived data folder after doing a build and checking your extension bundles for these framework folders. If you find them after a build, then your App will likely get rejected, and you should continue debugging.

Member

benasher44 commented Sep 1, 2016

You can also tell if this issue is going to happen to you before you submit to the App Store by inspecting the BUILT_PRODUCTS_DIR in your projects derived data folder after doing a build and checking your extension bundles for these framework folders. If you find them after a build, then your App will likely get rejected, and you should continue debugging.

@Urkman

This comment has been minimized.

Show comment
Hide comment
@Urkman

Urkman Sep 2, 2016

Strange thing...

Today I got a message from Xcode to "Update my project settings.".
After this Upload to App Store worked :)

Urkman commented Sep 2, 2016

Strange thing...

Today I got a message from Xcode to "Update my project settings.".
After this Upload to App Store worked :)

@llater

This comment has been minimized.

Show comment
Hide comment
@llater

llater Sep 20, 2016

I am having continued issues. I receive warnings when I install and update my pods that the targets override the build settings defined in 'Pods/Target Support Files/Pods-xxx.release.xcconfig. Those .xcconfig files appear in the Pods folder of my app project (the project in the same .xcworkspace as the Pods project). After I set the build settings and build phases as prescribed with CocoaPods 1.1.0.beta.1, my Pods_xxx.framework still appears in red under the xxx(project)/Frameworks folder.

I believe the problem to be in the Pods-xxx.release.xcconfig file that appears in both projects; it specifies:

PODS_BUILD_DIR = $BUILD_DIR
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_ROOT = ${SRCROOT}/PODS

Does ${SRCROOT} refer to the Pods xcproject in the xcworkspace, even when the .xcconfig file is in my app's xcproject? Even though they share the xcworkspace, I fear that the build configuration (ie. setting the build settings and phases) refers to the wrong project (both have a folder named Pods), and thus I can't get my frameworks and libraries into my app's xcproject.

Any suggestions would be appreciated; thanks!

llater commented Sep 20, 2016

I am having continued issues. I receive warnings when I install and update my pods that the targets override the build settings defined in 'Pods/Target Support Files/Pods-xxx.release.xcconfig. Those .xcconfig files appear in the Pods folder of my app project (the project in the same .xcworkspace as the Pods project). After I set the build settings and build phases as prescribed with CocoaPods 1.1.0.beta.1, my Pods_xxx.framework still appears in red under the xxx(project)/Frameworks folder.

I believe the problem to be in the Pods-xxx.release.xcconfig file that appears in both projects; it specifies:

PODS_BUILD_DIR = $BUILD_DIR
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
PODS_ROOT = ${SRCROOT}/PODS

Does ${SRCROOT} refer to the Pods xcproject in the xcworkspace, even when the .xcconfig file is in my app's xcproject? Even though they share the xcworkspace, I fear that the build configuration (ie. setting the build settings and phases) refers to the wrong project (both have a folder named Pods), and thus I can't get my frameworks and libraries into my app's xcproject.

Any suggestions would be appreciated; thanks!

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Sep 20, 2016

Member

@lelandlater which build settings is it complaining about specifically?

Member

benasher44 commented Sep 20, 2016

@lelandlater which build settings is it complaining about specifically?

@llater

This comment has been minimized.

Show comment
Hide comment
@llater

llater Sep 20, 2016

@benasher44 The app target overrides 'EMBEDDED_CONTENT_CONTAINS_SWIFT' the build setting, while the appTests target overrides 'ALWAYS_EMBED_SWIFT_STANDARD_LIBRARY.' I have attempted to resolve these by adding $(inherited) in all relevant build settings, as well as removing the [CP] Embed Pods Frameworks in the Build Phases.

Xcode shows me a buildtime warning: "Validate Project Settings - Update to recommended settings (Pods.xcodeproj)." The changes it recommends are on target "Pods-xxx," and wants to "update embed Swift standard libraries setting" by setting "Always Embed Swift Standard Libraries" to "YES".

llater commented Sep 20, 2016

@benasher44 The app target overrides 'EMBEDDED_CONTENT_CONTAINS_SWIFT' the build setting, while the appTests target overrides 'ALWAYS_EMBED_SWIFT_STANDARD_LIBRARY.' I have attempted to resolve these by adding $(inherited) in all relevant build settings, as well as removing the [CP] Embed Pods Frameworks in the Build Phases.

Xcode shows me a buildtime warning: "Validate Project Settings - Update to recommended settings (Pods.xcodeproj)." The changes it recommends are on target "Pods-xxx," and wants to "update embed Swift standard libraries setting" by setting "Always Embed Swift Standard Libraries" to "YES".

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Sep 20, 2016

Member

If you want to stop seeing the pod install warnings, you should remove instances where you override those settings. If you upgrade to the latest 1.1.0 release, it uses flags updated for Xcode 8

Member

benasher44 commented Sep 20, 2016

If you want to stop seeing the pod install warnings, you should remove instances where you override those settings. If you upgrade to the latest 1.1.0 release, it uses flags updated for Xcode 8

@jshier

This comment has been minimized.

Show comment
Hide comment
@jshier

jshier Sep 20, 2016

@benasher44 Those are recommended settings from Xcode, so it seems like CocoaPods needs to be the ones to make changes here. Otherwise users will constantly see the "Upgrade to recommended settings" in Xcode.

jshier commented Sep 20, 2016

@benasher44 Those are recommended settings from Xcode, so it seems like CocoaPods needs to be the ones to make changes here. Otherwise users will constantly see the "Upgrade to recommended settings" in Xcode.

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Sep 20, 2016

Member

If you update to the latest CocoaPods 1.1.0 release, that issue is fixed

Member

benasher44 commented Sep 20, 2016

If you update to the latest CocoaPods 1.1.0 release, that issue is fixed

@jshier

This comment has been minimized.

Show comment
Hide comment
@jshier

jshier Sep 20, 2016

rc.2 still produces the warning about the setting if your project has it set and Xcode still complains if you don't. Seems like CocoaPods needs to defer to Xcode in this instance.

jshier commented Sep 20, 2016

rc.2 still produces the warning about the setting if your project has it set and Xcode still complains if you don't. Seems like CocoaPods needs to defer to Xcode in this instance.

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Sep 20, 2016

Member

CocoaPods produces the warning because it sets those flags because they're required due to your pods using Swift. If you override them, it warns you to let you know that build settings that CocoaPods believes to be required are being overridden.

For the Xcode warnings, this cycle sounds like something we should patch for better Xcode 8 support. I'd appreciate if you could open a new issue with more information and a sample project that reproduces the issue. Thanks!

Member

benasher44 commented Sep 20, 2016

CocoaPods produces the warning because it sets those flags because they're required due to your pods using Swift. If you override them, it warns you to let you know that build settings that CocoaPods believes to be required are being overridden.

For the Xcode warnings, this cycle sounds like something we should patch for better Xcode 8 support. I'd appreciate if you could open a new issue with more information and a sample project that reproduces the issue. Thanks!

@llater

This comment has been minimized.

Show comment
Hide comment
@llater

llater Sep 20, 2016

I have the latest version of CocoaPods installed, and have reset the build settings in which I overrode those set by the Pods-xxx.release.xcconfig file. Still, I receive the warnings when I pod install. Nevertheless, in the Frameworks folder of my xxx.xcodeproj (in the same .xcworkspace as Pods.xcodeproj), the Pods_xxx.framework is still red and cannot be used.

llater commented Sep 20, 2016

I have the latest version of CocoaPods installed, and have reset the build settings in which I overrode those set by the Pods-xxx.release.xcconfig file. Still, I receive the warnings when I pod install. Nevertheless, in the Frameworks folder of my xxx.xcodeproj (in the same .xcworkspace as Pods.xcodeproj), the Pods_xxx.framework is still red and cannot be used.

@pkrmf

This comment has been minimized.

Show comment
Hide comment
@pkrmf

pkrmf Jan 26, 2017

@benasher44 Do you know where I can find the documentation on how I should build my Podfile when I need to include iOS extension specific Pods and Parent app specific pods(Some of the pods are shared, some of them are app or extension specific)?. I am using the latest version of cocoapods.

I keep getting the error when building my parent app. When I build the iOS Extensions I get a similar issue, but instead of the parent app, it mentions the .appex:

Class SomeClass is implemented in both /Users/User/Library/Developer/CoreSimulator/Devices/3DCF00F1-F42C-4C55-B74B-ED1EDF2CF1D2/data/Containers/Bundle/Application/6135CDCF-8592-48C6-96CA-B529F512427E/SomeApp.app/Frameworks/SomeFramework.framework/SomeFramework (0x107fb5878) and /Users/Users/Library/Developer/CoreSimulator/Devices/3DCF00F1-F42C-4C55-B74B-ED1EDF2CF1D2/data/Containers/Bundle/Application/6135CDCF-8592-48C6-96CA-B529F512427E/SomeApp.app/SomeApp (0x1053d8598). One of the two will be used. Which one is undefined.

pkrmf commented Jan 26, 2017

@benasher44 Do you know where I can find the documentation on how I should build my Podfile when I need to include iOS extension specific Pods and Parent app specific pods(Some of the pods are shared, some of them are app or extension specific)?. I am using the latest version of cocoapods.

I keep getting the error when building my parent app. When I build the iOS Extensions I get a similar issue, but instead of the parent app, it mentions the .appex:

Class SomeClass is implemented in both /Users/User/Library/Developer/CoreSimulator/Devices/3DCF00F1-F42C-4C55-B74B-ED1EDF2CF1D2/data/Containers/Bundle/Application/6135CDCF-8592-48C6-96CA-B529F512427E/SomeApp.app/Frameworks/SomeFramework.framework/SomeFramework (0x107fb5878) and /Users/Users/Library/Developer/CoreSimulator/Devices/3DCF00F1-F42C-4C55-B74B-ED1EDF2CF1D2/data/Containers/Bundle/Application/6135CDCF-8592-48C6-96CA-B529F512427E/SomeApp.app/SomeApp (0x1053d8598). One of the two will be used. Which one is undefined.

@benasher44

This comment has been minimized.

Show comment
Hide comment
@benasher44

benasher44 Jan 26, 2017

Member

@pkrmf that issue is known and has been reported here: #6065. In most cases, that log message can be ignored.

Member

benasher44 commented Jan 26, 2017

@pkrmf that issue is known and has been reported here: #6065. In most cases, that log message can be ignored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment