CocoaPods adds a dependency not in Podfile: how to delete it? - xcode

I have never add a file named box with podfile. but after pod update, it appearance and when I vim podfile want to delete it, it doesn't exist. How to delete it?

Pods can use other pods. So when you install them it install also inner pods. You can check your pods and see which one using it. Do not delete it.

You can get the list of pods own dependencies in the Podfile.lock file. Open it and you'll see:
- ReactiveCocoa (3.0.0):
- ReactiveCocoa/UI (= 3.0.0)
- Result (~> 0.4.1)
- ReactiveCocoa/Core (3.0.0):
- ReactiveCocoa/no-arc
- Result (~> 0.4.1)
- ReactiveCocoa/no-arc (3.0.0):
- Result (~> 0.4.1)
- ReactiveCocoa/UI (3.0.0):
- ReactiveCocoa/Core
- Result (~> 0.4.1)
- Result (0.4.4):
- Box (~> 1.2)
Which means that ReactiveCocoa (3.0.0) has a dependency on Result (~> 0.4.1), and Result (0.4.4) has a dependency on Box (~> 1.2).
Well, ReactiveCocoa 3.0.0 was in 2015. Nowadays in 2018, ReactiveCocoa is at version 7.1.0 and has a dependency on a newer version of Result which itself doesn't require Box anymore, so a pod update on the same Podfile will remove Box.

It maybe owned by other pods, so don't try ro delete it.

Related

Unity Firebase + AdMob conflict (GoogleAppMeasurement)

Unity: 2019.4.8f1
AdMob v5.4.0
Firebase v6.16.1 (Messaging & Analytics)
Target minimum iOS Version 12.0
Problem
I can't build the project. XCode error:
../Libraries/Plugins/iOS/GADUAdLoader.h:5:9: 'GoogleMobileAds/GoogleMobileAds.h' file not found
When I trying to update pods terminal throw the next error:
[!] CocoaPods could not find compatible versions for pod "GoogleAppMeasurement":
In Podfile:
Firebase/Analytics (= 6.32.2) was resolved to 6.32.2, which depends on
Firebase/Core (= 6.32.2) was resolved to 6.32.2, which depends on
FirebaseAnalytics (= 6.8.2) was resolved to 6.8.2, which depends on
GoogleAppMeasurement (= 6.8.2)
Google-Mobile-Ads-SDK (~> 7.68) was resolved to 7.68.0, which depends on
GoogleAppMeasurement (~> 7.0)
Attempts
Add 'pod 'GoogleAppMeasurement', '7.0'' to Podfile.
Result
CocoaPods could not find compatible versions for pod "GoogleAppMeasurement":
In Podfile:
Firebase/Analytics (= 6.32.2) was resolved to 6.32.2, which depends on
Firebase/Core (= 6.32.2) was resolved to 6.32.2, which depends on
FirebaseAnalytics (= 6.8.2) was resolved to 6.8.2, which depends on
GoogleAppMeasurement (= 6.8.2)
Google-Mobile-Ads-SDK (~> 7.68) was resolved to 7.68.0, which depends on
GoogleAppMeasurement (~> 7.0)
GoogleAppMeasurement (= 7.0)
Uninstall and install cocoapods
Result
Same error
Project Podfile
source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/CocoaPods/Specs'
platform :ios, '12.0'
target 'UnityFramework' do
pod 'Firebase/Analytics', '6.32.2'
pod 'Firebase/Core', '6.32.2'
pod 'Firebase/Messaging', '6.32.2'
pod 'Google-Mobile-Ads-SDK', '~> 7.68'
end
How can I resolve this problem?
Google-Mobile-Ads-SDK version 7.68 is only compatible with Firebase 7.x. If you want to use Firebase 6.x, you need to use 7.67 or earlier.
Just delete at the top
source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/CocoaPods/Specs'
my pod file
platform :ios, '11.0'
target 'UnityFramework' do
pod 'Google-Mobile-Ads-SDK', '~> 7.68'
end

Dropbox pod install Error - Higher Minimum Deployment Required?

Getting this message when attempting to install Dropbox- higher minimum deployment target required. I am on iOS 9.3. Any ideas?
$ pod install
Analyzing dependencies
[!] CocoaPods could not find compatible versions for pod "Ensembles/Dropbox":
In Podfile:
Ensembles/Dropbox (~> 2.0)
Specs satisfying the Ensembles/Dropbox (~> 2.0) dependency were found, but they required a higher minimum deployment target.
It looks like the highest version of the Ensembles Pod available publicly is 1.8 and the Podfile is requesting 2.0 - https://cocoapods.org/pods/Ensembles.
If you have additional questions, please share the Podfile.

pod not updating package but showing outdated

I'm trying to update my pod Intercom to the latest version. pod shows it as needing updating but it refuses to be updated.
# pod outdated
Updating spec repo `master`
Analyzing dependencies
The following pod updates are available:
- Intercom 2.3.21 -> 2.3.21 (latest version 3.0.11)
- SevenSwitch 1.4.0 -> 1.4.0 (latest version 2.0.0)
But then when I go to update it:
# pod outdated
Updating spec repo `master`
Analyzing dependencies
The following pod updates are available:
- Intercom 2.3.21 -> 2.3.21 (latest version 3.0.11)
- SevenSwitch 1.4.0 -> 1.4.0 (latest version 2.0.0)
hopebox:Sonar Mobile michaelleonetti$ pod update Intercom
Updating local specs repositories
Analyzing dependencies
Downloading dependencies
Using ISO8601 (0.6.0)
Using Intercom (2.3.21)
Using KeenClient (3.5.6)
Using MGSwipeTableCell (1.5.5)
Using SevenSwitch (1.4.0)
Using TPCircularBuffer (1.4)
Generating Pods project
Integrating client project
Sending stats
Pod installation complete! There are 6 dependencies from the Podfile and 6 total pods installed.
[!] The `SonarCloud [Debug]` target overrides the `LIBRARY_SEARCH_PATHS` build setting defined in `Pods/Target Support Files/Pods-SonarCloud/Pods-SonarCloud.debug.xcconfig'. This can lead to problems with the CocoaPods installation
- Use the `$(inherited)` flag, or
- Remove the build settings from the target.
How can I get pod to update to the correct version that is shown in the outdated command?

How do I include a commit in a ruby library that hasn't been added to the gem yet?

Specifically, this commit has been merged into mongomapper master to fix a bug that is causing my application to crash:
https://github.com/mongomapper/mongomapper/pull/572
However, it hasn't been released in a new gem. Is it possible to include it prematurely or do I have to wait until it's released? I'm on heroku with a Gemfile.lock that specifies version.
My gemfile.lock currently reads:
mongo_mapper (0.13.0)
activemodel (>= 3.0.0)
activesupport (>= 3.0)
mongo (~> 1.8)
plucky (~> 0.6.5)
I don't know about Heroku, but if you want to use a git version of a gem that is not on Rubygems yet, you must add the git path to your Gemfile.
In your Gemfile change:
gem 'mongomapper'
To:
gem 'mongomapper', :git => 'https://github.com/mongomapper/mongomapper.git'
Or if you're on a more modern ruby, you can also use:
gem 'mongomapper', github: 'mongomapper/mongomapper'
And of course after that you must run bundle install or bundle update mongomapper.
Since the Ruby code isn't compiled, if you have the notes for that patch you can always manually add those changes to the lib directory of the mongomapper gem, although I can't advise against this enough - it's undesirable to change the source code, especially underneath an installed gem.
Once you go down this road you can't really count on any support for related issues until you are updated to a newer version or reverted to the original files.

POD error . Pod relies on the removed \`pre_install\` or \`post_install\`

When I try to install pods. It says,
Installing AFNetworking 2.0.0-RC3 (was 2.0.0-RC3)
Installing Bolts (1.1.0)
Installing Facebook-iOS-SDK 3.14.1 (was 3.8.0)
Installing FontAwesomeKit (2.1.5)
Installing FontasticIcons 0.5.0 (was 0.5.0)
Installing JXHTTP (1.0.0)
Installing MBProgressHUD 0.8 (was 0.8)
Installing NSData+Base64 (1.0.0)
Installing RNFrostedSidebar (0.2.0)
Installing SSToolkit 1.0.4 (was 1.0.4)
[!] /bin/bash
set -e
echo "This Pod relies on the removed \`pre_install\` or \`post_install\` hooks and therefore will no longer continue to work. Please try updating to the latest version of this Pod or updating the Pod specification. See http://blog.cocoapods.org/CocoaPods-Trunk/ for more details." && exit 1
This Pod relies on the removed `pre_install` or `post_install` hooks and therefore will no longer continue to work. Please try updating to the latest version of this Pod or updating the Pod specification. See http://blog.cocoapods.org/CocoaPods-Trunk/ for more details.
Anybody idea, what to do correct this bug. is this related to pods OR any particular repo. ?
Your problem is coming from SSToolkit only. The solution found here: https://github.com/soffes/sstoolkit/issues/197 also worked for me. Namely, in your Podfile, replace the SSToolkit line with this one:
pod 'SSToolkit', :git => 'https://github.com/soffes/sstoolkit.git', :commit => '1403f02cb98f8357f4b8e43c59d9c69d608d7bed'

Resources