Yes, I know it seems duplicate. I have read and tried solutions suggested from other issues such as following:
https://github.com/CocoaPods/CocoaPods/issues/9343
https://github.com/CocoaPods/CocoaPods/issues/9319
https://github.com/CocoaPods/CocoaPods/issues/9085
More details posted on Stackoverflow
Run pod install
To be details, merged project from 1 branch to another (React Native 0.59.10 to React Native 0.61.0), then pod install
Pod install successfully.
CDN: trunk Relative path: CocoaPods-version.yml exists!
Here's the full log from pod install --verbose
Analyzing dependencies
Inspecting targets to integrate
Using `ARCHS` setting to build architectures of target `Pods-projectName`: (``)
Using `ARCHS` setting to build architectures of target `Pods-projectName-Shared`: (``)
Using `ARCHS` setting to build architectures of target `Pods-projectName-tvOS`: (``)
Using `ARCHS` setting to build architectures of target `Pods-projectName-tvOSTests`: (``)
Using `ARCHS` setting to build architectures of target `Pods-projectName`: (``)
Fetching external sources
-> Fetching podspec for `DoubleConversion` from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`
-> Fetching podspec for `FBLazyVector` from `../node_modules/react-native/Libraries/FBLazyVector`
-> Fetching podspec for `FBReactNativeSpec` from `../node_modules/react-native/Libraries/FBReactNativeSpec`
-> Fetching podspec for `Folly` from `../node_modules/react-native/third-party-podspecs/Folly.podspec`
-> Fetching podspec for `RCTPrivacySnapshot` from `../node_modules/react-native-privacy-snapshot`
-> Fetching podspec for `RCTRequired` from `../node_modules/react-native/Libraries/RCTRequired`
-> Fetching podspec for `RCTTypeSafety` from `../node_modules/react-native/Libraries/TypeSafety`
-> Fetching podspec for `RNDeviceInfo` from `../node_modules/react-native-device-info`
-> Fetching podspec for `RNFirebase` from `../node_modules/react-native-firebase/ios`
-> Fetching podspec for `RNI18n` from `../node_modules/react-native-i18n`
-> Fetching podspec for `RNKeychain` from `../node_modules/react-native-keychain`
-> Fetching podspec for `RNPinch` from `../Libraries/react-native-pinch-custom`
-> Fetching podspec for `RNTracker` from `../node_modules/react-native-tracker`
-> Fetching podspec for `RNVectorIcons` from `../node_modules/react-native-vector-icons`
-> Fetching podspec for `React` from `../node_modules/react-native/`
-> Fetching podspec for `React-ART` from `../node_modules/react-native/Libraries/ART`
-> Fetching podspec for `React-Core` from `../node_modules/react-native/`
-> Fetching podspec for `React-CoreModules` from `../node_modules/react-native/React/CoreModules`
-> Fetching podspec for `React-RCTActionSheet` from `../node_modules/react-native/Libraries/ActionSheetIOS`
-> Fetching podspec for `React-RCTAnimation` from `../node_modules/react-native/Libraries/NativeAnimation`
-> Fetching podspec for `React-RCTBlob` from `../node_modules/react-native/Libraries/Blob`
-> Fetching podspec for `React-RCTImage` from `../node_modules/react-native/Libraries/Image`
-> Fetching podspec for `React-RCTLinking` from `../node_modules/react-native/Libraries/LinkingIOS`
-> Fetching podspec for `React-RCTNetwork` from `../node_modules/react-native/Libraries/Network`
-> Fetching podspec for `React-RCTSettings` from `../node_modules/react-native/Libraries/Settings`
-> Fetching podspec for `React-RCTText` from `../node_modules/react-native/Libraries/Text`
-> Fetching podspec for `React-RCTVibration` from `../node_modules/react-native/Libraries/Vibration`
-> Fetching podspec for `React-cxxreact` from `../node_modules/react-native/ReactCommon/cxxreact`
-> Fetching podspec for `React-jsi` from `../node_modules/react-native/ReactCommon/jsi`
-> Fetching podspec for `React-jsiexecutor` from `../node_modules/react-native/ReactCommon/jsiexecutor`
-> Fetching podspec for `React-jsinspector` from `../node_modules/react-native/ReactCommon/jsinspector`
-> Fetching podspec for `ReactCommon` from `../node_modules/react-native/ReactCommon`
-> Fetching podspec for `SecureKeychain` from `../Libraries/SecureKeychain`
-> Fetching podspec for `Yoga` from `../node_modules/react-native/ReactCommon/yoga`
-> Fetching podspec for `glog` from `../node_modules/react-native/third-party-podspecs/glog.podspec`
-> Fetching podspec for `lottie-ios` from `../node_modules/lottie-ios`
-> Fetching podspec for `lottie-react-native` from `../node_modules/lottie-react-native`
-> Fetching podspec for `react-native-config` from `../node_modules/react-native-config`
-> Fetching podspec for `react-native-cookie` from `../node_modules/react-native-cookie`
-> Fetching podspec for `react-native-document-picker` from `../node_modules/react-native-document-picker`
-> Fetching podspec for `react-native-fbsdk` from `../node_modules/react-native-fbsdk`
-> Fetching podspec for `react-native-file-opener-fix` from `../node_modules/react-native-file-opener-fix`
-> Fetching podspec for `react-native-html-to-pdf` from `../node_modules/react-native-html-to-pdf`
-> Fetching podspec for `react-native-http-cache` from `../node_modules/react-native-http-cache`
-> Fetching podspec for `react-native-image-picker` from `../node_modules/react-native-image-picker`
-> Fetching podspec for `react-native-netinfo` from `../node_modules/@react-native-community/netinfo`
-> Fetching podspec for `react-native-splash-screen` from `../node_modules/react-native-splash-screen`
-> Fetching podspec for `react-native-webview` from `../node_modules/react-native-webview`
Resolving dependencies of `Podfile`
[!] Unable to find a specification for `Firebase/Core (~> 6.9.0)`
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:389:in `find_cached_set'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:360:in `specifications_for_dependency'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:165:in `search_for'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:274:in `block in sort_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:267:in `each'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:267:in `sort_by'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:267:in `sort_dependencies'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/delegates/specification_provider.rb:53:in `block in sort_dependencies'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/delegates/specification_provider.rb:70:in `with_no_such_dependency_error_handling'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/delegates/specification_provider.rb:52:in `sort_dependencies'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:288:in `initial_state'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:210:in `start_resolution'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/resolution.rb:168:in `resolve'
/Library/Ruby/Gems/2.3.0/gems/molinillo-0.6.6/lib/molinillo/resolver.rb:43:in `resolve'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/resolver.rb:94:in `resolve'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer/analyzer.rb:986:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer/analyzer.rb:984:in `resolve_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer/analyzer.rb:124:in `analyze'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer.rb:410:in `analyze'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer.rb:234:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer.rb:233:in `resolve_dependencies'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/installer.rb:156:in `install!'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.3.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.4/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:22:in `load'
/usr/local/bin/pod:22:in `<main>'
CocoaPods : 1.8.4
Ruby : ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
RubyGems : 2.5.2.3
Host : Mac OS X 10.14.6 (18G1012)
Xcode : 11.2.1 (11B500)
Git : git version 2.21.0 (Apple Git-122.2)
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib
Repositories : cocoapods - file system
privateRepo - git - https://github.com/privateRepo/Specs.git @ gg4d2f71ac7alk3k2hhdk283dd466 [I've masked the values]
n/a
And if you try pod repo update or pod install --repo-update does it work?
If I go with pod install --repo-update, here's the outcome:
You have either:
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
If I go with pod repo update then pod install, here's the outcome:
[!] Unable to find a specification for `Firebase/Core (~> 6.9.0)`
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
I actually removed Podfile.lock during the installation. As I revert back to the last successful state (where podfile.lock and yarn.lock is sitting in my directory), pod install is successful! This indicate that removing podfile.lock leads to pod installation failed (which is weird, no?).
I've decided to dig further on the issue, here's the outcome for a few case scenarios:
podfile.lock, shows the following:[!] Unable to find a specification for `Firebase/Core (~> 6.9.0)`
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
yarn.lock, shows the following:[!] CocoaPods could not find compatible versions for pod "FBSDKCoreKit":
In snapshot (Podfile.lock):
FBSDKCoreKit (= 5.7.0, ~> 5.0, ~> 5.5)
In Podfile:
react-native-fbsdk (from `../node_modules/react-native-fbsdk`) was resolved to 1.1.1, which depends on
react-native-fbsdk/Core (= 1.1.1) was resolved to 1.1.1, which depends on
FBSDKCoreKit (= 5.8)
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* changed the constraints of dependency `FBSDKCoreKit` inside your development pod `react-native-fbsdk`.
You should run `pod update FBSDKCoreKit` to apply changes you've made.
yarn.lock + podfile.lock, shows the following:[!] Unable to find a specification for `Firebase/Core (~> 6.9.0)`
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
Whats your pod repo list output?
Whats your
pod repo listoutput?
In the case of yarn.lock and podfile.lock removed
- Type: file system
- URL:
- Path: /Users/tommy/.cocoapods/repos/cocoapods
trunk
- Type: CDN
- URL: https://cdn.cocoapods.org/
- Path: /Users/tommy/.cocoapods/repos/trunk
privateRepo
- Type: git (master)
- URL: https://github.com/privateRepo/Specs.git
- Path: /Users/tommy/.cocoapods/repos/privateRepo
- Type: file system
- URL:
- Path: /Users/tommy/.cocoapods/repos/cocoapods
Not sure what this is but I would pod repo remove cocoapods or cd~/.cocoapods/reposandrm -rf cocoapods` there.
Hmm.. in this case where should the path point to? Or the default/common path?
It's actually nothing inside? It's leading to an empty folder.
.cocoapods > repos > cocoapods > specs > blob > master > specs > 0 > a > c > fabric
it seems its a bug in our code for transitioning from git based master specs repo to cdn. You can just remove it.
Removed them and re-tried to reinstall all dependencies, no luck still. Back to square with the same errors mentioned earlier. This is a little scary for me as the root cause is unable to be identified ):
sorry dont have a further clue here. @igor-makarov maybe?
There were some hiccups in GitHub servers yesterday, can we make sure it's not that?
There were some hiccups in GitHub servers yesterday, can we make sure it's not that?
Should not be the issue? As I was trying this morning (GMT+8) when discussing with @dnkoutso
Ok, I'm not sure what the issue is. Can you paste your whole Podfile? Redacting any private info, but I'd really like to see the bigger picture.
Specifically, what source 'xxx' directives do you have in it? That's my main suspicion.
Also the title of the issue is really misleading, can you change it to something like 'Unable to find a specification for Firebase/Core (~> 6.9.0)' if that's alright with you?
Ok, I'm not sure what the issue is. Can you paste your whole
Podfile? Redacting any private info, but I'd really like to see the bigger picture.
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
source 'https://github.com/privateRepo/Specs.git'
target 'project' do
# Comment the next line if you don't want to use dynamic frameworks
# use_frameworks!
# Pods for project
pod 'FBLazyVector', :path => "../node_modules/react-native/Libraries/FBLazyVector"
pod 'FBReactNativeSpec', :path => "../node_modules/react-native/Libraries/FBReactNativeSpec"
pod 'RCTRequired', :path => "../node_modules/react-native/Libraries/RCTRequired"
pod 'RCTTypeSafety', :path => "../node_modules/react-native/Libraries/TypeSafety"
pod 'React', :path => '../node_modules/react-native/'
pod 'React-Core', :path => '../node_modules/react-native/'
pod 'React-CoreModules', :path => '../node_modules/react-native/React/CoreModules'
pod 'React-Core/DevSupport', :path => '../node_modules/react-native/'
pod 'React-RCTActionSheet', :path => '../node_modules/react-native/Libraries/ActionSheetIOS'
pod 'React-RCTAnimation', :path => '../node_modules/react-native/Libraries/NativeAnimation'
pod 'React-RCTBlob', :path => '../node_modules/react-native/Libraries/Blob'
pod 'React-RCTImage', :path => '../node_modules/react-native/Libraries/Image'
pod 'React-RCTLinking', :path => '../node_modules/react-native/Libraries/LinkingIOS'
pod 'React-RCTNetwork', :path => '../node_modules/react-native/Libraries/Network'
pod 'React-RCTSettings', :path => '../node_modules/react-native/Libraries/Settings'
pod 'React-RCTText', :path => '../node_modules/react-native/Libraries/Text'
pod 'React-RCTVibration', :path => '../node_modules/react-native/Libraries/Vibration'
pod 'React-Core/RCTWebSocket', :path => '../node_modules/react-native/'
pod 'React-cxxreact', :path => '../node_modules/react-native/ReactCommon/cxxreact'
pod 'React-jsi', :path => '../node_modules/react-native/ReactCommon/jsi'
pod 'React-jsiexecutor', :path => '../node_modules/react-native/ReactCommon/jsiexecutor'
pod 'React-jsinspector', :path => '../node_modules/react-native/ReactCommon/jsinspector'
pod 'ReactCommon/jscallinvoker', :path => '../node_modules/react-native/ReactCommon'
pod 'ReactCommon/turbomodule/core', :path => '../node_modules/react-native/ReactCommon'
pod 'Yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec'
pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec'
# Required by RNFirebase
pod 'Firebase/Core', '~> 6.9.0'
pod 'RNFirebase', :path => '../node_modules/react-native-firebase/ios'
pod 'Fabric', '~> 1.10.2'
pod 'Crashlytics', '~> 3.14.0'
# FBSDK
pod 'react-native-fbsdk', :path => '../node_modules/react-native-fbsdk'
pod 'RNDeviceInfo', :path => '../node_modules/react-native-device-info'
pod 'react-native-netinfo', :path => '../node_modules/@react-native-community/netinfo'
pod 'react-native-config', :path => '../node_modules/react-native-config'
pod 'RNI18n', :path => '../node_modules/react-native-i18n'
pod 'react-native-document-picker', :path => '../node_modules/react-native-document-picker'
pod 'react-native-image-picker', :path => '../node_modules/react-native-image-picker'
pod 'RNKeychain', :path => '../node_modules/react-native-keychain'
pod 'react-native-splash-screen', :path => '../node_modules/react-native-splash-screen'
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons'
pod 'react-native-webview', :path => '../node_modules/react-native-webview'
pod 'React-ART', :path => '../node_modules/react-native/Libraries/ART'
pod 'react-native-html-to-pdf', :path => '../node_modules/react-native-html-to-pdf'
pod 'lottie-ios', :path => '../node_modules/lottie-ios'
pod 'lottie-react-native', :path => '../node_modules/lottie-react-native'
pod 'privateRepo', :path => '../node_modules/privateRepo'
# Self appended (Custom Created)
pod 'RNPinch', :path => '../Libraries/react-native-pinch-custom'
pod 'SecureKeychain', :path => '../Libraries/SecureKeychain'
pod 'react-native-http-cache', :path => '../node_modules/react-native-http-cache'
pod 'react-native-cookie', :path => '../node_modules/react-native-cookie'
pod 'RCTPrivacySnapshot', :path => '../node_modules/react-native-privacy-snapshot'
pod 'react-native-file-opener-fix', :path => '../node_modules/react-native-file-opener-fix'
target 'project-tvOSTests' do
inherit! :search_paths
end
target 'projectTests' do
inherit! :search_paths
end
end
target 'project-Shared' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
end
target 'project-tvOS' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
end
post_install do |installer|
installer.pods_project.targets.each do |target|
# # Following action is to remove "React" from project's target, otherwise project will have duplicate symbol issues
if target.name == "React"
target.remove_from_project
end
# react-native-config
if target.name == 'react-native-config'
phase = target.project.new(Xcodeproj::Project::Object::PBXShellScriptBuildPhase)
phase.shell_script = "cd ../../"\
" && RNC_ROOT=./node_modules/react-native-config/"\
" && export SYMROOT=$RNC_ROOT/ios/ReactNativeConfig"\
" && ruby $RNC_ROOT/ios/ReactNativeConfig/BuildDotenvConfig.ruby"
target.build_phases << phase
target.build_phases.move(phase,0)
end
end
end
Also the title of the issue is really misleading, can you change it to something like 'Unable to find a specification for
Firebase/Core (~> 6.9.0)' if that's alright with you?
Not entirely convince with this title actually. In fact, I've tried installing Firebase/Core using the similar pod command and it works. I just didn't understand why the issue is complaining about Firebase/Core.
I think the problem is that you have a custom source 'https://github.com/privateRepo/Specs.git' directive.
When you add a custom spec repo, it overrides the default.
You need to add source 'https://cdn.cocoapods.org/' to the Podfile. Let me know if this helps.
I think the problem is that you have a custom
source 'https://github.com/privateRepo/Specs.git'directive.When you add a custom spec repo, it overrides the default.
You need to add
source 'https://cdn.cocoapods.org/'to the Podfile. Let me know if this helps.
It works perfectly as expected after appended as mentioned. Can I conclude the mistake of this issue as overwriting the source of looking for podspecsto github?
Also, I just came across to read your article here, didn't actually notice before.. my bad. I can now celebrate Christmas and slip through my 2019 peacefully 馃槄 Thanks @igor-makarov & @dnkoutso for both your help!
Merry Christmas 馃巺 鈽冿笍 and Happy New Year 馃巻
Most helpful comment
I think the problem is that you have a custom
source 'https://github.com/privateRepo/Specs.git'directive.When you add a custom spec repo, it overrides the default.
You need to add
source 'https://cdn.cocoapods.org/'to the Podfile. Let me know if this helps.