Skip to content
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

Support for checked-in Pods? #603

Open
grav opened this issue Jun 25, 2019 · 2 comments
Open

Support for checked-in Pods? #603

grav opened this issue Jun 25, 2019 · 2 comments

Comments

@grav
Copy link

@grav grav commented Jun 25, 2019

We're checking in our Pods directory into source control. This means that the pod install command is only ever run, if a developer wants to install a new dependency.

Reading through the CocoaPods part of the XcodeGen-docs, it seems that there isn't a good solution for this? I guess, if CocoaPods allowed for separating downloading deps from integrating deps, it should be possible to just integrate the pods after generating the project.

@yonaskolb
Copy link
Owner

@yonaskolb yonaskolb commented Sep 27, 2019

Hi @grav

If you have podfile.lock checked in that operation should be pretty fast. As you say though it could be faster if cocoapods gave you a way to integrate only. There are a couple of possible solutions:

  • this issue tracks a post gen hook #479, which if you are using xcodegen caching, would then only run pod install if the project needed to be generated. You could also do this with a script that cleverly checked the output of xcodegen as well. This brings down the need to run pod install so often.
  • check the exact changes that the cocoapods integration process does to your project and just add them manually to your project spec. I haven't looked in a while but I'm guessing this is a combination of xcconfig paths, build settings, and run scripts. (This could potentially be added as a feature to XcodeGen as a integrateCocoapods option)
  • move from cocoapods to carthage. XcodeGen integrates with this much better
  • check in your project and only regenerate on merge conflicts
@yonaskolb
Copy link
Owner

@yonaskolb yonaskolb commented Jan 23, 2020

A postGenCommand has been added here #759
This will allow for only running pod install if the project has actually changed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.