babylonhealth/Bento

Dependency cycle

eimantas opened this issue · 4 comments

Trying to install Bento 0.4 using carthage:

% carthage update bento --platform ios 
*** Cloning Bento
*** Fetching ReactiveCocoa
*** Fetching TinyConstraints
*** Cloning FlexibleDiff
*** Fetching ReactiveSwift
*** Cloning Result
*** Cloning xcconfigs
*** Cloning Box
*** xcodebuild output can be found in /var/folders/w3/d5j4zf_13xnf7ppx7qlps8wh0000gn/T/carthage-xcodebuild.GupBlD.log
The dependency graph contained a cycle:
TinyConstraints: 
ReactiveCocoa: ReactiveSwift
% swift --version
Apple Swift version 5.0.1 (swiftlang-1001.0.82.4 clang-1001.0.46.5)
Target: x86_64-apple-darwin18.5.0
% carthage version
0.33.0
% 

Cartfile looks like this:

github "ReactiveCocoa/ReactiveCocoa" ~> 10.0.0
github "roberthein/TinyConstraints" ~> 4.0.0
github "babylonpartners/Bento" ~> 0.4

Hey @eimantas. We're on it. Meanwhile, can you check if this branch adam/fix-carthage-build is building fine on your machine? :)

Nope, same error:

% carthage update Bento --platform ios --cache-builds
*** Fetching TinyConstraints
*** Fetching Bento
*** Fetching ReactiveCocoa
*** Fetching ReactiveSwift
*** Fetching xcconfigs
*** Checking out FlexibleDiff at "0.0.8"
*** Checking out Bento at "bae0eaf88fe53d0062e7bc518eb5b6719204d50d"
*** xcodebuild output can be found in /var/folders/w3/d5j4zf_13xnf7ppx7qlps8wh0000gn/T/carthage-xcodebuild.0fB3Hy.log
The dependency graph contained a cycle:
TinyConstraints: 
ReactiveCocoa: ReactiveSwift
FlexibleDiff: xcconfigs
Bento: FlexibleDiff
xcconfigs: 
% 

Cartfile:

github "ReactiveCocoa/ReactiveCocoa" ~> 10.0.0
github "roberthein/TinyConstraints" ~> 4.0.0
github "babylonpartners/Bento" "adam/fix-carthage-build"

I am able to build locally:

test  carthage update --platform iOS
*** Fetching TinyConstraints
*** Fetching Bento
*** Fetching ReactiveCocoa
*** Fetching ReactiveSwift
*** Fetching xcconfigs
*** Checking out TinyConstraints at "4.0.0"
*** Checking out FlexibleDiff at "0.0.8"
*** Checking out xcconfigs at "1.0"
*** Checking out Bento at "2fd2287e8650444ede32dca003d59d6629c26d8a"
*** Checking out ReactiveSwift at "6.0.0"
*** Checking out ReactiveCocoa at "10.0.0"
*** xcodebuild output can be found in /var/folders/qd/qls_wfdd0ws66gthby11gx38xpyg5b/T/carthage-xcodebuild.KmJDtz.log
*** Building scheme "ReactiveSwift-iOS" in ReactiveSwift.xcworkspace
*** Building scheme "ReactiveCocoa-iOS" in ReactiveCocoa.xcworkspace
*** Building scheme "ReactiveMapKit-iOS" in ReactiveCocoa.xcworkspace
*** Building scheme "TinyConstraints" in TinyConstraints.xcodeproj
*** Skipped building xcconfigs due to the error:
Dependency "xcconfigs" has no shared framework schemes for any of the platforms: iOS

If you believe this to be an error, please file an issue with the maintainers at https://github.com/jspahrsummers/xcconfigs/issues/new
*** Building scheme "FlexibleDiff-iOS" in FlexibleDiff.xcworkspace
*** Building scheme "Bento" in Bento.xcworkspace
*** Building scheme "BentoPlaygroundSupport" in Bento.xcworkspace

Cartfile:

github "ReactiveCocoa/ReactiveCocoa" ~> 10.0.0
github "roberthein/TinyConstraints" ~> 4.0.0
github "babylonpartners/Bento" "adam/fix-carthage-build"

Please try carthage update --platform iOS (remove Bento from command) so that all dependencies are properly pulled to their correct versions.

@mluisbrown - updating all of the dependency graph with @TheAdamBorek's fork seems to work.