Cocoapods: Issues with concurrent-ruby gem

Created on 24 Sep 2019  路  12Comments  路  Source: CocoaPods/CocoaPods

Command

/usr/local/bin/pod repo update

Report

  • What did you do?

  • What did you expect to happen?

  • What happened instead?

Stack

   CocoaPods : 1.8.0
        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.5 (18F132)
       Xcode : 11.0 (11A420a)
         Git : git version 2.17.1
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib
Repositories : master - git - https://github.com/CocoaPods/Specs.git @ 2bd9d97c2af4f28898e8194baeb0763f3a7f97e8
               trunk - CDN - https://cdn.cocoapods.org/

Plugins

cocoapods-deintegrate : 1.0.4
cocoapods-plugins     : 1.0.0
cocoapods-search      : 1.0.0
cocoapods-stats       : 1.0.0
cocoapods-trunk       : 1.4.0
cocoapods-try         : 1.1.0

Error

NameError - uninitialized constant Concurrent::Promises
Did you mean?  Concurrent::Promise
/Library/Ruby/Gems/2.3.0/gems/cocoapods-core-1.8.0/lib/cocoapods-core/cdn_source.rb:62:in `block in preheat_existing_files'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-core-1.8.0/lib/cocoapods-core/cdn_source.rb:61:in `map'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-core-1.8.0/lib/cocoapods-core/cdn_source.rb:61:in `preheat_existing_files'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-core-1.8.0/lib/cocoapods-core/cdn_source.rb:253:in `update'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/sources_manager.rb:122:in `block (3 levels) in update'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/sources_manager.rb:121:in `block (2 levels) in update'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/sources_manager.rb:120:in `each'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/sources_manager.rb:120:in `block in update'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/sources_manager.rb:118:in `open'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/sources_manager.rb:118:in `update'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/command/repo/update.rb:23:in `run'
/Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.8.0/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:22:in `load'
/usr/local/bin/pod:22:in `<main>'
confirmed workaround available defect

Most helpful comment

@TomLuna worked with sudo gem install concurrent-ruby

All 12 comments

Same error here 馃

I fixed by "sudo gem install concurrent-ruby -n /usr/local/bin/", which copied from https://github.com/CocoaPods/CocoaPods/issues/8991. Not sure they are related but it worked.

gem install concurrent-ruby fixed my issue. Thanks :)

@TomLuna worked with sudo gem install concurrent-ruby

Seems to have fixed my issues as well

Same here. @TomLuna 's solution also worked for me. Running on OS X 10.14.6.

The dependency is clearly specified in the gemspec https://github.com/CocoaPods/Core/blob/1.8.0/cocoapods-core.gemspec#L26.

@igor-makarov seems like concurrent-ruby gem added promises.rb in version v1.0.4 and on.

We probably need to specify this as the minimum version in the cocoapods-core gemspec.

The workaround for everybody else is gem update concurrent-ruby.

Apparently, it was only in in 1.1.x that Promises was integrated in the main concurrent-ruby gem.

" sudo gem install concurrent-ruby " resolved it for me too

"sudo gem install concurrent-ruby" works for me as well

sudo gem install concurrent-ruby -n /usr/local/bin/ works for me as well.

Was this page helpful?
0 / 5 - 0 ratings