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
Cartfile.lock emitted with incorrect dependency ordering #190
Comments
I sincerely appreciate the issues you're filing, but could you please also include:
We want to help as much as we can, but our time is limited, so we'd like to make the most effective use of it as possible. Thank you! 🙇 |
Absolutely. The build errors are contained in this log file. You can use this project as an example, which uses this project as a dependency. As mentioned above, I followed the instructions from the "Adding frameworks to unit tests or a framework" section of the
to my This is all reflected in my example project.. Let me know if you need anything else. Thanks! |
Sorry, my global gitignore skipped the .lock file in |
For what it's worth, I ran But I don't think that's the desired effect. |
I think I found the issue here. It looks like the I temporarily worked around the issue by manually reordering the top-level
Then I ran There's definitely a Carthage bug here. I'm very sorry about the trouble, but thank you for reporting it and creating a reproducible case! ❤️ |
That worked wonderfully on my example project, but I'm still running into similar issues in the application, I'm still getting unrecognized symbols. All of the dependencies are being built in the correct order, but they're not linking.
|
If we have bad luck (as in #190), all our dependent nodes might get passed in on the left-hand side, and would therefore not consider their dependencies under the old algorithm.
Sorry, this got auto-closed because the original bug was fixed. @justinmakaila Do you have codesigning certificates (and keys) for both iOS Development and iOS Distribution? That bit me while I was testing your example project. |
Yes. Every project has the "Code Signing Identity" set to "iOS Developer" and "iOS Distribution" Edit: |
The relevant errors seem to be:
Off-hand, I don't know what the root cause is, and I'm afraid I don't have time to dig into it at the moment, but hopefully this narrowing-down is helpful. /cc @Carthage/carthage in case anyone else can help further |
I think I found a potential source for the issue... I created more objects for the I ran another EDIT: |
I just pulled justinmakaila/EmbeddedFrameworksContainer@e4813a9, and ran
I then opened the project and tried to build, which failed because
This is because |
So I scrapped every framework and artifact that was a result of Carthage (in my Thanks for sticking with the issue, I appreciate it. |
This is somewhat similar to #147. I have framework that depends on another framework which uses
Carthage
to manage it's dependencies, i.e:It successfully fetches and checks out all of the dependencies (barring the
git-submodules
), but then attempts to build thePresentAPIClient
beforeSwiftyJSON
andSwell
.Output:
My log file highlights issues with messages reading:
use of undeclared type JSON
<- The JSON type from SwiftyJSONand
'Logger' is unavailable: cannot find Swift declaration for this class
<- The logger from SwellI've added
Swell
,Alamofire
, andSwiftyJSON
to the "Link With Binary Libraries" section of "Build Phases" (to myPresentAPIClient
project), and I've also added a "Copy Files" phase with the frameworks.I've noticed that
ReactiveCocoa
is used within this project, so I tried to clone it (Carthage
) and runcarthage update
only to find that I get a very similar situation withReactiveTask
failing to build.The text was updated successfully, but these errors were encountered: