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

Switch SwiftyDropbox dependency to Swift Package Manager #273

Closed
6 tasks done
dive opened this issue Sep 19, 2020 · 3 comments · Fixed by #274
Closed
6 tasks done

Switch SwiftyDropbox dependency to Swift Package Manager #273

dive opened this issue Sep 19, 2020 · 3 comments · Fixed by #274
Assignees
Labels
development process Categorizes issue or PR as related to fixing or improving the development process

Comments

@dive
Copy link
Member

dive commented Sep 19, 2020

Carthage has a problem right now with Xcode 12 support (due to Apple Silicon support, aka arm64 for macOS targets) and it breaks the compilation for all package (check the #3019). They are working on a solution - XCFramework support but it will take a while.

On the other hand, SwiftyDropbox just added Swift Package Manager support (#252). It is easier to maintain, and, perhaps, this is the future of dependency management for Swift projects. Let's switch at some point.

To do

  • Remove Carthage support
  • Add SPM support
  • Update the documentation
  • Update Travis CI configuration
  • Check CI builds
  • Check that it works with Xcode 11.7 as well
@dive dive added the development process Categorizes issue or PR as related to fixing or improving the development process label Sep 19, 2020
@webframp
Copy link
Member

Very interested in knowing what your results are for this.

Researching for #272 showed that the box sdk also has support for SPM: https://github.com/box/box-ios-sdk#swift-package-manager and it would make sense to me to migrate the dep management while there's only one explicit dependency.

@dive
Copy link
Member Author

dive commented Oct 3, 2020

Tried to set up a repository with Xcode 12 to fix the issue with iCloud, can confirm that the Carthage problem affects our flow as well:

➜  mobileorg git:(develop) carthage bootstrap --platform ios
*** Checking out Alamofire at "4.9.1"
*** Checking out SwiftyDropbox at "5.1.0"
*** xcodebuild output can be found in /var/folders/5_/283pnd4x5cg90yqp0byk4wtr0000gn/T/carthage-xcodebuild.8qSgip.log
*** Building scheme "Alamofire iOS" in Alamofire.xcworkspace
Build Failed
        Task failed with exit code 1:
        /usr/bin/xcrun lipo -create /Users/dive/Library/Caches/org.carthage.CarthageKit/DerivedData/12.0.1_12A7300/Alamofire/4.9.1/Build/Intermediates.noindex/ArchiveIntermediates/Alamofire\ iOS/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Alamofire.framework/Alamofire /Users/dive/Library/Caches/org.carthage.CarthageKit/DerivedData/12.0.1_12A7300/Alamofire/4.9.1/Build/Products/Release-iphonesimulator/Alamofire.framework/Alamofire -output /Volumes/Extended/Projects/github/mobileorg/Carthage/Build/iOS/Alamofire.framework/Alamofire

This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/5_/283pnd4x5cg90yqp0byk4wtr0000gn/T/carthage-xcodebuild.8qSgip.log
➜  mobileorg git:(develop) xcode-select -p
/Volumes/Extended/Archive/Xcode_12.0.1.app/Contents/Developer

Let's try to switch to SPM, otherwise we have to use a workaround from Carthage and it is a bit hacky.

@webframp
Copy link
Member

webframp commented Oct 3, 2020

Great that you had success reproducing, but definitely annoying. I think the switch to SPM is a good idea especially since we really just have the one dependency right now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development process Categorizes issue or PR as related to fixing or improving the development process
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants