rspec - Rake 10.0.3 runs the wrong version of Ruby in RVM -
i ran bundle update rails
on rvm-based app today, , updated rake 10.0.3 in process. can't run rake spec
anymore because it's trying utilize scheme ruby instead of right rvm ruby.
here's output:
$ bundle exec rake spec -b /usr/local/lib/ruby -s rspec ./spec/controllers/articles_controller_spec.rb ... rake aborted! /usr/local/lib/ruby -s rspec ./spec/controllers/articles_controller_spec.rb ... /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rspec-core-2.12.2/lib/rspec/core/rake_task.rb:156:in `run_task' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rspec-core-2.12.2/lib/rspec/core/rake_task.rb:124:in `initialize' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/file_utils_ext.rb:61:in `verbose' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rspec-core-2.12.2/lib/rspec/core/rake_task.rb:122:in `send' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rspec-core-2.12.2/lib/rspec/core/rake_task.rb:122:in `initialize' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:228:in `call' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:228:in `execute' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:223:in `each' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:223:in `execute' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:166:in `invoke_with_call_chain' /users/brandan/.rvm/rubies/ruby-1.8.7-p174/lib/ruby/1.8/monitor.rb:242:in `synchronize' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:159:in `invoke_with_call_chain' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/task.rb:152:in `invoke' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:143:in `invoke_task' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:101:in `top_level' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:101:in `each' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:101:in `top_level' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:110:in `run_with_threads' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:95:in `top_level' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:73:in `run' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:160:in `standard_exception_handling' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/lib/rake/application.rb:70:in `run' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/gems/rake-10.0.3/bin/rake:33 /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/bin/rake:19:in `load' /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/bin/rake:19 tasks: top => spec
notice rspec trying shell out /usr/local/lib/ruby
instead of proper path rvm-installed ruby. if run rspec
command line, passes:
$ bundle exec rspec ..................................... finished in 1.81 seconds 37 examples, 0 failures
i downgraded rake 10.0.2 , didn't have problem, , i'm able replicate rake 10.0.3 in other apps on similar ruby versions on local machine.
the problem seems rake::tasklib::ruby
incorrectly defined:
$ bundle exec ruby -e 'require "rake/tasklib"; puts rake::tasklib::ruby' /usr/local/lib/ruby
any thought what's wrong environment?
os x 10.8.2 rvm 1.18.5
edit: more environment:
$ echo $path /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/bin:/users/brandan/.rvm/gems/ruby-1.8.7-p174@global/bin:/users/brandan/.rvm/rubies/ruby-1.8.7-p174/bin:/users/brandan/.rvm/bin:/usr/local/heroku/bin:/users/brandan/bin:.gem/ruby/1.8/bin:/usr/local/git/bin:/usr/local/mysql/bin:/usr/local/pear/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin $ -a ruby /users/brandan/.rvm/rubies/ruby-1.8.7-p174/bin/ruby /usr/bin/ruby $ -a bundle /users/brandan/.rvm/gems/ruby-1.8.7-p174@bcl/bin/bundle /users/brandan/.rvm/bin/bundle /usr/bin/bundle $ head -n 1 $(which bundle) #!/users/brandan/.rvm/rubies/ruby-1.8.7-p174/bin/ruby
looks affected alter https://github.com/jimweirich/rake/commit/968682759b3b65e42748cd2befb2ff3e982272d9#l0r9
make sure unset variable:
unset ruby
ruby rspec rake rvm
No comments:
Post a Comment