Dogweather
Dogweather

Reputation: 16779

gem update fails with Gem::ImpossibleDependenciesError

This is really odd. I'm surprised that this could be an issue. Shouldn't gem simply be able to install all versions, and tools like bundler/Gemfile will handle dependencies within any particular project? I get this same error even if I use the --force option:

$ gem update
Updating installed gems
Updating activeadmin
ERROR:  While executing gem ... (Gem::ImpossibleDependenciesError)
    arbre-1.0.1 requires activesupport (>= 3.0.0) but it conflicted:
  Activated activesupport-4.0.0 instead of (= 3.2.14) via:
    activerecord-3.2.14, meta_search-1.1.3, activeadmin-0.6.1
  Activated activesupport-3.2.14 instead of (= 4.0.0) via:
    railties-4.0.0, devise-3.1.0, activeadmin-0.6.1

Could someone also explain what this error message means? I can't sort out exactly how the logic is working. The message begins with arbre-1.0.1, but gem seems to still be working on activeadmin. I'm thinking this means that arbre-1.0.1 needs activesupport, and there are two installed that it can work with, but, there are two groups of gems which have conflicting activesupport specs. ??

Is this a normal error to receive? I've never seen it in practice. Does it mean that some gem developer didn't correctly specify a dependency?

Upvotes: 3

Views: 751

Answers (1)

Momer
Momer

Reputation: 3237

Is your project a Rails 3 project? It looks like arbre expected Rails 3.2.14 but Rails (ActiveSupport) had updated to 4.0.0.

Rather than running gem update, install Bundler and run bundle inside of your app's directory.

Upvotes: 2

Related Questions