typelift / Swiftx

Functional data types and functions for any project
BSD 3-Clause "New" or "Revised" License
219 stars 28 forks source link

Should Operadics be in `Cartfile.private`? #21

Closed griotspeak closed 9 years ago

griotspeak commented 9 years ago

Operadics seems necessary to build Swiftx but is not pulled down by carthage update when I depend on Swiftx from a mac project. If I cd into /Carthage/Checkouts/Swiftx and then run carthage bootstrap, I can then get the mac app to run carthage update successfully but codesign fails.

Failure aside, it looks as though Cartfile.private should be used for dependencies that aren't necessarily useful in release but that doesn't look like a fitting description of Operadics

CodaFi commented 9 years ago

Methinks what happened is I didn't --use-submodules for Operadics the first time around. That should resolve your problem and stuff for anyone else who doesn't want to use Carthage.

CodaFi commented 9 years ago

I've resolved this in #20. Let me know if that fixes anything.

griotspeak commented 9 years ago

That changed some things. Now I get

A shell task failed with exit code 65:
** BUILD FAILED **
The following build commands failed:
CompileSwift normal x86_64     ~/Development/ChordalText/Carthage/Checkouts/Swiftx/SwiftxTests/SectionSpec.swift
CompileSwift normal x86_64     ~/Development/ChordalText/Carthage/Checkouts/Swiftx/SwiftxTests/EitherSpec.swift
CompileSwiftSources normal x86_64 com.apple.xcode.tools.swift.compiler
(3 failures)`

in the log: ~/Development/ChordalText/Carthage/Checkouts/Swiftx/SwiftxTests/SectionSpec.swift:11:8: error: no such module 'SwiftCheck' import SwiftCheck

CodaFi commented 9 years ago

Well, shit. This is why I need build tools backing my commits :disappointed:. Testing bundle didn't have SwiftCheck copied along with everything else. That part is fixed by #23, or at least --no-skip-current doesn't bork.

CodaFi commented 9 years ago

So this doesn't happen again, can you checkout #23 just to make sure I have everything in place?

griotspeak commented 9 years ago

I think that you missed adding the SwiftCheck.xcodeproj to Swiftx.xcodeproj

CodaFi commented 9 years ago

It's under Supporting Files.

CodaFi commented 9 years ago

Wipe out your Carthage directory. It won't checkout the submodules otherwise.

griotspeak commented 9 years ago

My apologies. It checked it out just fine before as well. Xcode simply expects it in the wrong place. Expected at ~/Development/ChordalText/Carthage/Checkouts/SwiftCheck/SwiftCheck.xcodeproj when it is actually at ~/Development/ChordalText/Carthage/Checkouts/Swiftx/Carthage/Checkouts/SwiftCheck

screen shot 2015-07-19 at 9 05 46 am
griotspeak commented 9 years ago

Is this a carthage setup issue or some other thing? Seems like it is set up with a relative path from the top instead of from swiftx.

EDIT: Yes. The path should be based on the PROJECT_DIR, I think.

CodaFi commented 9 years ago

So the lesson here is: never trust Xcode to do the right thing the first time around. I've committed a fix (hopefully) in that branch.

griotspeak commented 9 years ago

It builds :+1: Thanks for the help!

CodaFi commented 9 years ago

Then it is merged. Fuck all.