I am currently setting up some Cucumber tests and my Hook file contains the following :
require 'watir'
Before do
#browser = Watir::Browser.new :chrome
end
After do
#browser.close
end
When I run my feature file I get the following:
cannot load such file -- watir (LoadError)
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
/Users/marklane/RubymineProjects/test_puppies/features/support/hooks.rb:2:in `<top (required)>'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/rb_support/rb_language.rb:129:in `load'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/rb_support/rb_language.rb:129:in `load_code_file'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/runtime/support_code.rb:171:in `load_file'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/runtime/support_code.rb:83:in `block in load_files!'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/runtime/support_code.rb:82:in `each'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/runtime/support_code.rb:82:in `load_files!'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/runtime.rb:175:in `load_step_definitions'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/runtime.rb:40:in `run!'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/cli/main.rb:43:in `execute!'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/lib/cucumber/cli/main.rb:20:in `execute'
/Users/marklane/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/cucumber-1.2.1/bin/cucumber:14:in `<top (required)>'
/Users/marklane/.rbenv/versions/1.9.3-p194/bin/cucumber:23:in `load'
/Users/marklane/.rbenv/versions/1.9.3-p194/bin/cucumber:23:in `<top (required)>'
-e:1:in `load'
-e:1:in `<main>'
My Gem File Lock is:
GEM
remote: https://rubygems.org/
specs:
backports (3.10.3)
builder (3.2.3)
childprocess (0.8.0)
ffi (~> 1.0, >= 1.0.11)
concurrent-ruby (1.0.5)
cucumber (3.0.1)
builder (>= 2.1.2)
cucumber-core (~> 3.0.0)
cucumber-expressions (~> 4.0.3)
cucumber-wire (~> 0.0.1)
diff-lcs (~> 1.3)
gherkin (~> 4.0)
multi_json (>= 1.7.5, < 2.0)
multi_test (>= 0.1.2)
cucumber-core (3.0.0)
backports (>= 3.8.0)
cucumber-tag_expressions (>= 1.0.1)
gherkin (>= 4.1.3)
cucumber-expressions (4.0.4)
cucumber-tag_expressions (1.0.1)
cucumber-wire (0.0.1)
data_magic (1.2)
faker (>= 1.1.2)
yml_reader (>= 0.6)
diff-lcs (1.3)
faker (1.8.4)
i18n (~> 0.5)
ffi (1.9.18)
gherkin (4.1.3)
i18n (0.9.0)
concurrent-ruby (~> 1.0)
multi_json (1.12.2)
multi_test (0.1.2)
page-object (2.2.4)
page_navigation (>= 0.10)
selenium-webdriver (~> 3.0)
watir (~> 6.8)
page_navigation (0.10)
data_magic (>= 0.22)
rake (12.2.1)
rspec (3.7.0)
rspec-core (~> 3.7.0)
rspec-expectations (~> 3.7.0)
rspec-mocks (~> 3.7.0)
rspec-core (3.7.0)
rspec-support (~> 3.7.0)
rspec-expectations (3.7.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.7.0)
rspec-mocks (3.7.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.7.0)
rspec-support (3.7.0)
rubyzip (1.2.1)
selenium-webdriver (3.6.0)
childprocess (~> 0.5)
rubyzip (~> 1.0)
watir (6.8.4)
selenium-webdriver (~> 3.4, >= 3.4.1)
yml_reader (0.7)
PLATFORMS
ruby
DEPENDENCIES
cucumber
data_magic
page-object (~> 2.0)
rake
rspec
watir
I am unsure why this error is occurring when I have Watir installed. When I require Watir and run the script just using the ruby file then it works ok. As soon as do the same using the Feature it errors.
When Any help would be greatly appreciated.
This isn't a direct answer to your question, but does apply to where you are trying to start the browser when running cucumber. Unless you want the overhead of starting up the browser for each scenario, I recommend starting up the browser in support/env.rb Then in the before hook you can just do something like clearing cookies to get the equivalent of a fresh browser for each scenario.
Otherwise if you are opening the browser at the start of each scenario, and closing it at the end your features will be much slower to execute just due to the time it takes to spin up the browser session for every single scenario.
Related
I've updated my application to Rails 5.1.5 after resolving all errors and depreciations in 5.0. Now, I get this message when I run RSpec:
block in materialize': Could not find activesupport-5.1.5 in any of the sources (Bundler::GemNotFound)
ActiveSupport-5.1.5 is present in gemfile.lock:
GEM
remote: http://rubygems.org/
specs:
Ascii85 (1.0.3)
actioncable (5.1.5)
actionpack (= 5.1.5)
nio4r (~> 2.0)
websocket-driver (~> 0.6.1)
actionmailer (5.1.5)
actionpack (= 5.1.5)
actionview (= 5.1.5)
activejob (= 5.1.5)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (5.1.5)
actionview (= 5.1.5)
activesupport (= 5.1.5)
rack (~> 2.0)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
actionview (5.1.5)
activesupport (= 5.1.5)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
activeadmin (1.2.1)
arbre (>= 1.1.1)
coffee-rails
formtastic (~> 3.1)
formtastic_i18n
inherited_resources (~> 1.7)
jquery-rails (>= 4.2.0)
kaminari (>= 0.15, < 2.0)
railties (>= 4.2, < 5.2)
ransack (~> 1.3)
sass (~> 3.1)
sprockets (< 4.1)
activejob (5.1.5)
activesupport (= 5.1.5)
globalid (>= 0.3.6)
activemodel (5.1.5)
activesupport (= 5.1.5)
activerecord (5.1.5)
activemodel (= 5.1.5)
activesupport (= 5.1.5)
arel (~> 8.0)
activesupport (5.1.5)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (~> 0.7)
minitest (~> 5.1)
tzinfo (~> 1.1)
addressable (2.5.2)
public_suffix (>= 2.0.2, < 4.0)
afm (0.2.2)
I'm running RSpec 3.7.1
Does anyone have any idea what could be causing this? The application runs fine on my server!
Any help is appreciated.
Did you update your bundle correctly and resolved dependencies? Most of the times, you have to update the gems which are deprecated with your new version of rails upgrade.
I got vagrant box. When I log in with vagrant ssh, I execute in shell:
cd app
bundle exec cucumber
and get cucumber tests running.
Now I need to do bundle exec whatever from my host OS shell.
I tried:
~/vbox > vagrant ssh -c 'cd app; bundle exec cucumber'
https://github.com/rsim/oracle-enhanced.git (at rails4) is not yet checked out. Run `bundle install` first.
Connection to 127.0.0.1 closed.
~/vbox > vagrant ssh -c 'cd app; pwd; ls; bundle list'
/home/vagrant/app
account bin certs config.ru db features Gemfile.lock log Rakefile script spec vbox
app Capfile config data Gemfile lib public README.md tmp vendor
Gems included by the bundle:
https://github.com/rsim/oracle-enhanced.git (at rails4) is not yet checked out. Run `bundle install` first.
Connection to 127.0.0.1 closed.
~/vbox > vagrant ssh -c 'ruby -v; rvm list'
ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-linux]
rvm rubies
=* ruby-2.0.0-p353 [ x86_64 ]
# => - current
# =* - current && default
# * - default
Connection to 127.0.0.1 closed.
How can execute a command exactly in the same environment as I do that interactively?
UPDATE:
> vagrant ssh -c 'cd app; bundle env'
Bundler 1.6.5
Ruby 2.0.0 (2013-11-22 patchlevel 353) [x86_64-linux]
Rubygems 2.2.2
rvm 1.25.28 (version)
GEM_HOME /home/vagrant/.rvm/gems/ruby-2.0.0-p353#ds-cabinet
GEM_PATH /home/vagrant/.rvm/gems/ruby-2.0.0-p353#ds-cabinet:/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global
rubygems-bundler (1.4.4)
Gemfile
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.0.3'
# Use postgres as the database for Active Record
gem 'pg'
# Use Oracle adapter for reading from Siebel
gem 'ruby-oci8'
gem 'activerecord-oracle_enhanced-adapter', git: 'https://github.com/rsim/oracle-enhanced.git', branch: 'rails4'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'
# Use slim for markup
gem 'slim-rails'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
gem 'therubyracer', platforms: :ruby
# Use jquery as the JavaScript library
gem 'jquery-rails'
gem 'jquery-ui-rails'
gem 'jquery-fileupload-rails'
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 1.2'
group :doc do
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', require: false
end
# Use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.1.2'
gem 'quiet_assets'
# Use unicorn as the app server
gem 'unicorn'
group :development do
gem 'thin'
end
# Use Capistrano for deployment
group :development do
gem 'capistrano'
gem 'capistrano-rvm'
gem 'capistrano-rails'
gem 'capistrano3-unicorn'
end
# Use RSpec for testing
group :development, :test do
gem 'rspec-rails'
gem 'rspec-mocks'
gem 'factory_girl_rails'
gem 'timecop'
gem 'pry-byebug'
gem 'pry-stack_explorer'
gem 'awesome_print'
end
group :test do
gem 'webmock'
gem 'vcr'
gem 'capybara-webkit'
gem 'cucumber-rails', require: false
gem 'database_cleaner'
gem 'email_spec'
end
# Use debugger
# gem 'debugger', group: [:development, :test]
# Use DS gems
gem 'ds-sns', git: 'git#github.com:BusinessEnvironment/ds-sns-gem.git', branch: 'sns2'
gem 'ds-siebel', git: 'git#github.com:BusinessEnvironment/ds-siebel-gem.git'
gem 'ds-spark', git: 'git#github.com:BusinessEnvironment/DS-Spark-gem.git'
# Helpers
gem 'simple_form'
gem 'cancan'
gem 'kaminari'
gem 'acts-as-taggable-on'
gem 'carrierwave'
gem 'mini_magick'
gem 'rails-observers'
gem 'exception_notification'
gem 'letter_opener', group: :development
gem 'keepass-password-generator'
# Localization
gem 'russian'
# Use curb for working with external services
gem 'curb'
# Use workflow as state machine
gem 'workflow'
# Use whenever for cron tasks
gem 'whenever', require: false
Gemfile.lock
GIT
remote: git#github.com:BusinessEnvironment/DS-Spark-gem.git
revision: 1ec2a4342f23c41c4c67030d3488563a26ea27dc
specs:
ds-spark (0.0.1)
savon (= 2.1.0)
GIT
remote: git#github.com:BusinessEnvironment/ds-siebel-gem.git
revision: 55b78fd651c972f667c6e019ba5ce9bcf22518ee
specs:
ds-siebel (0.0.1)
savon (= 2.1.0)
GIT
remote: git#github.com:BusinessEnvironment/ds-sns-gem.git
revision: 6430105e8efccd30de031017f91935c02bd03853
branch: sns2
specs:
ds-sns (0.0.1)
andand
curb
guid
memoist
rails (>= 4.0.0)
GIT
remote: https://github.com/rsim/oracle-enhanced.git
revision: f15de843c572f1d73a52907cb47f8a4b884c5ec5
branch: rails4
specs:
activerecord-oracle_enhanced-adapter (1.4.3)
GEM
remote: https://rubygems.org/
specs:
actionmailer (4.0.3)
actionpack (= 4.0.3)
mail (~> 2.5.4)
actionpack (4.0.3)
activesupport (= 4.0.3)
builder (~> 3.1.0)
erubis (~> 2.7.0)
rack (~> 1.5.2)
rack-test (~> 0.6.2)
activemodel (4.0.3)
activesupport (= 4.0.3)
builder (~> 3.1.0)
activerecord (4.0.3)
activemodel (= 4.0.3)
activerecord-deprecated_finders (~> 1.0.2)
activesupport (= 4.0.3)
arel (~> 4.0.0)
activerecord-deprecated_finders (1.0.3)
activesupport (4.0.3)
i18n (~> 0.6, >= 0.6.4)
minitest (~> 4.2)
multi_json (~> 1.3)
thread_safe (~> 0.1)
tzinfo (~> 0.3.37)
acts-as-taggable-on (3.0.1)
rails (>= 3, < 5)
addressable (2.3.6)
akami (1.2.2)
gyoku (>= 0.4.0)
nokogiri
andand (1.3.3)
arel (4.0.2)
atomic (1.1.14)
awesome_print (1.2.0)
binding_of_caller (0.7.2)
debug_inspector (>= 0.0.1)
builder (3.1.4)
byebug (2.7.0)
columnize (~> 0.3)
debugger-linecache (~> 1.2)
cancan (1.6.10)
capistrano (3.1.0)
i18n
rake (>= 10.0.0)
sshkit (~> 1.3)
capistrano-bundler (1.1.2)
capistrano (~> 3.0)
sshkit (~> 1.2)
capistrano-rails (1.1.1)
capistrano (~> 3.1)
capistrano-bundler (~> 1.1)
capistrano-rvm (0.1.1)
capistrano (~> 3.0)
sshkit (~> 1.2)
capistrano3-unicorn (0.1.1)
capistrano (>= 3.1.0)
capybara (2.3.0)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
capybara-webkit (1.2.0)
capybara (>= 2.0.2, < 2.4.0)
json
carrierwave (0.10.0)
activemodel (>= 3.2.0)
activesupport (>= 3.2.0)
json (>= 1.7)
mime-types (>= 1.16)
chronic (0.10.2)
coderay (1.1.0)
coffee-rails (4.0.1)
coffee-script (>= 2.2.0)
railties (>= 4.0.0, < 5.0)
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.7.0)
columnize (0.8.9)
crack (0.4.2)
safe_yaml (~> 1.0.0)
cucumber (1.3.16)
builder (>= 2.1.2)
diff-lcs (>= 1.1.3)
gherkin (~> 2.12)
multi_json (>= 1.7.5, < 2.0)
multi_test (>= 0.1.1)
cucumber-rails (1.4.1)
capybara (>= 1.1.2, < 3)
cucumber (>= 1.3.8, < 2)
mime-types (~> 1.16)
nokogiri (~> 1.5)
rails (>= 3, < 5)
curb (0.8.5)
daemons (1.1.9)
database_cleaner (1.3.0)
debug_inspector (0.0.2)
debugger-linecache (1.2.0)
diff-lcs (1.2.5)
email_spec (1.6.0)
launchy (~> 2.1)
mail (~> 2.2)
erubis (2.7.0)
eventmachine (1.0.3)
exception_notification (4.0.1)
actionmailer (>= 3.0.4)
activesupport (>= 3.0.4)
execjs (2.0.2)
factory_girl (4.4.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.4.1)
factory_girl (~> 4.4.0)
railties (>= 3.0.0)
gherkin (2.12.2)
multi_json (~> 1.3)
guid (0.1.1)
gyoku (1.0.0)
builder (>= 2.1.2)
hike (1.2.3)
httpi (2.0.2)
rack
i18n (0.6.9)
jbuilder (1.5.3)
activesupport (>= 3.0.0)
multi_json (>= 1.2.0)
jquery-fileupload-rails (0.4.1)
actionpack (>= 3.1)
railties (>= 3.1)
jquery-rails (3.1.0)
railties (>= 3.0, < 5.0)
thor (>= 0.14, < 2.0)
jquery-ui-rails (4.2.0)
railties (>= 3.2.16)
json (1.8.1)
kaminari (0.15.1)
actionpack (>= 3.0.0)
activesupport (>= 3.0.0)
keepass-password-generator (0.1.1)
kgio (2.9.2)
launchy (2.4.2)
addressable (~> 2.3)
letter_opener (1.2.0)
launchy (~> 2.2)
libv8 (3.16.14.3)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
memoist (0.10.0)
method_source (0.8.2)
mime-types (1.25.1)
mini_magick (3.7.0)
subexec (~> 0.2.1)
mini_portile (0.5.2)
minitest (4.7.5)
multi_json (1.8.4)
multi_test (0.1.1)
net-scp (1.1.2)
net-ssh (>= 2.6.5)
net-ssh (2.8.0)
nokogiri (1.6.1)
mini_portile (~> 0.5.0)
nori (2.0.4)
pg (0.17.1)
polyglot (0.3.4)
pry (0.10.0)
coderay (~> 1.1.0)
method_source (~> 0.8.1)
slop (~> 3.4)
pry-byebug (1.3.3)
byebug (~> 2.7)
pry (~> 0.10)
pry-stack_explorer (0.4.9.1)
binding_of_caller (>= 0.7)
pry (>= 0.9.11)
quiet_assets (1.0.2)
railties (>= 3.1, < 5.0)
rack (1.5.2)
rack-test (0.6.2)
rack (>= 1.0)
rails (4.0.3)
actionmailer (= 4.0.3)
actionpack (= 4.0.3)
activerecord (= 4.0.3)
activesupport (= 4.0.3)
bundler (>= 1.3.0, < 2.0)
railties (= 4.0.3)
sprockets-rails (~> 2.0.0)
rails-observers (0.1.2)
activemodel (~> 4.0)
railties (4.0.3)
actionpack (= 4.0.3)
activesupport (= 4.0.3)
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
raindrops (0.13.0)
rake (10.1.1)
rdoc (4.1.1)
json (~> 1.4)
ref (1.0.5)
rspec-core (2.14.7)
rspec-expectations (2.14.5)
diff-lcs (>= 1.1.3, < 2.0)
rspec-mocks (2.14.6)
rspec-rails (2.14.1)
actionpack (>= 3.0)
activemodel (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 2.14.0)
rspec-expectations (~> 2.14.0)
rspec-mocks (~> 2.14.0)
ruby-oci8 (2.1.7)
russian (0.6.0)
i18n (>= 0.5.0)
safe_yaml (1.0.3)
sass (3.2.14)
sass-rails (4.0.1)
railties (>= 4.0.0, < 5.0)
sass (>= 3.1.10)
sprockets-rails (~> 2.0.0)
savon (2.1.0)
akami (~> 1.2.0)
builder (>= 2.1.2)
gyoku (~> 1.0.0)
httpi (~> 2.0.2)
nokogiri (>= 1.4.0)
nori (~> 2.0.3)
wasabi (~> 3.0.0)
sdoc (0.4.0)
json (~> 1.8)
rdoc (~> 4.0, < 5.0)
simple_form (3.0.1)
actionpack (>= 4.0.0, < 4.1)
activemodel (>= 4.0.0, < 4.1)
slim (2.0.2)
temple (~> 0.6.6)
tilt (>= 1.3.3, < 2.1)
slim-rails (2.1.0)
actionpack (>= 3.0, < 4.1)
activesupport (>= 3.0, < 4.1)
railties (>= 3.0, < 4.1)
slim (~> 2.0)
slop (3.6.0)
sprockets (2.10.1)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
sprockets-rails (2.0.1)
actionpack (>= 3.0)
activesupport (>= 3.0)
sprockets (~> 2.8)
sshkit (1.3.0)
net-scp (>= 1.1.2)
net-ssh
term-ansicolor
subexec (0.2.3)
temple (0.6.7)
term-ansicolor (1.3.0)
tins (~> 1.0)
therubyracer (0.12.1)
libv8 (~> 3.16.14.0)
ref
thin (1.6.1)
daemons (>= 1.0.9)
eventmachine (>= 1.0.0)
rack (>= 1.0.0)
thor (0.18.1)
thread_safe (0.1.3)
atomic
tilt (1.4.1)
timecop (0.7.1)
tins (1.0.0)
treetop (1.4.15)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.38)
uglifier (2.4.0)
execjs (>= 0.3.0)
json (>= 1.8.0)
unicorn (4.8.2)
kgio (~> 2.6)
rack
raindrops (~> 0.7)
vcr (2.9.2)
wasabi (3.0.0)
httpi (~> 2.0)
nokogiri (>= 1.4.0)
webmock (1.18.0)
addressable (>= 2.3.6)
crack (>= 0.3.2)
whenever (0.9.2)
activesupport (>= 2.3.4)
chronic (>= 0.6.3)
workflow (1.1.0)
xpath (2.0.0)
nokogiri (~> 1.3)
PLATFORMS
ruby
DEPENDENCIES
activerecord-oracle_enhanced-adapter!
acts-as-taggable-on
awesome_print
cancan
capistrano
capistrano-rails
capistrano-rvm
capistrano3-unicorn
capybara-webkit
carrierwave
coffee-rails (~> 4.0.0)
cucumber-rails
curb
database_cleaner
ds-siebel!
ds-sns!
ds-spark!
email_spec
exception_notification
factory_girl_rails
jbuilder (~> 1.2)
jquery-fileupload-rails
jquery-rails
jquery-ui-rails
kaminari
keepass-password-generator
letter_opener
mini_magick
pg
pry-byebug
pry-stack_explorer
quiet_assets
rails (= 4.0.3)
rails-observers
rspec-mocks
rspec-rails
ruby-oci8
russian
sass-rails (~> 4.0.0)
sdoc
simple_form
slim-rails
therubyracer
thin
timecop
uglifier (>= 1.3.0)
unicorn
vcr
webmock
whenever
workflow
#TimMoore
Many thanks to Tim!
Being inspired by your comment I could look at the problem from a different angle. I compared the output of command vagrant ssh -с cd app; env > 4, executed from host OS and the output of env > 3 executed in guest OS shell:
> diff 3 4
1c1
< XDG_SESSION_ID=4
---
> XDG_SESSION_ID=52
3c3
< GEM_HOME=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global
---
> GEM_HOME=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#ds-cabinet
5,6c5
< TERM=screen
< SSH_CLIENT=10.0.2.2 50175 22
---
> TERM=xterm
8c7,8
< OLDPWD=/home/vagrant/app
---
> SSH_CLIENT=10.0.2.2 65390 22
> OLDPWD=/home/vagrant
10c10
< SSH_TTY=/dev/pts/0
---
> SSH_TTY=/dev/pts/3
15,39c15
< SSH_AUTH_SOCK=/tmp/ssh-aFehksOsW6/agent.6453
< TERMCAP=SC|screen|VT 100/ANSI X3.64 virtual terminal:\
< :DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:UP=\E[%dA:bs:bt=\E[Z:\
< :cd=\E[J:ce=\E[K:cl=\E[H\E[J:cm=\E[%i%d;%dH:ct=\E[3g:\
< :do=^J:nd=\E[C:pt:rc=\E8:rs=\Ec:sc=\E7:st=\EH:up=\EM:\
< :le=^H:bl=^G:cr=^M:it#8:ho=\E[H:nw=\EE:ta=^I:is=\E)0:\
< :li#31:co#119:am:xn:xv:LP:sr=\EM:al=\E[L:AL=\E[%dL:\
< :cs=\E[%i%d;%dr:dl=\E[M:DL=\E[%dM:dc=\E[P:DC=\E[%dP:\
< :im=\E[4h:ei=\E[4l:mi:IC=\E[%d#:ks=\E[?1h\E=:\
< :ke=\E[?1l\E>:vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l:\
< :ti=\E[?1049h:te=\E[?1049l:us=\E[4m:ue=\E[24m:so=\E[3m:\
< :se=\E[23m:mb=\E[5m:md=\E[1m:mr=\E[7m:me=\E[m:ms:\
< :Co#8:pa#64:AF=\E[3%dm:AB=\E[4%dm:op=\E[39;49m:AX:\
< :vb=\Eg:G0:as=\E(0:ae=\E(B:\
< :ac=\140\140aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~..--++,,hhII00:\
< :po=\E[5i:pf=\E[4i:Km=\E[M:k0=\E[10~:k1=\EOP:k2=\EOQ:\
< :k3=\EOR:k4=\EOS:k5=\E[15~:k6=\E[17~:k7=\E[18~:\
< :k8=\E[19~:k9=\E[20~:k;=\E[21~:F1=\E[23~:F2=\E[24~:\
< :F3=\E[1;2P:F4=\E[1;2Q:F5=\E[1;2R:F6=\E[1;2S:\
< :F7=\E[15;2~:F8=\E[17;2~:F9=\E[18;2~:FA=\E[19;2~:kb=:\
< :K2=\EOE:kB=\E[Z:kF=\E[1;2B:kR=\E[1;2A:*4=\E[3;2~:\
< :*7=\E[1;2F:#2=\E[1;2H:#3=\E[2;2~:#4=\E[1;2D:%c=\E[6;2~:\
< :%e=\E[5;2~:%i=\E[1;2C:kh=\E[1~:#1=\E[1~:kH=\E[4~:\
< :#7=\E[4~:kN=\E[6~:kP=\E[5~:kI=\E[2~:kD=\E[3~:ku=\EOA:\
< :kd=\EOB:kr=\EOC:kl=\EOD:km:
---
> SSH_AUTH_SOCK=/tmp/ssh-iMxngt4dR0/agent.29396
42c18
< PATH=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global/bin:/home/vagrant/.rvm/rubies/ruby-2.0.0-p353/bin:/usr/local/sbin
:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/vagrant/.rvm/bin:/home/vagrant/.rvm/bin
:/home/vagrant/.rvm/bin
---
> PATH=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#ds-cabinet/bin:/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global/bin:/home/
vagrant/.rvm/rubies/ruby-2.0.0-p353/bin:/home/vagrant/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:
/bin:/usr/games:/usr/local/games
44,45c20
< STY=6524.pts-0.cabinet
< PWD=/home/vagrant
---
> PWD=/home/vagrant/app
51a27
> rvm_ruby_string=ruby-2.0.0-p353
53,55c29,30
< WINDOW=1
< SSH_CONNECTION=10.0.2.2 50175 10.0.2.15 22
< GEM_PATH=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global
---
> GEM_PATH=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#ds-cabinet:/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global
> SSH_CONNECTION=10.0.2.2 65390 10.0.2.15 22
56a32
> rvm_delete_flag=0
58d33
< LESSCLOSE=/usr/bin/lesspipe %s %s
59a35
> LESSCLOSE=/usr/bin/lesspipe %s %s
Then I noticed that the command from the host OS uses a gemset ds-cabinet
GEM_HOME=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#ds-cabinet
while the command in the guest OS shell uses a gemset global
GEM_PATH=/home/vagrant/.rvm/gems/ruby-2.0.0-p353#global
The gemset ds-cabinet was used because there was app/.ruby-gemset file which contained ds-cabinet string.
When I specified ruby version and gemset explicitely, the command from host OS succeeded.
vagrant ssh -c 'cd app; rvm use ruby-2.0.0-p353#global; xvfb-run bundle exec cucumber'
Conclusion:
Despite there was app/.ruby-gemset pointed to the ds-cabinet gemset, actually Bundler, being called locally in guest OS shell, used the global gemset, while being called as remote command from host OS, it used the ds-cabinet gemset, which eventually was empty.
So, I set app/.ruby-gemset to global, and the host OS command done well.
I am having troubles doing bundle update
It seems to get stuck on these 3 weird gems..["spicycode-rcov", "jnunemaker-crack", "tenderlove-frex"] I have no idea what they are for or where they came from..
this is the last few lines of bundle update --verbose where it gets stuck
Unmet Dependencies: ["spicycode-rcov", "jnunemaker-crack", "tenderlove-frex"]
Fetching gem metadata from https://rubygems.org/
Query List: ["spicycode-rcov", "jnunemaker-crack", "tenderlove-frex"]
Query Gemcutter Dependency Endpoint API: spicycode-rcov jnunemaker-crack tenderlove-frex
Fetching from: https://rubygems.org/api/v1/dependencies?gems=spicycode-rcov,jnunemaker-crack,tenderlove-frex
HTTP Success
Query List: []
my gemfile is
source 'https://rubygems.org'
ruby "1.9.3"
gem 'rails'
gem 'pg'
gem 'devise'
gem 'devise_invitable'
gem 'thin'
gem 'geocoder'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'bootstrap-sass-rails'
gem 'uglifier', '>= 1.0.3'
end
gem 'paperclip'
gem 'aws-sdk'
gem "asset_sync"
group :development, :test do
gem "eventmachine", "~> 1.0.0.beta.4.1", :platform => [:mswin, :mingw]
gem 'rails-erd'
gem 'annotate', ">=2.5.0"
gem 'pry-rails'
gem 'lol_dba'
gem "rspec-rails"
gem "factory_girl_rails"
gem "guard-rspec"
end
group :test do
gem "faker"
gem "capybara"
gem "database_cleaner"
gem "launchy"
end
gem 'acts-as-taggable-on', '~> 2.3.1'
gem 'rails3-jquery-autocomplete'
gem 'tinymce-rails'
gem "aws-ses", "~> 0.4.4", :require => 'aws/ses'
gem 'jquery-rails'
gem 'jquery-ui-rails'
gem 'newrelic_rpm'
this is the gemfile.lock
GEM
remote: https://rubygems.org/
specs:
actionmailer (3.2.9)
actionpack (= 3.2.9)
mail (~> 2.4.4)
actionpack (3.2.9)
activemodel (= 3.2.9)
activesupport (= 3.2.9)
builder (~> 3.0.0)
erubis (~> 2.7.0)
journey (~> 1.0.4)
rack (~> 1.4.0)
rack-cache (~> 1.2)
rack-test (~> 0.6.1)
sprockets (~> 2.2.1)
activemodel (3.2.9)
activesupport (= 3.2.9)
builder (~> 3.0.0)
activerecord (3.2.9)
activemodel (= 3.2.9)
activesupport (= 3.2.9)
arel (~> 3.0.2)
tzinfo (~> 0.3.29)
activeresource (3.2.9)
activemodel (= 3.2.9)
activesupport (= 3.2.9)
activesupport (3.2.9)
i18n (~> 0.6)
multi_json (~> 1.0)
acts-as-taggable-on (2.3.3)
rails (~> 3.0)
addressable (2.3.2)
annotate (2.5.0)
rake
arel (3.0.2)
asset_sync (0.5.0)
activemodel
fog
aws-sdk (1.7.1)
httparty (~> 0.7)
json (~> 1.4)
nokogiri (>= 1.4.4)
uuidtools (~> 2.1)
aws-ses (0.4.4)
builder
mail (> 2.2.5)
mime-types
xml-simple
bcrypt-ruby (3.0.1-x86-mingw32)
bootstrap-sass-rails (2.2.1.1)
railties (~> 3.1)
sass-rails (~> 3.1)
builder (3.0.4)
capybara (2.0.0)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
selenium-webdriver (~> 2.0)
xpath (~> 1.0.0)
childprocess (0.3.6)
ffi (~> 1.0, >= 1.0.6)
choice (0.1.6)
cocaine (0.4.2)
coderay (1.0.8)
coffee-rails (3.2.2)
coffee-script (>= 2.2.0)
railties (~> 3.2.0)
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.4.0)
daemons (1.1.9)
database_cleaner (0.9.1)
devise (2.1.2)
bcrypt-ruby (~> 3.0)
orm_adapter (~> 0.1)
railties (~> 3.1)
warden (~> 1.2.1)
devise_invitable (1.1.2)
actionmailer (~> 3.0)
devise (>= 2.1.0)
railties (~> 3.0)
diff-lcs (1.1.3)
erubis (2.7.0)
eventmachine (1.0.0-x86-mingw32)
excon (0.16.10)
execjs (1.4.0)
multi_json (~> 1.0)
factory_girl (4.1.0)
activesupport (>= 3.0.0)
factory_girl_rails (4.1.0)
factory_girl (~> 4.1.0)
railties (>= 3.0.0)
faker (1.1.2)
i18n (~> 0.5)
ffi (1.1.5-x86-mingw32)
fog (1.7.0)
builder
excon (~> 0.14)
formatador (~> 0.2.0)
mime-types
multi_json (~> 1.0)
net-scp (~> 1.0.4)
net-ssh (>= 2.1.3)
nokogiri (~> 1.5.0)
ruby-hmac
formatador (0.2.4)
geocoder (1.1.5)
guard (1.5.4)
listen (>= 0.4.2)
lumberjack (>= 1.0.2)
pry (>= 0.9.10)
thor (>= 0.14.6)
guard-rspec (2.1.2)
guard (>= 1.1)
rspec (~> 2.11)
hike (1.2.1)
httparty (0.9.0)
multi_json (~> 1.0)
multi_xml
i18n (0.6.1)
journey (1.0.4)
jquery-rails (2.1.3)
railties (>= 3.1.0, < 5.0)
thor (~> 0.14)
jquery-ui-rails (2.0.2)
jquery-rails
railties (>= 3.1.0)
json (1.7.5)
launchy (2.1.2)
addressable (~> 2.3)
libwebsocket (0.1.6)
websocket
listen (0.5.3)
lol_dba (1.3.0)
actionpack (>= 3.0)
activerecord (>= 3.0)
railties (>= 3.0)
lumberjack (1.0.2)
mail (2.4.4)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
method_source (0.8.1)
mime-types (1.19)
multi_json (1.3.7)
multi_xml (0.5.1)
net-scp (1.0.4)
net-ssh (>= 1.99.1)
net-ssh (2.6.1)
newrelic_rpm (3.5.2.17)
nokogiri (1.5.5-x86-mingw32)
orm_adapter (0.4.0)
paperclip (3.3.1)
activemodel (>= 3.0.0)
activerecord (>= 3.0.0)
activesupport (>= 3.0.0)
cocaine (~> 0.4.0)
mime-types
pg (0.14.1-x86-mingw32)
polyglot (0.3.3)
pry (0.9.10-x86-mingw32)
coderay (~> 1.0.5)
method_source (~> 0.8)
slop (~> 3.3.1)
win32console (~> 1.3)
pry-rails (0.2.2)
pry (>= 0.9.10)
rack (1.4.1)
rack-cache (1.2)
rack (>= 0.4)
rack-ssl (1.3.2)
rack
rack-test (0.6.2)
rack (>= 1.0)
rails (3.2.9)
actionmailer (= 3.2.9)
actionpack (= 3.2.9)
activerecord (= 3.2.9)
activeresource (= 3.2.9)
activesupport (= 3.2.9)
bundler (~> 1.0)
railties (= 3.2.9)
rails-erd (1.0.0)
activerecord (>= 3.0)
activesupport (>= 3.0)
choice (~> 0.1.6)
ruby-graphviz (~> 1.0.4)
rails3-jquery-autocomplete (1.0.10)
rails (~> 3.0)
railties (3.2.9)
actionpack (= 3.2.9)
activesupport (= 3.2.9)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (>= 0.14.6, < 2.0)
rake (10.0.1)
rdoc (3.12)
json (~> 1.4)
rspec (2.12.0)
rspec-core (~> 2.12.0)
rspec-expectations (~> 2.12.0)
rspec-mocks (~> 2.12.0)
rspec-core (2.12.0)
rspec-expectations (2.12.0)
diff-lcs (~> 1.1.3)
rspec-mocks (2.12.0)
rspec-rails (2.12.0)
actionpack (>= 3.0)
activesupport (>= 3.0)
railties (>= 3.0)
rspec-core (~> 2.12.0)
rspec-expectations (~> 2.12.0)
rspec-mocks (~> 2.12.0)
ruby-graphviz (1.0.8)
ruby-hmac (0.4.0)
rubyzip (0.9.9)
sass (3.2.3)
sass-rails (3.2.5)
railties (~> 3.2.0)
sass (>= 3.1.10)
tilt (~> 1.3)
selenium-webdriver (2.26.0)
childprocess (>= 0.2.5)
libwebsocket (~> 0.1.3)
multi_json (~> 1.0)
rubyzip
slop (3.3.3)
sprockets (2.2.1)
hike (~> 1.2)
multi_json (~> 1.0)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
thin (1.5.0)
daemons (>= 1.0.9)
eventmachine (>= 0.12.6)
rack (>= 1.0.0)
thor (0.16.0)
tilt (1.3.3)
tinymce-rails (3.5.7.1)
railties (>= 3.1.1)
treetop (1.4.12)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.35)
uglifier (1.3.0)
execjs (>= 0.3.0)
multi_json (~> 1.0, >= 1.0.2)
uuidtools (2.1.3)
warden (1.2.1)
rack (>= 1.0)
websocket (1.0.2)
win32console (1.3.2-x86-mingw32)
xml-simple (1.1.2)
xpath (1.0.0)
nokogiri (~> 1.3)
PLATFORMS
x86-mingw32
DEPENDENCIES
acts-as-taggable-on (~> 2.3.1)
annotate (>= 2.5.0)
asset_sync
aws-sdk
aws-ses (~> 0.4.4)
bootstrap-sass-rails
capybara
coffee-rails (~> 3.2.1)
database_cleaner
devise
devise_invitable
eventmachine (~> 1.0.0.beta.4.1)
factory_girl_rails
faker
geocoder
guard-rspec
jquery-rails
jquery-ui-rails
launchy
lol_dba
newrelic_rpm
paperclip
pg
pry-rails
rails
rails-erd
rails3-jquery-autocomplete
rspec-rails
sass-rails (~> 3.2.3)
thin
tinymce-rails
uglifier (>= 1.0.3)
it is usually (almost always) a dependency issue..
something like that https://github.com/carlhuda/bundler/issues/1984
it seems that the best case I can find is to go over each gem version in the last working gemfile.lock and in the gemfile specify ~> which version to install.. go one by one until everything works well..
I've built a basic Rails app with Mongoid, Devise and Omniauth for Facebook login. I've got no problem running it locally, but when I try to push to Heroku, I'm getting this error:
"/app/app/controllers/Users/omniauth_callbacks_controller.rb:1:in `': uninitialized constant Users (NameError)"
I've Googled the hell out of this with little luck. I've committed the User model, I've ran "heroku run rake db:migrate", etc. No luck. Here's my stack.
Ruby 1.9.2
Rails 3.2.1
Gemfile:
require 'rbconfig'
HOST_OS = RbConfig::CONFIG['host_os']
source 'https://rubygems.org'
gem 'rails', '3.2.1'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
gem "bson_ext", ">= 1.6.1"
gem "mongoid"
gem "devise"
gem "zurb-foundation"
gem "omniauth"
gem 'omniauth-facebook'
gem 'gravatar_image_tag'
Gemfile.lock:
GEM
remote: https://rubygems.org/
specs:
actionmailer (3.2.1)
actionpack (= 3.2.1)
mail (~> 2.4.0)
actionpack (3.2.1)
activemodel (= 3.2.1)
activesupport (= 3.2.1)
builder (~> 3.0.0)
erubis (~> 2.7.0)
journey (~> 1.0.1)
rack (~> 1.4.0)
rack-cache (~> 1.1)
rack-test (~> 0.6.1)
sprockets (~> 2.1.2)
activemodel (3.2.1)
activesupport (= 3.2.1)
builder (~> 3.0.0)
activerecord (3.2.1)
activemodel (= 3.2.1)
activesupport (= 3.2.1)
arel (~> 3.0.0)
tzinfo (~> 0.3.29)
activeresource (3.2.1)
activemodel (= 3.2.1)
activesupport (= 3.2.1)
activesupport (3.2.1)
i18n (~> 0.6)
multi_json (~> 1.0)
addressable (2.2.7)
arel (3.0.2)
bcrypt-ruby (3.0.1)
bson (1.6.1)
bson_ext (1.6.1)
bson (~> 1.6.1)
builder (3.0.0)
coffee-rails (3.2.2)
coffee-script (>= 2.2.0)
railties (~> 3.2.0)
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.2.0)
devise (2.0.4)
bcrypt-ruby (~> 3.0)
orm_adapter (~> 0.0.3)
railties (~> 3.1)
warden (~> 1.1.1)
erubis (2.7.0)
execjs (1.3.0)
multi_json (~> 1.0)
faraday (0.7.6)
addressable (~> 2.2)
multipart-post (~> 1.1)
rack (~> 1.1)
gravatar_image_tag (1.0.0)
hashie (1.2.0)
hike (1.2.1)
i18n (0.6.0)
journey (1.0.3)
jquery-rails (2.0.2)
railties (>= 3.2.0, < 5.0)
thor (~> 0.14)
json (1.6.6)
mail (2.4.4)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mime-types (1.18)
mongo (1.6.1)
bson (~> 1.6.1)
mongoid (2.4.7)
activemodel (~> 3.1)
mongo (~> 1.3)
tzinfo (~> 0.3.22)
multi_json (1.2.0)
multipart-post (1.1.5)
oauth2 (0.5.2)
faraday (~> 0.7)
multi_json (~> 1.0)
omniauth (1.0.3)
hashie (~> 1.2)
rack
omniauth-facebook (1.2.0)
omniauth-oauth2 (~> 1.0.0)
omniauth-oauth2 (1.0.0)
oauth2 (~> 0.5.0)
omniauth (~> 1.0)
orm_adapter (0.0.7)
polyglot (0.3.3)
rack (1.4.1)
rack-cache (1.2)
rack (>= 0.4)
rack-ssl (1.3.2)
rack
rack-test (0.6.1)
rack (>= 1.0)
rails (3.2.1)
actionmailer (= 3.2.1)
actionpack (= 3.2.1)
activerecord (= 3.2.1)
activeresource (= 3.2.1)
activesupport (= 3.2.1)
bundler (~> 1.0)
railties (= 3.2.1)
railties (3.2.1)
actionpack (= 3.2.1)
activesupport (= 3.2.1)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (~> 0.14.6)
rake (0.9.2.2)
rdoc (3.12)
json (~> 1.4)
sass (3.1.15)
sass-rails (3.2.5)
railties (~> 3.2.0)
sass (>= 3.1.10)
tilt (~> 1.3)
sprockets (2.1.2)
hike (~> 1.2)
rack (~> 1.0)
tilt (~> 1.1, != 1.3.0)
thor (0.14.6)
tilt (1.3.3)
treetop (1.4.10)
polyglot
polyglot (>= 0.3.1)
tzinfo (0.3.32)
uglifier (1.2.4)
execjs (>= 0.3.0)
multi_json (>= 1.0.2)
warden (1.1.1)
rack (>= 1.0)
zurb-foundation (2.2.0.2)
jquery-rails (>= 1.0)
rails (~> 3.1)
PLATFORMS
ruby
DEPENDENCIES
bson_ext (>= 1.6.1)
coffee-rails (~> 3.2.1)
devise
gravatar_image_tag
jquery-rails
mongoid
omniauth
omniauth-facebook
rails (= 3.2.1)
sass-rails (~> 3.2.3)
uglifier (>= 1.0.3)
zurb-foundation
Controller:
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
def facebook
# You need to implement the method below in your model
#user = User.find_for_facebook_oauth(request.env["omniauth.auth"], current_user)
if #user.persisted?
flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "Facebook"
sign_in_and_redirect #user, :event => :authentication
else
session["devise.facebook_data"] = request.env["omniauth.auth"]
redirect_to new_user_registration_url
end
end
end
Any thoughts ?
I had this issue; I know it's a late answer but I wanted to add this for whoever needed it.
Make sure that your OmniauthCallbacksController IS IN A users FOLDER. "app/controllers/users/omniauth_callbacks_controller.rb"
Just thought I'd add that I had this issue and that the above solutions didn't work for me. It turns out the cause in my case was that Devise had capitalized the Users subfolder's name (/app/app/controllers/Users). Deleting the folder from git and then readding it with the proper lowercase name of "users" (/app/app/controllers/users) solved my issue.
Unlikely, but if you used "rails generate scaffold", or "rails generate controller" to create the controller, you need to "git add -A" to add all the newly created files to your repository. (1) git add -A (2) git commit -m "new files added" (3) git push [assuming you're also using a remote repo] (4) git push heroku master (5) heroku run rake db:migrate
This would be a "Rookie Mistake", but would explain the error above. Don't ask how I know!
Bundler keeps install sqlite3 every time, but i'm not using it in my project. I've chosen Postgres, but can not deploy it to Heroku. Bundler is the reason for that. Why it is? And what should i do?
I was trying to make separate gemset for that. I cleared and reinstalled all gems. But every time sqlite comes to my "bundle install" log:
.......
Using sqlite3 (1.3.4)
Using sqlite3-ruby (1.3.3)
Using taps (0.3.23)
Using thin (1.2.11)
Using turn (0.8.2)
Using uglifier (1.0.3)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
My Gemfile:
source 'http://rubygems.org'
gem 'rails', '3.1.0'
gem "jquery-rails"
gem 'sorcery'
gem 'simple_form'
gem 'cocoon'
gem 'thin'
gem 'heroku'
gem 'taps'
gem 'pg'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
end
group :development do
gem "cucumber-rails"
gem "capybara"
gem "rspec-rails", ">= 2.0.1"
end
group :test do
gem 'turn', :require => false
gem "cucumber-rails"
gem "capybara"
gem "rspec-rails", ">= 2.0.1"
gem "database_cleaner"
gem "factory_girl_rails"
end
Help pls, what's wrong?
UPDATE:
Added Gemfile.lock:
GEM
remote: http://rubygems.org/
specs:
actionmailer (3.1.0)
actionpack (= 3.1.0)
mail (~> 2.3.0)
actionpack (3.1.0)
activemodel (= 3.1.0)
activesupport (= 3.1.0)
builder (~> 3.0.0)
erubis (~> 2.7.0)
i18n (~> 0.6)
rack (~> 1.3.2)
rack-cache (~> 1.0.3)
rack-mount (~> 0.8.2)
rack-test (~> 0.6.1)
sprockets (~> 2.0.0)
activemodel (3.1.0)
activesupport (= 3.1.0)
bcrypt-ruby (~> 3.0.0)
builder (~> 3.0.0)
i18n (~> 0.6)
activerecord (3.1.0)
activemodel (= 3.1.0)
activesupport (= 3.1.0)
arel (~> 2.2.1)
tzinfo (~> 0.3.29)
activeresource (3.1.0)
activemodel (= 3.1.0)
activesupport (= 3.1.0)
activesupport (3.1.0)
multi_json (~> 1.0)
addressable (2.2.6)
ansi (1.3.0)
arel (2.2.1)
bcrypt-ruby (3.0.1)
builder (3.0.0)
capybara (1.1.1)
mime-types (>= 1.16)
nokogiri (>= 1.3.3)
rack (>= 1.0.0)
rack-test (>= 0.5.4)
selenium-webdriver (~> 2.0)
xpath (~> 0.1.4)
childprocess (0.2.2)
ffi (~> 1.0.6)
cocoon (1.0.12)
coffee-rails (3.1.1)
coffee-script (>= 2.2.0)
railties (~> 3.1.0)
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.1.2)
cucumber (1.0.6)
builder (>= 2.1.2)
diff-lcs (>= 1.1.2)
gherkin (~> 2.4.18)
json (>= 1.4.6)
term-ansicolor (>= 1.0.6)
cucumber-rails (1.0.5)
capybara (>= 1.1.1)
cucumber (~> 1.0.6)
nokogiri (>= 1.5.0)
daemons (1.1.4)
database_cleaner (0.6.7)
diff-lcs (1.1.3)
erubis (2.7.0)
eventmachine (0.12.10)
execjs (1.2.8)
multi_json (~> 1.0)
factory_girl (2.1.2)
activesupport
factory_girl_rails (1.2.0)
factory_girl (~> 2.1.0)
railties (>= 3.0.0)
faraday (0.6.1)
addressable (~> 2.2.4)
multipart-post (~> 1.1.0)
rack (< 2, >= 1.1.0)
ffi (1.0.9)
gherkin (2.4.21)
json (>= 1.4.6)
heroku (2.8.4)
launchy (>= 0.3.2)
rest-client (~> 1.6.1)
rubyzip
term-ansicolor (~> 1.0.5)
hike (1.2.1)
i18n (0.6.0)
jquery-rails (1.0.14)
railties (~> 3.0)
thor (~> 0.14)
json (1.6.1)
json_pure (1.6.1)
launchy (2.0.5)
addressable (~> 2.2.6)
mail (2.3.0)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mime-types (1.16)
multi_json (1.0.3)
multipart-post (1.1.3)
nokogiri (1.5.0)
oauth (0.4.5)
oauth2 (0.4.1)
faraday (~> 0.6.1)
multi_json (>= 0.0.5)
pg (0.11.0)
polyglot (0.3.2)
rack (1.3.3)
rack-cache (1.0.3)
rack (>= 0.4)
rack-mount (0.8.3)
rack (>= 1.0.0)
rack-ssl (1.3.2)
rack
rack-test (0.6.1)
rack (>= 1.0)
rails (3.1.0)
actionmailer (= 3.1.0)
actionpack (= 3.1.0)
activerecord (= 3.1.0)
activeresource (= 3.1.0)
activesupport (= 3.1.0)
bundler (~> 1.0)
railties (= 3.1.0)
railties (3.1.0)
actionpack (= 3.1.0)
activesupport (= 3.1.0)
rack-ssl (~> 1.3.2)
rake (>= 0.8.7)
rdoc (~> 3.4)
thor (~> 0.14.6)
rake (0.9.2)
rdoc (3.9.4)
rest-client (1.6.7)
mime-types (>= 1.16)
rspec (2.6.0)
rspec-core (~> 2.6.0)
rspec-expectations (~> 2.6.0)
rspec-mocks (~> 2.6.0)
rspec-core (2.6.4)
rspec-expectations (2.6.0)
diff-lcs (~> 1.1.2)
rspec-mocks (2.6.0)
rspec-rails (2.6.1)
actionpack (~> 3.0)
activesupport (~> 3.0)
railties (~> 3.0)
rspec (~> 2.6.0)
rubyzip (0.9.4)
sass (3.1.7)
sass-rails (3.1.2)
actionpack (~> 3.1.0)
railties (~> 3.1.0)
sass (>= 3.1.4)
sprockets (~> 2.0.0)
tilt (~> 1.3.2)
selenium-webdriver (2.7.0)
childprocess (>= 0.2.1)
ffi (>= 1.0.7)
json_pure
rubyzip
sequel (3.20.0)
simple_form (1.5.2)
actionpack (~> 3.0)
activemodel (~> 3.0)
sinatra (1.0)
rack (>= 1.0)
sorcery (0.6.1)
bcrypt-ruby (~> 3.0.0)
oauth (~> 0.4.4)
oauth (~> 0.4.4)
oauth2 (~> 0.4.1)
oauth2 (~> 0.4.1)
sprockets (2.0.0)
hike (~> 1.2)
rack (~> 1.0)
tilt (!= 1.3.0, ~> 1.1)
sqlite3 (1.3.4)
sqlite3-ruby (1.3.3)
sqlite3 (>= 1.3.3)
taps (0.3.23)
rack (>= 1.0.1)
rest-client (< 1.7.0, >= 1.4.0)
sequel (~> 3.20.0)
sinatra (~> 1.0.0)
sqlite3-ruby (~> 1.2)
term-ansicolor (1.0.6)
thin (1.2.11)
daemons (>= 1.0.9)
eventmachine (>= 0.12.6)
rack (>= 1.0.0)
thor (0.14.6)
tilt (1.3.3)
treetop (1.4.10)
polyglot
polyglot (>= 0.3.1)
turn (0.8.2)
ansi (>= 1.2.2)
tzinfo (0.3.29)
uglifier (1.0.3)
execjs (>= 0.3.0)
multi_json (>= 1.0.2)
xpath (0.1.4)
nokogiri (~> 1.3)
PLATFORMS
ruby
DEPENDENCIES
capybara
cocoon
coffee-rails (~> 3.1.0)
cucumber-rails
database_cleaner
factory_girl_rails
heroku
jquery-rails
pg
rails (= 3.1.0)
rspec-rails (>= 2.0.1)
sass-rails (~> 3.1.0)
simple_form
sorcery
taps
thin
turn
uglifier
(Even though you've figured it out, i'll put it here incase for some reason people don't read the comments)
The 'taps' gem (http://rubygems.org/gems/taps) that you've required in your Gemfile has a runtine dependancy on the 'sqlite3-ruby' gem.
You can ususally find out where strange dependencies come from by looking in your Gemfile.lock file, as you can see here...
taps (0.3.23)
rack (>= 1.0.1)
rest-client (< 1.7.0, >= 1.4.0)
sequel (~> 3.20.0)
sinatra (~> 1.0.0)
sqlite3-ruby (~> 1.2)
Each gem will be listed with its runtime dependencies along with the version that it needs.