-
Notifications
You must be signed in to change notification settings - Fork 28.5k
Don't rely on global pod
installation, use bundled version
#40135
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
Comments
Does #22998 cover your request? |
Potentially yes, but I would see #22998 a potential follow up to this ticket. This ticket would only allow you to switch to use the So yes, it would cover our request, but I wouldn't say it is the same. Whether or not to, by default, use the bundler for cocoa pods is something that could be discussed after this ticket has been implemented. Also, #22998 has a quite big architectural decision to be made. |
I also like to have all dependencies strictly set by a project environment (.ruby-version, Gemfile, Podfile - you know). And as I working with many projects at the same time, some of them are legacy, I can't rely on global versions of any tools. So I would love to have flutter build which respects Gemfile and Bundler as fastlane does |
Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now. Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away! |
@jmagman As said, while #22998 would also cover this, we could fix this with much less changes, by just using the bundler-installed pod if available. That would only be a first step though, as it would only be available to people "in the know" with their own But I think it would be worthwhile, because if this project ever decides to put a Just let me know if you agree with the above sentiment and would be willing to accept a PR that adds a check to first check whether there is a |
I found |
Any news about this? I agree with this answer |
If someone wants to send a PR, sgtm to try |
It would be enough to make the cocoapods command configurable, so the user could substitute |
This just became more important because of this issue: Essentially, the global pod installation suddenly became broken because of an XCode update. |
Hello guys, I added the feature to support Here is the Draft PR. Meanwhile I'm working on the tests for my changes to be done this week. Thank you. |
@loic-sharma also here, should close these as wont-fix given our work on SPM? |
Thanks for the ping! We can close this issue once we started deprecating CocoaPods. I added it to the Swift Package Manager umbrella issue: #126005 |
Use case
In addition to stock Cococapods we have some plugins required in our Podfile.
Cocoapods itself and the plugins are version controlled using
bundler
, and when runningbundle exec pod install
in theios/
directory everything works fine.But when executing
flutter run
it tried to use the globalpod
binary, which doesn't pick up the locally installed plugin we want to use.Proposal
I am not super familiar with Cocoapods, so there might be a better solution to this.
What I would propose is to remove the hardcoded
pod install
in places like this:flutter/packages/flutter_tools/lib/src/macos/cocoapods.dart
Line 280 in b7c714e
β¦and instead do some discovery to find out whether pod is locally available via
bundle exec
and in that case use that instead.If there is any other workaround to make
pod install
aware of the local plugins that would also be fine.I think in general it would be much better though not even to require the global
pod
installation, and do everything through bundled versions. (In our team we constantly have noise due to different people upgrading Cocoapods at different times and hence modifying the version string in thePodfile.lock
file)The text was updated successfully, but these errors were encountered: