pod trunk push --skip-tests --allow-warnings
OR
pod repo update && pod trunk push --skip-tests --allow-warnings
Pod to be pushed currently to trunk with no errors.
Getting
ERROR | [iOS] unknown: Encountered an unknown error (Unable to find a specification for `RxSwift (~> 4.0)` depended upon by `RxSwiftExt/Core`
This is on CircleCI :
CocoaPods : 1.3.1
Ruby : ruby 2.3.5p376 (2017-09-14 revision 59905) [x86_64-darwin16]
RubyGems : 2.5.2.1
Host : Mac OS X 10.12.6 (16G29)
Xcode : 9.1 (9B55)
Git : git version 2.13.6 (Apple Git-96)
Ruby lib dir : /Users/distiller/.rubies/ruby-2.3.5/lib
Repositories :
Executable Path: /Users/distiller/.gem/ruby/2.3.5/bin/pod
cocoapods-deintegrate : 1.0.1
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.0
cocoapods-stats : 1.0.0
cocoapods-trunk : 1.3.0
cocoapods-try : 1.1.0
The failing build is here (see the failing step): https://circleci.com/gh/RxSwiftCommunity/RxSwiftExt/66
This is similar to #3877, but the suggestion there was a pod repo update which I've tried as well in this case.
Can you paste RxSwiftExt.podspec?
This seems to be the latest from the repo:
https://github.com/ReactiveX/RxSwift/blob/master/RxSwift.podspec
Pod::Spec.new do |s|
s.name = "RxSwift"
s.version = "4.1.2"
s.summary = "RxSwift is a Swift implementation of Reactive Extensions"
s.description = <<-DESC
This is a Swift port of [ReactiveX.io](https://github.com/ReactiveX)
Like the original [Rx](https://github.com/Reactive-extensions/Rx.Net), its intention is to enable easy composition of asynchronous operations and event streams.
It tries to port as many concepts from the original Rx as possible, but some concepts were adapted for more pleasant and performant integration with iOS/macOS/Linux environment.
Probably the best analogy for those who have never heard of Rx would be:
`
git diff | grep bug | less # linux pipes - programs communicate by sending
# sequences of bytes, words, lines, '\0' terminated strings...
`
would become if written in RxSwift
`
gitDiff().grep("bug").less // sequences of swift objects
`
DESC
s.homepage = "https://github.com/ReactiveX/RxSwift"
s.license = 'MIT'
s.author = { "Krunoslav Zaher" => "[email protected]" }
s.source = { :git => "https://github.com/ReactiveX/RxSwift.git", :tag => s.version.to_s }
s.requires_arc = true
s.ios.deployment_target = '8.0'
s.osx.deployment_target = '10.10'
s.watchos.deployment_target = '2.0'
s.tvos.deployment_target = '9.0'
s.source_files = 'RxSwift/**/*.swift', 'Platform/**/*.swift'
s.exclude_files = 'RxSwift/Platform/**/*.swift'
end
Here's another attempt adding a gem update cocoapods to the CI so it runs with 1.4.0 - no change:
try running pod setup first -- it looks like your machine has never added the CocoaPods specs repo
@segiddins Very interesting, adding a pod setup does solve it:
https://circleci.com/gh/RxSwiftCommunity/RxSwiftExt/71
The strange thing is it seems, at least superficially that pod trunk push is doing that as well? but this variation fails as demonstrated.

Would you consider this a bug? I would imagine a pod trunk push should resolve its dependencies if there are any missing ones
It seems like the repo was somehow initialized maybe without any content? Something seems was off that was unable to get the latest commit of master that includes the dependency your podspec wanted.
@dnkoutso I suspected that as well but even when debugging with SSH, using pod trunk push by itself will not work unless manually doing a pod setup
It works fine for the rest of our repos since they mostly use CocoaPods for the example apps, but this specific repo uses Carthage so I guess it needs a manual setup ?
I would still expect and trunk comment to do a pod setup by itself - I wonder what's the difference between the two variations since the log output starts the same in both occurrences
@freak4pc I am not sure what we can do better here at the moment. Seems like a bit difficult to diagnose what went wrong.
I am fairly certain pod trunk push will clone the repo if it does not exist. You can try mving the repo in ~/.cocoapods/repos/master and invoke pod trunk push to see if it will clone it from scratch.
I am inclined to close this issue but will wait for your input.
I don't mind closing this at all, but this is entirely reproducible - Only when running pod setup manually this would actually work. Otherwise, pod trunk itself doesn't seem to take care of this.
Since my problem was resolved and there's no other community related interest, I have no problem closing for now.
Thanks!
Most helpful comment
try running
pod setupfirst -- it looks like your machine has never added the CocoaPods specs repo