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

Carthage Support Possible Again 🎉 #323

Open
Blackjacx opened this issue Apr 23, 2021 · 17 comments
Open

Carthage Support Possible Again 🎉 #323

Blackjacx opened this issue Apr 23, 2021 · 17 comments

Comments

@Blackjacx
Copy link

Blackjacx commented Apr 23, 2021

With Carthage 0.38.0 developers will be able to download XCFrameworks as prebuilt assets from Github. Then we can integrate Braintree via Carthage again. Could you please verify if this could could be an option to re-support Carthage?

This would be a big advantage since Braintree is huge and takes some time to re-download when we have to delete Xcode's DerivedData folder (Carthage dependencies can be cached much easier than SPM dependencies).

To give some context, this is what I do to archive my frameworks as XCFrameork which can be uploaded to GitHub:
https://github.com/Blackjacx/Scripts/blob/e33d7ea6e74560d362d80700761c5b8ed02c68bc/frameworks/Fastfile#L152-L160

@sestevens
Copy link
Contributor

Hi @Blackjacx, thanks for opening this issue! I can't make any guarantees about adding Carthage support back in, but let's keep this issue open to gauge interest from Drop-in users.

If anyone else would like to see Carthage added back in to Drop-in, please let us know by commenting or reacting to this issue.

@Blackjacx
Copy link
Author

Yep will do, thx :)

@gyulavoros
Copy link

We use Carthage!

@Blackjacx
Copy link
Author

@gyulavoros with downloading/building an XCFramework?

@tsahi-deri
Copy link

I need Carthage support as well

@EVgo-iOS
Copy link

We use Carthage!

@gyulavoros
Copy link

gyulavoros commented May 19, 2021

@Blackjacx We are in the middle of migrating to XCFrameworks. The ideal setup for us would be:

  • to be able to use Xcode 12.5
  • use Carthage without the gnarly workaround and use XCFrameworks
  • be able to download pre-built XCFrameworks, so we don't need to recompile (e.g., RxSwift has assets provided for certain builds)

There is still one major blocker, which seems to be a Carthage issue, that we cannot import XCFrameworks into test targets.

@Blackjacx
Copy link
Author

@gyulavoros oh man I feel your pain. This transition to SPM and XCFrameworks is one of the worst processes initiated/planned by Apple for a long time. I also have a ticket open at work about that since a long time. There are so many bits and pieces to consider. And yes the RX extensions of e.g. Moya are really time intense to re-compile...

@varunkapoor1942
Copy link

varunkapoor1942 commented May 28, 2021

I need Carthage support as well.

@scannillo
Copy link
Contributor

👋 Hello, in our braintree_ios repo, we started a GitHub Discussion thread for this topic. Please feel free to check it out / voice your concerns there as well.

@Blackjacx
Copy link
Author

We worked around the Carthage drop here now by moving from the framework Barintree-drop-in to its big (?) brother braintree_ios which supports Carthage. Maybe one of you (e.g. @scannillo) could explain the difference between the two briefly?

Maybe this step is a working solution for more than only us.

@scannillo
Copy link
Contributor

So, braintree-ios-drop-in (https://developer.paypal.com/braintree/docs/start/drop-in) offers pre-built UI that is the quickest way to get up and running with Braintree to accept payments in your app.

braintree_ios does not offer any checkout UI, however it does include all of the components necessary for you to construct your own UI and accept payments in your app. Let me know if that makes sense.

If you are not using braintree-ios-drop-in for the UI, then you should be using braintree_ios.

Also - I encourage you to voice your concern over dropping Carthage on our GH Discussions.

@engrsandeep
Copy link

We use Carthage!

@engrsandeep
Copy link

@sestevens is is possible to build by other method other than carthage? We had build previously using carthage.

@j3k0
Copy link

j3k0 commented Oct 27, 2022

It would be nice to at least have a "manual install" procedure, for when neither SPM nor CocoaPods is an option (like when installing the SDK on some hybrid platforms).

@scannillo
Copy link
Contributor

Thank you @j3k0 for the feedback! We encourage others as well to post their use-cases here.

@joemather
Copy link

It would be nice to at least have a "manual install" procedure, for when neither SPM nor CocoaPods is an option (like when installing the SDK on some hybrid platforms).

+1. My use case is Xamarin.

The braintree_ios project publishes downloadable framework/xcframework files for every release. Example: https://github.com/braintree/braintree_ios/releases/tag/5.19.0

This project stopped doing that after v8.2.0. Why? There should be a direct download option for "known good" v9.x binaries for use with alternative development environments.

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

No branches or pull requests

10 participants