Home > Back-end >  Bundler could not find compatible versions for gem "jsonpath"
Bundler could not find compatible versions for gem "jsonpath"

Time:09-29

I have 2 gems k8s-client and kubeclient , which require different versions of jsonpath. But bundler is failing to resolve/install gems due to this difference. Even if I add an additional gem installation of jsonpath itself , it's failing with same.

In Gemfile:
    k8s-client was resolved to 0.10.3, which depends on
      jsonpath (~> 0.9.5)

    kubeclient (= 4.9.3) was resolved to 4.9.3, which depends on
      jsonpath (~> 1.0)

I tried adding gem 'jsonpath','1.1.2' in the Gemfile which should Ideally satisfy both but it still gives same error . Anyone knows why ? How to resolve this ?

PS - There is no Gemfile.lock created yet , so no suggestions to delete that file please. This bundle install will run as part of docker image build , so I wouldn't prefer doing bundle update as well, as suggested by other Stackoverflow answers.

Thank you.

Gemfile ->

group :external do
  gem 'jsonpath','1.1.2'
  gem 'fluent-plugin-route'
  gem 'fluent-plugin-systemd'
  gem 'fluent-plugin-kubernetes_metadata_filter'
end

group :core do
  gem 'fluentd'
  gem 'kubeclient','4.9.3'
  gem 'k8s-client'
  gem 'fluent-plugin-prometheus'
  gem 'fluent-plugin-record-modifier'
  gem 'fluent-plugin-rewrite-tag-filter'
end

CodePudding user response:

1.1.2 will not satisfy ~> 0.9.5 and ~> 1.0

~> 0.9.5 contains the range >= 0.9.5 and < 1.0

~> 1.0 contains the range >= 1.0 and < 2.0

Reference

  • Related