-
Notifications
You must be signed in to change notification settings - Fork 13
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
Add bundler #27
base: main
Are you sure you want to change the base?
Add bundler #27
Conversation
|
||
The better way to install Cocoapods is to get off the system Ruby and use a Ruby version manager to negate the need for `sudo` access when installing or executing gems. Follow the instructions in [Ruby Environment Setup](./Ruby%20Environment%20Setup.md) to install and setup [`rbenv`](https://github.com/rbenv/rbenv). | ||
``` | ||
gem 'cocoapods' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might be worth mentioning the Gemfile.lock
and it uses for keeping pinning to specific versions of Gems (and it should be committed to the repository)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Definitely worth mentioning! We have info about the Podfile.lock
in the Dependency Management section. Stuff about the Gemfile
/Gemfile.lock
might technically belong there, since it's how you manage your project's "meta" dependencies (e.g. Fastlane, Cocoapods, etc.). In any case, we should probably create some sort of link between these two sections.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated Dependency Management to include information on Bundler as well as added a link to more information about dependency management in both the Cocoapods and Bundler sections here.
@@ -15,9 +56,27 @@ In order to keep repository size as minimal as possible, most of our apps do not | |||
* Primarily deal with sensitive data or financial transactions. For these apps, we will check in the `Pods` folder so that we can more easily audit the changes made to third party libraries as they are updated over time. | |||
* Require a non-BR build environment. Some client build environments don't allow network connections during the build process so all pod sources need to be present in the repository at build-time. | |||
|
|||
### Understanding `pod` Commands | |||
|
|||
Assuming you are using Bundler and have not installed Cocoapods globally all of these commands are used. If you **have** install Cocoapods globally simply use `pod <command>` instead of `bundle exec pod <command>`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let me know if you think it's better to default to bundle exec pod <command>
and have a note to remove bundle exec
if Cocoapods is installed globally, or if we should default to pod <command>
and have a note about prefixing it with bundle exec
if you're using Cocoapods installed with Bundler
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I usually default to bundle exec <command>
but I'm not sure if that's just me.
@@ -15,9 +56,27 @@ In order to keep repository size as minimal as possible, most of our apps do not | |||
* Primarily deal with sensitive data or financial transactions. For these apps, we will check in the `Pods` folder so that we can more easily audit the changes made to third party libraries as they are updated over time. | |||
* Require a non-BR build environment. Some client build environments don't allow network connections during the build process so all pod sources need to be present in the repository at build-time. | |||
|
|||
### Understanding `pod` Commands | |||
|
|||
Assuming you are using Bundler and have not installed Cocoapods globally all of these commands are used. If you **have** install Cocoapods globally simply use `pod <command>` instead of `bundle exec pod <command>`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I usually default to bundle exec <command>
but I'm not sure if that's just me.
Added Steps to install Bundler for ruby gem dependency management and updated cocoapods and fastlane instructions to use Bundler instead of installing the gems globally