I got following error after "bundle install"
Bundler could not find compatible versions for gem "haml":
In Gemfile:
haml-rails (>= 0) ruby depends on
haml (< 5.0, >= 4.0.6) ruby
haml (= 4.0.3) ruby
In the Gemfile:
gem "haml-rails", :git => "git://github.com/indirect/haml-rails.git"
how could I resolve this issue?
I think your Gemfile contains something like:
gem 'haml', '4.0.3'
change it to:
gem 'haml', '~> 4.0.3'
and run bundle install.
Related
RUBY 2.7.6
Bundler version 2.1.4
No matter what version of rails I use in the GEMFILE
I get the following error
undler could not find compatible versions for gem "railties":
In Gemfile:
rails (= 6.0.0) was resolved to 6.0.0, which depends on
railties (= 6.0.0)
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '6.1.0'
# Use mysql as the database for Active Record
gem 'mysql2', '~> 0.3.18'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.3'
This is maybe because you have an outdated version of sass-rails.
Try the followings steps:
Remove gem versions for sass-rails from Gemfile.lock and run bundle update
If above didnt work, delete the Gemfile.lock and run bundle install, if you have no conflicting explicit gem version in your Gemfile to start with. So if this fails, remove version numbers from the Gemfile.
Hope this helps!
I want to configure email setting in spree
I add this gem according to this tutorial https://guides.spreecommerce.com/user/configuring_mail_methods.html
gem 'spree_mail_settings', github: 'spree-contrib/spree_mail_settings', branch: 'master'
But running bundle install gives me the following error:
Bundler could not find compatible versions for gem "spree_backend":
In snapshot (Gemfile.lock):
spree_backend (= 3.0.7)
In Gemfile:
spree (~> 3.0.7) was resolved to 3.0.7, which depends on
spree_backend (= 3.0.7)
spree_mail_settings was resolved to 2.2.0, which depends on
spree_backend (~> 3.1.0.beta)
Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.
Running bundle update gives me this:
Bundler could not find compatible versions for gem "spree_backend":
In Gemfile:
spree_mail_settings was resolved to 2.2.0, which depends on
spree_backend (~> 3.1.0.beta)
Could not find gem 'spree_backend (~> 3.1.0.beta)', which is required by gem
'spree_mail_settings', in any of the sources.
in my gemfile I have:
gem 'spree', '~> 3.0.7'
gem 'spree_gateway', '~> 3.0.0'
gem 'spree_auth_devise', '~> 3.0.0'
gem 'spree_i18n', git: 'git://github.com/spree/spree_i18n.git', branch: '3-0-stable'
gem 'spree_mail_settings', github: 'spree-contrib/spree_mail_settings', branch: 'master'
I tried to write like this gem 'spree', '~> 3.1.0' but it didn't work
~> 3.0.7 is equivalent to >= 3.0.7 and <3.1
Rather than trying to tease apart what is and isn't compatible, I would install it like:
gem 'spree'
gem 'spree_gateway'
gem 'spree_auth_devise'
gem 'spree_i18n', git: 'git://github.com/spree/spree_i18n.git', branch: '3- 0-stable'
gem 'spree_mail_settings', github: 'spree-contrib/spree_mail_settings', branch: 'master'
then I'd bundle install and bundle update. I'd then check the gemfile.lock and see what the gems versioned themselves to. Hopefully it resolves appropriately.
Delete your Gemfile.lock file then run bundle installand bundle update. I'm not assure this options should work,just try it.
I am using middleman 3.3.9 and
gem 'sass-rails', '~> 4.0.3'
gem 'bootstrap-sass', '~> 3.3.1'
gem 'bootstrap-timepicker-rails'
gem 'sass', '~> 3.2.19'
When I run bundle install, I get this error:
Bundler could not find compatible versions for gem "sass":
In Gemfile:
middleman (~> 3.3.9) ruby depends on
sass (< 4.0, >= 3.4.0) ruby
sass (3.2.19)
How can I make this pass?
update Gemfile with the following line.
gem 'sass', '~> 3.4.0'
Edit
basically you'll need to upgrade all sass dependant gems to a level, every dependant gem uses same version of sass
You're having a dependent gem conflict problem. You've locked sass-rails down so it can't bring in a sass that's new enough to satisfy the version of middleman that you're running.
You need to either lower the version of middleman that you're using, or increase the version of sass-rails.
Given a gemfile of :
source 'https://rubygems.org'
gem 'rails', '4.1.1'
group :development, :test do
gem 'railroady'
gem 'sqlite3'
gem 'jasmine'
# For linux support
gem 'therubyracer'
end
group :production do
gem 'pg'
gem 'thin'
end
gem 'sass-rails'
# gem 'coffee-rails'
gem 'uglifier', '>= 1.0.3'
gem 'colorize'
gem 'jquery-ui-rails'
gem 'jquery-rails'
gem 'rails-backbone'
# gem 'backbone-on-rails'
gem 'bootstrap-sass'
gem 'requirejs-rails', git: 'git://github.com/jwhitley/requirejs-rails.git'
gem 'ejs'
gem 'devise'
gem 'better_errors', '>= 0.2.0', :group => :development
gem 'binding_of_caller', '>= 0.6.8', :group => :development
gem 'd3_rails'
gem 'font-awesome-sass-rails'
# for a better way of looking at the rake routes by calling rake color_routes in the console
gem 'color_routes'
# lets us know which user is logged in, and store in a global variable gon{}
gem 'gon'
#browser detection
gem 'browser'
# FOR EASY TRANISTION TO Rails 4
gem 'protected_attributes'
gem 'rails-observers'
gem 'actionpack-page_caching'
gem 'actionpack-action_caching'
and when running bundle, getting the following error:
Bundler could not find compatible versions for gem "jquery-rails":
In Gemfile:
rails-backbone (>= 0) ruby depends on
jquery-rails (~> 2.1.3) ruby
jquery-rails (3.1.2)
Bundler could not find compatible versions for gem "ejs":
In Gemfile:
rails-backbone (>= 0) ruby depends on
ejs (~> 1.0.0) ruby
ejs (1.1.1)
Bundler could not find compatible versions for gem "rails":
In Gemfile:
rails-backbone (>= 0) ruby depends on
rails (~> 3.1.0.beta1) ruby
rails (4.1.1)
The errors aren't making sense. Taking the first part with jquery-rails, i get that it is saying another gem rails-backbone of a version greater than or equal to 0 depends on jquery-rails of around 2.1.3.
What does ruby mean after the versions?
What is `jquery-rails (3.1.2) mean?
Basically, you have dependency errors in your gemfile, and it seems that rails-backbone is causing most of them, consider removing it, as the latest version works with rails 3.1 - it hasn't been updated for long time
Here is info about the gem: https://rubygems.org/gems/rails-backbone
Bundler could not find compatible versions for gem "ejs":
In Gemfile:
rails-backbone (>= 0) ruby depends on
ejs (~> 1.0.0) ruby
ejs (1.1.1)
This error literally means that you are using ejs version 1.1.1 (probably a dependency of some other gem), but rails-backbone (version greater or equal 0, so any version) requires ejs in version 1.0.*
you can use rails-backbone from the git with
gem 'rails-backbone', git: 'https://github.com/codebrew/backbone-rails.git', tag: 'v1.1.2'
Version 1.1.2 depends on any version of jquery-rails and mocha, so it shouldn't cause any problems. Using git without tag will get the latest version from master, but I would advise against using development version (may cause more trouble than good)
The rubygem seems outdated, the github repository states that it works with rails 4
As a workaround, get the gem directly from github :
gem 'rails-backbone', :git => 'https://github.com/codebrew/backbone-rails.git'
jquery-rails (~> 2.1.3) means it is dependent on all jquery-rails versions between 2.1.3 and below 2.2.0.
jquery-rails (3.1.2) is already installed in the app; it can be verified by looking at Gemfile.lock contents.
Try bundle update; it will try to update all the gem versions where there are no specific version specified, and possibly succeed in getting the dependency conflict resolved.
This is my Gemfile:
gem "rails", "~> 2.3.8"
gem "rake", "0.9.2"
gem 'mysql', '2.8.1'
gem 'aasm', '2.1.5'
gem "authlogic", "2.1.6"
gem "acl9", "0.12.0"
gem "formtastic", "1.2.5"
But bundle install reports:
Bundler could not find compatible versions for gem "activesupport":
In Gemfile:
rails (~> 2.3.8) ruby depends on
activesupport (= 2.3.8) ruby
authlogic (= 2.1.6) ruby depends on
activesupport (1.0.0)
UPDATE
I've tried different combinations of gem versions.
And finally found a row without the version specification... that I didn't saw between comments. So the code snippet above was already correct.
Do you really need to use those versions?
Why not simply replace
gem "authlogic", "2.1.6"
with
gem "authlogic"
and let the bundle solve version dependencies?
Sometimes after doing so in the gemfile you get an error from the bundler and you have to run bundle update authlogic before the general bundle install