Reputation: 2130
The app I am developing has suddenly stopped deploying to Heroku, with the error:
remote: Gem::InstallError: execjs requires Ruby version >= 2.0.0.
remote: An error occurred while installing execjs (2.5.1), and Bundler cannot continue.
remote: Make sure that `gem install execjs -v '2.5.1'` succeeds before bundling.
remote: !
remote: ! Failed to install gems via Bundler.
remote: !
remote:
remote: ! Push rejected, failed to compile Ruby app
Ruby 2.0 is not a viable option for me (I have no choice but develop on MS Windows, and too much Ruby 2.0 stuff didn't work for Windows last time I looked), but I don't think I need execjs -v2.5.1. I don't call it up explicitly in my gemfile, and if I run gem dependency execjs --reverse-dependencies
I get:
Gem execjs-1.4.0
multi_json (~> 1.0)
rake (>= 0, development)
Used by
coffee-script-2.3.0 (execjs (>= 0))
coffee-script-2.2.0 (execjs (>= 0))
sprockets-2.12.3 (execjs (~> 1.0, develo
sprockets-2.11.0 (execjs (~> 1.0, develo
sprockets-2.1.3 (execjs (~> 1.0, develop
uglifier-2.5.3 (execjs (>= 0.3.0))
uglifier-1.2.6 (execjs (>= 0.3.0))
Gem execjs-2.2.1
rake (>= 0, development)
Used by
coffee-script-2.3.0 (execjs (>= 0))
coffee-script-2.2.0 (execjs (>= 0))
uglifier-2.5.3 (execjs (>= 0.3.0))
uglifier-1.2.6 (execjs (>= 0.3.0))
Gem execjs-2.2.2
rake (>= 0, development)
Used by
coffee-script-2.3.0 (execjs (>= 0))
coffee-script-2.2.0 (execjs (>= 0))
uglifier-2.5.3 (execjs (>= 0.3.0))
uglifier-1.2.6 (execjs (>= 0.3.0))
Gem execjs-2.3.0
rake (>= 0, development)
Used by
coffee-script-2.3.0 (execjs (>= 0))
coffee-script-2.2.0 (execjs (>= 0))
uglifier-2.5.3 (execjs (>= 0.3.0))
uglifier-1.2.6 (execjs (>= 0.3.0))
Gem execjs-2.4.0
rake (>= 0, development)
Used by
coffee-script-2.3.0 (execjs (>= 0))
coffee-script-2.2.0 (execjs (>= 0))
uglifier-2.5.3 (execjs (>= 0.3.0))
uglifier-1.2.6 (execjs (>= 0.3.0))
It looks as if I don't need anything later than v2.4.0 (am I reading that correctly?) but how do I tell my gems to use an old version, not the latest?
Upvotes: 3
Views: 526
Reputation: 1039
You can specify the gem version in your Gemfile like this:
gem "haml-rails", "~> 0.3.4"
or (specific version)
gem "haml-rails", "0.3.4"
For more information, click here:
Meaning of tilde-greater-than (~>) in version requirement?
Upvotes: 2
Reputation: 630
Try locking your execjs version in your Gemfile:
gem 'execjs', '2.4.0'
Upvotes: 3