Working on a project with a huge amount of pods I had some troubles:
- Slow and unnecessary indexing of 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 pods dependencies and remove their targets from the Pods project;
+ Rebuild only changed pods;
+ Remove unnecessary sources from a project and reduce project size;
+ Drop any unneeded targets with sources and resources by RegEx.
๐ Not a dependency, just an optional step
๐ Doesn't change Podfile and Podfile.lock
๐ Custom steps
๐ Metrics after each command
โจ Fancy log output
๐ Swiftish!
Ruby alternatives:
- PodBuilder
- CocoaPods Binary Cache
- CocoaPods Binary
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 ๐ฑ
brew install mint
mint install swiftyfinch/rugby
# Now on Mint 0.17.0 you'll need to add ~/.mint/bin to your $PATH
# For example, add this to your ~/.zshrc file and relaunch terminal
export PATH=$HOME/.mint/bin:$PATHWatch ๐ฌ installation demo
Run in your project directory after each pod install:
pod install && rugbyWatch ๐ฌ Basic Usage Demo
Read more about advanced usage
| Command | Description |
|---|---|
๐ Help |
General Rugby documentation. |
๐ Cache |
Convert 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. |
| ๐ญ How to |
|---|
| Generating and Installing Completion Scripts |
Vyacheslav Khorkov
Twitter: @SwiftyFinch
Blog: swiftyfinch.github.io
Feel free to contact me ๐ฎ
