Skip to content
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

Binary doesn't support pods who integrate in 2 or more platforms simultaneously #64

Closed
pepejeria opened this issue Apr 17, 2019 · 5 comments
Labels
bug Something isn't working

Comments

@pepejeria
Copy link

pepejeria commented Apr 17, 2019

CocoaPods : 1.6.1
Xcode : 10.1 (10B61)
cocoapods-binary      : 0.4.3

Podfile:

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

plugin 'cocoapods-binary'
platform :ios, '11.2'
use_frameworks!
inhibit_all_warnings!

target 'AnimalHouse' do
  # RxSwift
  pod 'RxSwift'
  pod 'RxCocoa'
  pod 'RxDataSources'

  # Firebase
  pod 'Firebase/Core', :binary => true
  pod 'Firebase/Firestore', :binary => true
  pod 'Firebase/Auth', :binary => true
  pod 'CodableFirebase'
end

target 'AnimalHouseFirestoreContractTests' do
  pod 'RxSwift'
  pod 'RxCocoa'
  pod 'RxBlocking'

  pod 'Firebase/Core'
  pod 'Firebase/Firestore'
  pod 'CodableFirebase'
end

target 'AnimalHouseHttpContractTests' do
  pod 'RxSwift'
  pod 'RxCocoa'
  
  pod 'RxBlocking'
end

target 'RoadTripTests' do
  pod 'RxSwift'
  pod 'RxCocoa'
  pod 'RxDataSources'
  
  pod 'Firebase/Core'
  pod 'Firebase/Auth'
  
  pod 'RxTest'
  pod 'RxBlocking'
end


target 'AnimalHouseTestsHostApplication' do
end

target 'AnimalHouseFirestoreContractTestsHostApplication' do
end

The following app has two test targets running on separate host apps called AnimalHouseTestsHostApplication and AnimalHouseFirestoreContractTestsHostApplication . I get the following error when running pod install:

[!] Binary doesn't support pods who integrate in 2 or more platforms simultaneously: ["Firebase"]

@leavez
Copy link
Owner

leavez commented Apr 18, 2019

It's a limitation for now. Works as expect.

Workaround: turn off binary for Firebase, for both platforms.

I do have plan to improve it in future version, but no guarantee. At least it won't be on next major version.

@leavez leavez closed this as completed Apr 18, 2019
@leavez leavez added the invalid This doesn't seem right label Apr 18, 2019
@pepejeria
Copy link
Author

Hi, thank you for getting back to me. What do you mean with “for both platforms”? Only iOS has been defined in the Podfile. Thanks

@leavez leavez reopened this Apr 22, 2019
@leavez
Copy link
Owner

leavez commented Apr 23, 2019

Sorry for my negligent. The correct answer:

The plugin didn’t give enough log info. The limitation is that one pod should have only one target in the workspace. If a pod exists in 2 different platform targets, it will have 2 targets in the Pod project. Fail. If a pod have different subspecs in different targets, 2 targets containing different content will be generated in the Pod project. Fail, too.

@leavez
Copy link
Owner

leavez commented Apr 23, 2019

@pepejeria You encountered the second case. If you still want to use binary for Firebase, set the same subspecs of Firebase for main and test targets.

@leavez leavez added bug Something isn't working and removed invalid This doesn't seem right labels Apr 23, 2019
@leavez
Copy link
Owner

leavez commented Apr 27, 2019

Added mote detail. Close the issue temporarily. Wish to solve it completely in the following major version.

@leavez leavez closed this as completed Apr 27, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants