Bundler How to Uninstall Conflicting Dependency

Bundler how to uninstall conflicting dependency

VAGRANT_DISABLE_STRICT_DEPENDENCY_ENFORCEMENT=1 vagrant plugin install vagrant-vbguest
resolved the issue. Looks like workaround, but it worked for me and everything seems ok right now.

Managing conflicting dependencies in Gemfile.lock

Just define the specific version of the gem to a required version by adding the following line in the gemfile:

gem 'net-ssh', '2.6.8'

or in the thinegem.gemspec:

spec.add_dependency 'net-ssh', '2.6.8'

And if you did add the gemfile.lock into the project, it shell be used during a deployment anyway.

Conflicting dependencies in same gem. Bundler could not find compatible version for gem faraday

I found that this issue was only present in version google-api-client -v 0.5.0 and google-api-client -v 0.6.0 (possibly others). Changing to 0.6.4 solved the issue for me.

Hopefully this will help someone else out there.

Understanding bundler dependency resolution

When you look at the complete output from your bundle install it is pretty long:

Bundler could not find compatible versions for gem "actionpack":
In Gemfile:
jquery-datatables-rails was resolved to 3.4.0, which depends on
actionpack (>= 3.1)

rails (= 5.2.3) was resolved to 5.2.3, which depends on
actionpack (= 5.2.3)

rspec-rails was resolved to 3.8.2, which depends on
actionpack (>= 3.0)

simple_form was resolved to 4.1.0, which depends on
actionpack (>= 5.0)

rails (= 5.2.3) was resolved to 5.2.3, which depends on
sprockets-rails (>= 2.0.0) was resolved to 3.2.1, which depends on
actionpack (>= 4.0)

Bundler could not find compatible versions for gem "activemodel":
In Gemfile:
rails (= 5.2.3) was resolved to 5.2.3, which depends on
activemodel (= 5.2.3)

web-console was resolved to 4.0.1, which depends on
activemodel (>= 6.0.0)

Bundler could not find compatible versions for gem "activerecord":
In Gemfile:
acts_as_xlsx was resolved to 1.0.6, which depends on
activerecord (>= 2.3.9)

better_delayed_job_web was resolved to 1.3.12, which depends on
activerecord (> 3.0.0)

delayed_job_active_record was resolved to 4.1.4, which depends on
activerecord (>= 3.0, < 6.1)

rails (= 5.2.3) was resolved to 5.2.3, which depends on
activerecord (= 5.2.3)

Bundler could not find compatible versions for gem "activesupport":
In Gemfile:
active_model-errors_details was resolved to 1.1.1, which depends on
activesupport

delayed_job was resolved to 4.1.8, which depends on
activesupport (>= 3.0, < 6.1)

exception_notification-rake was resolved to 0.3.0, which depends on
exception_notification (~> 4.2.0) was resolved to 4.2.2, which depends on
activesupport (>= 4.0, < 6)

rails (= 5.2.3) was resolved to 5.2.3, which depends on
activesupport (= 5.2.3)

rspec-rails was resolved to 3.8.2, which depends on
activesupport (>= 3.0)

shoulda-matchers was resolved to 4.1.2, which depends on
activesupport (>= 4.2.0)

rails (= 5.2.3) was resolved to 5.2.3, which depends on
sprockets-rails (>= 2.0.0) was resolved to 3.2.1, which depends on
activesupport (>= 4.0)

Bundler could not find compatible versions for gem "axlsx":
In Gemfile:
axlsx

acts_as_xlsx was resolved to 1.0.6, which depends on
axlsx (>= 1.0.13)

axlsx_rails was resolved to 0.5.2, which depends on
axlsx (>= 2.0.1)

Bundler could not find compatible versions for gem "exception_notification":
In Gemfile:
exception_notification

exception_notification-rake was resolved to 0.3.0, which depends on
exception_notification (~> 4.2.0)

Bundler could not find compatible versions for gem "rails":
In Gemfile:
rails (= 5.2.3)

acts_as_tenant was resolved to 0.4.4, which depends on
rails (>= 4.0)

axlsx_rails was resolved to 0.1.5, which depends on
rails (>= 3.1)

Maybe too long, and there is a lot of noise in the output. But if you try to dig through you will find some interesting lines:

    web-console was resolved to 4.0.1, which depends on
activemodel (>= 6.0.0)

this means that web-console v4.0.1 needs at least activemodel gem 6.0.0, so you should limit web-console to valid version for rails 5, which is 3.7.0, version in your gemfile:

  gem web-console, '< 4.0'

now when you try to run bundle install again it will show you similar errors again but there will be some differences. In new output you will find following difference:

    active_model-errors_details was resolved to 1.1.1, which depends on
activemodel (>= 4.0, < 5.0.0.alpha)

This means that active_model-errro_details cannot be run with Rails 5. According to Rubygems, this gem cannot be run with Rails 5.2.3 see https://rubygems.org/gems/active_model-errors_details, so I commented it out in gemfile:

# gem 'active_model-errors_details'

and tried to run bundle install again. There are still some compatibility errors with gem versions this time it is quiet_assets gem:

Bundler could not find compatible versions for gem "railties":
In Gemfile:
quiet_assets was resolved to 1.0.1, which depends on
railties (~> 3.1)

You can see it dependes on Rails 3.x. If you look at the rubygems, you will see that even the latest version of quiet_assets cannot be run with Rails 5. Again I removed the gem from the Gemfile:

 # gem 'quiet_assets'

Now when you try to run bundle install all of the gems version problems will be solved and gems will be successfully installed.

It is a bit messy and there is a lot of noise in the error output, but if you read it carefully, you will find what is wrong.

Conflicting dependency when updating ADT Plugin

After trying to find an easy way (non deleting actual environment) to solve this problem without luck, what has worked for me is the solution proposed by blackbelt.

I've had to delete old entire directory adt-bundle-... and install the downloaded new one.



Related Topics



Leave a reply



Submit