Skip to content
This repository has been archived by the owner on Dec 23, 2021. It is now read-only.

Swift Package Manager 🚀 #85

Merged
merged 8 commits into from
Feb 25, 2021
Merged

Conversation

pchmelar
Copy link
Member

@pchmelar pchmelar commented Jan 11, 2021

📝 Description

  • Swift Package Manager (SPM) has been around for some time and clearly it is the way we want to go in the future. This PR propose needed changes in order to use it for all current dependencies.

💡 What’s new?

  • CocoaPods removed 🪦
  • All main dependencies installed via SPM 🚀
  • Mint used for tools. More info in this article. 🌱
  • All scripts refactored accordingly
  • With CocoaPods gone we can also get rid of Gems. Now it will be used only for fastlane and twine. Fastlane is used only on the CI, so it can be managed there. And twine is updated very sporadically, so there is not much point in versioning.
  • Flipper has no support for the SPM and there are no indications it will be implemented soon. Proxyman seems like an adequate replacement with more features, continuous development and support for SPM.

😶 What’s missing?

  • SPM still have problem with multi target dependencies, therefore RxSwift doesn't work properly (RxTest at the moment). None of the workarounds worked for me. We have to wait until this bug is resolved.
  • Build Phase for Firebase Crashlytics works with this "hack" - it can break in the future releases of SPM

📚 References

@tommassbrand
Copy link
Contributor

I see that PR is WIP but you requested code review. I see lot of commented code.
So it is finished for now? :) @pchmelar

@pchmelar
Copy link
Member Author

It is not finished, I have to resolve all the issues from What’s missing?, but I wanted to create the PR anyway so you can take a look 🙂. Guess I should not add you as reviewers until it is ready, sorry for that, my bad.

@pchmelar pchmelar force-pushed the feature/swift-package-manager branch 2 times, most recently from e160d78 to 6fe5e6b Compare January 24, 2021 00:48
@pchmelar
Copy link
Member Author

SPM still have problems with multi target dependencies, therefore RxSwift doesn't work properly (RxTest at the moment). None of the workarounds worked for me. We have to wait until this bug is resolved.

@tommassbrand
Copy link
Contributor

this bug

So we will hope that this will be fixed ASAP :)
Otherwise, the other code is ready for code review? @pchmelar

@pchmelar pchmelar force-pushed the feature/swift-package-manager branch 4 times, most recently from a3fad91 to f2497b0 Compare January 25, 2021 21:42
tommassbrand
tommassbrand previously approved these changes Feb 19, 2021
@pchmelar pchmelar changed the title WIP: Swift Package Manager 🚀 Swift Package Manager 🚀 Feb 24, 2021
@pchmelar
Copy link
Member Author

I added the RxTest code directly into the DevStackTests target.
It is working, but of course it's not ideal, because with every RxSwift update we have to update it manually.
We will use it through SPM when fixed - related issue

@pchmelar pchmelar merged commit c4e0098 into develop Feb 25, 2021
@pchmelar pchmelar deleted the feature/swift-package-manager branch February 25, 2021 08:23
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants