Working on a project with a huge amount of remote pods I had some troubles:
-
Slow and unnecessary indexing of remote pods targets, which implementation I rarely try to edit;
-
Redundant rebuild time, probably as a result of problems CocoaPods
hooks or Xcode build system;
-
Freezing UI during navigation.
You can read 📖 full story on my blog.
🏈 Rugby
is CLI tool that was developed to solve the above problems:
+
Cache all remote pods dependencies and remove their targets from the Pods project;
+
Rebuild only changed remote pods;
+
Remove unnecessary sources from a project and reduce project size;
+
Drop any unneeded targets with sources and resources by RegEx.
🕊 Not a dependency
🔒 Doesn't change Podfile
🛠 Custom steps
📈 Metrics after each command
✨ Fancy log output
🚀 Swiftish!
Ruby alternatives:
-
CocoaPods Binary
-
PodBuilder
-
CocoaPods Binary Cache
You can read more about 🏈 Rugby in discussions
section.
Feel free to report any issues or suggest some new feature requests.
Quick start with Mint 🌱
mint install swiftyfinch/rugby
Run in your project directory after each pod install:
pod install && rugby
Or read more about Plans
Command | Description |
---|---|
🚑 Help |
General Rugby documentation. |
🏈 Cache |
Convert remote pods to prebuilt dependencies. |
Plans |
Run a predefined sequence of commands. |
🔍 Focus |
Keep only selected targets and all their dependencies. |
🗑 Drop |
Remove any targets by RegEx. |
- Unit tests
- Optional arrays #317
Vyacheslav Khorkov
Twitter: @SwiftyFinch
Blog: swiftyfinch.github.io
Feel free to contact me for any questions.