Skip to content

๐Ÿˆ Cache CocoaPods for faster rebuild and indexing Xcode project

License

Notifications You must be signed in to change notification settings

alekseimuraveinik/Rugby

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation



๐Ÿˆ Rugby Remastered

You can find all information in the RC3 Readme.
๐Ÿ“ฆ The latest pre-release is here.

Motivation

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.

Description

๐Ÿˆ 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.

What makes it different?

๐Ÿ•Š 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

Discussions

You can read more about ๐Ÿˆ Rugby in discussions section.
Feel free to report any issues or suggest some new feature requests.


Install using Homebrew ๐Ÿบ

brew tap swiftyfinch/Rugby https://github.com/swiftyfinch/Rugby.git
brew install rugby

More information ๐ŸŽฌ here.


How to use ๐Ÿˆ

Run in your project directory after each pod install:

pod install && rugby

Watch ๐ŸŽฌ Basic Usage Demo.
Read more about advanced usage.

Documentation ๐Ÿ“š

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
๐ŸŽฌ Installation Demo
๐ŸŽฌ Basic Usage Demo
๐ŸŽฌ Debug Demo
Known limitations

- Not supported WatchOS SDK


๐Ÿ› Contribution

Note
Rugby 1.x is frozen for new feature requests. Please, open only requests with bug fixes.
That's because there is the new Rugby2.x version and it will be released soon.
This new version isn't back-compatible with the first one and has an absolutely different code base.
Also, Rugby2.x will be a closed code for the first time. And then I will open source after all preparations.
Sorry for that freeze time, I hope we continue to develop this product together in the nearest future.


๐Ÿ“ฎ Support

If you want to support this project, you can do some of these:
1) Press โญ๏ธ. It's a great sign that Rugby is useful;
2) Share the project ๐ŸŒ somewhere with anybody;
3) Leave feedback in the discussions ๐Ÿ’ฌ section.

If you have any questions or feature requests, feel free to open a discussion or an issue.

About

๐Ÿˆ Cache CocoaPods for faster rebuild and indexing Xcode project

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 95.8%
  • Ruby 4.1%
  • Makefile 0.1%