Problem with Heroku_Accounts and Bundler - ruby-on-rails-3

I have been pushing projects to Heroku without any issues. Just installed the Heroku_Accounts plugin (which I am excited to use!). Now I am having the following problem when I push to heroku:
$ git push heroku master
Counting objects: 1338, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (1103/1103), done.
Writing objects: 100% (1338/1338), 1.27 MiB, done.
Total 1338 (delta 694), reused 417 (delta 182)
-----> Heroku receiving push
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
Installing rails3_serve_static_assets... done
-----> Configure Rails 3 to disable x-sendfile
Installing rails3_disable_x_sendfile... done
-----> Configure Rails to log to stdout
Installing rails_log_stdout... done
-----> Gemfile detected, running Bundler version 1.0.7
Unresolved dependencies detected; Installing...
Using --without development:test
Fetching source index for http://rubygems.org/
Installing rake (0.9.2)
Installing abstract (1.0.0)
Installing activesupport (3.0.4)
Installing builder (2.1.2)
Installing i18n (0.6.0)
Installing activemodel (3.0.4)
Installing erubis (2.6.6)
Installing rack (1.2.3)
Installing rack-mount (0.6.14)
Installing rack-test (0.5.7)
Installing tzinfo (0.3.29)
Installing actionpack (3.0.4)
Installing mime-types (1.16)
Installing polyglot (0.3.1)
Installing treetop (1.4.9)
Installing mail (2.2.19)
Installing actionmailer (3.0.4)
Installing arel (2.0.10)
Installing activerecord (3.0.4)
Installing activeresource (3.0.4)
Installing braintree (2.6.1)
Installing client_side_validations (3.0.4)
Installing columnize (0.3.4)
Installing gravatar_image_tag (1.0.0.pre2)
Installing rbx-require-relative (0.0.5) /usr/ruby1.9.2/lib/ruby/1.9.1/rubygems/installer.rb:164:in `install': rbx-require-relative requires Ruby version ~> 1.8.7. (Gem::InstallError)
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/source.rb:95:in `install'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:55:in `block in run'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `block in each'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:44:in `run'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/installer.rb:8:in `install'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/cli.rb:225:in `install'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/task.rb:22:in `run'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor.rb:246:in `dispatch'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/lib/bundler/vendor/thor/base.rb:389:in `start'
from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/bundler-1.0.7/bin/bundle:13:in `<top (required)>'
from /usr/ruby1.9.2/bin/bundle:19:in `load'
from /usr/ruby1.9.2/bin/bundle:19:in `<main>'
FAILED: http://devcenter.heroku.com/articles/bundler
! Heroku push rejected, failed to install gems via Bundler
To git#heroku.com:cold-warrior-388.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git#heroku.com:cold-warrior-388.git'
daniel-kents-macbook-pro:steepr Daniel$
Here are my remote urls:
$ git remote -v
heroku git#heroku.com:cold-warrior-388.git (fetch)
heroku git#heroku.com:cold-warrior-388.git (push)
origin git#github.com:steepr.git (fetch)
origin git#github.com:steepr.git (push)
Here is my .ssh/config
# default
Host github.com
HostName github.com
User git
IdentityFile /Users/Daniel/.ssh/id_rsa
# steepr
Host github-steepr
HostName github.com
User git
IdentityFile /Users/Daniel/.ssh/steepr.id_rsa.pub
Host heroku.steepr
HostName heroku.com
IdentityFile ~/.ssh/identity.heroku.steepr
IdentitiesOnly yes
Host heroku.personal
HostName heroku.com
IdentityFile ~/.ssh/identity.heroku.personal
IdentitiesOnly yes
Like I said, was pushing to heroku fine before adding Heroku_Accounts. Does the plugin do something to Bundler? to my gems?
THank you.

I solved the issue by commenting out gem 'Ruby-debug'. This was something I read elsewhere on Stackoverflow, but when I tried it the first time it didn't work. I am not sure what I did wrong the first time, but if you try this approach, make sure you:
(1) bundle install
(2) commit and push to git
(3) THEN push to heroku
Good Luck!
#thatdankent

Related

Heroku error when deploying Rails app

I need help with the following error. I'm trying to deploy Rails 4 app on Heroku..
It seems like gems can't be installed. Whan can I do about it?
I've tried to solve this using some "googling" solutions but nothing seems to work. And yes I have put sqlite and postgresql in the right group in gemfile (production/developement).
Any thoughts?
Here is the bash procedure when deploying:
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
Fetching gem metadata from https://rubygems.org/..........
Fetching additional metadata from https://rubygems.org/..
Installing i18n (0.6.9)
Installing multi_json (1.9.2)
Installing minitest (4.7.5)
Installing rake (10.3.1)
Installing builder (3.1.4)
Installing thread_safe (0.3.3)
Installing erubis (2.7.0)
Installing tzinfo (0.3.39)
Installing mime-types (1.25.1)
Installing rack (1.5.2)
Installing polyglot (0.3.4)
Installing activerecord-deprecated_finders (1.0.3)
Installing arel (4.0.2)
Installing coffee-script-source (1.7.0)
Installing execjs (2.0.2)
Installing chunky_png (1.3.1)
Installing thor (0.19.1)
Installing commonjs (0.2.7)
Installing orm_adapter (0.5.0)
Installing hike (1.2.3)
Installing bcrypt (3.1.7)
Installing json (1.8.1)
Using bundler (1.5.2)
Installing libv8 (3.16.14.3)
Installing tilt (1.4.1)
Installing rails_serve_static_assets (0.0.2)
Installing rails_stdout_logging (0.0.3)
Installing ref (1.0.5)
Installing sass (3.2.19)
Installing activesupport (4.0.2)
Installing rack-test (0.6.2)
Installing warden (1.2.3)
Installing treetop (1.4.15)
Installing coffee-script (2.2.0)
Installing rdoc (4.1.1)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/ruby-2.0.0/bin/ruby extconf.rb
checking for sndfile.h in /opt/local/include,/usr/local/include,C:/Program Files (x86)/Mega-Nerd/libsndfile/include,C:/Program Files/Mega-Nerd/libsndfile/include... no
checking for sf_open() in -lsndfile-1... no
checking for sf_open() in -lsndfile... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/ruby-2.0.0/bin/ruby
--with-sndfile-dir
--without-sndfile-dir
--with-sndfile-include
--without-sndfile-include=${sndfile-dir}/include
--with-sndfile-lib
--without-sndfile-lib=${sndfile-dir}/
--with-sndfile-1lib
--without-sndfile-1lib
--with-sndfilelib
--without-sndfilelib
extconf.rb:21:in `<main>': Can't find libsndfile (http://www.mega-nerd.com/libsndfile/) (RuntimeError)
Try passing --with-sndfile-dir or --with-sndfile-lib and --with-sndfile-include
options to extconf. If there are spaces in the path on windows, it may not work.
Gem files will remain installed in /tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/bundle/ruby/2.0.0/gems/ruby-audio-1.6.1 for inspection.
Results logged to /tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/bundle/ruby/2.0.0/gems/ruby-audio-1.6.1/ext/rubyaudio_ext/gem_make.out
Installing uglifier (2.5.0)
Installing less (2.5.0)
Installing pg (0.17.1)
An error occurred while installing ruby-audio (1.6.1), and Bundler cannot
continue.
Make sure that `gem install ruby-audio -v '1.6.1'` succeeds before bundling.
Bundler Output: Fetching gem metadata from https://rubygems.org/..........
Fetching additional metadata from https://rubygems.org/..
Installing i18n (0.6.9)
Installing multi_json (1.9.2)
Installing minitest (4.7.5)
Installing rake (10.3.1)
Installing builder (3.1.4)
Installing thread_safe (0.3.3)
Installing erubis (2.7.0)
Installing tzinfo (0.3.39)
Installing mime-types (1.25.1)
Installing rack (1.5.2)
Installing polyglot (0.3.4)
Installing activerecord-deprecated_finders (1.0.3)
Installing arel (4.0.2)
Installing coffee-script-source (1.7.0)
Installing execjs (2.0.2)
Installing chunky_png (1.3.1)
Installing thor (0.19.1)
Installing commonjs (0.2.7)
Installing orm_adapter (0.5.0)
Installing hike (1.2.3)
Installing bcrypt (3.1.7)
Installing json (1.8.1)
Using bundler (1.5.2)
Installing libv8 (3.16.14.3)
Installing tilt (1.4.1)
Installing rails_serve_static_assets (0.0.2)
Installing rails_stdout_logging (0.0.3)
Installing ref (1.0.5)
Installing sass (3.2.19)
Installing activesupport (4.0.2)
Installing rack-test (0.6.2)
Installing warden (1.2.3)
Installing treetop (1.4.15)
Installing coffee-script (2.2.0)
Installing rdoc (4.1.1)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/ruby-2.0.0/bin/ruby extconf.rb
checking for sndfile.h in /opt/local/include,/usr/local/include,C:/Program Files (x86)/Mega-Nerd/libsndfile/include,C:/Program Files/Mega-Nerd/libsndfile/include... no
checking for sf_open() in -lsndfile-1... no
checking for sf_open() in -lsndfile... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/ruby-2.0.0/bin/ruby
--with-sndfile-dir
--without-sndfile-dir
--with-sndfile-include
--without-sndfile-include=${sndfile-dir}/include
--with-sndfile-lib
--without-sndfile-lib=${sndfile-dir}/
--with-sndfile-1lib
--without-sndfile-1lib
--with-sndfilelib
--without-sndfilelib
extconf.rb:21:in `<main>': Can't find libsndfile (http://www.mega-nerd.com/libsndfile/) (RuntimeError)
Try passing --with-sndfile-dir or --with-sndfile-lib and --with-sndfile-include
options to extconf. If there are spaces in the path on windows, it may not work.
Gem files will remain installed in /tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/bundle/ruby/2.0.0/gems/ruby-audio-1.6.1 for inspection.
Results logged to /tmp/build_55f006e8-de4b-4dcc-9c81-39f56d6f8f04/vendor/bundle/ruby/2.0.0/gems/ruby-audio-1.6.1/ext/rubyaudio_ext/gem_make.out
Installing uglifier (2.5.0)
Installing less (2.5.0)
Installing pg (0.17.1)
An error occurred while installing ruby-audio (1.6.1), and Bundler cannot
continue.
Make sure that `gem install ruby-audio -v '1.6.1'` succeeds before bundling.
Failed to install gems via Bundler.
Push rejected, failed to compile Ruby app
To git#heroku.com:quiet-waters-5319.git
[remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git#heroku.com:quiet-waters-5319.git'
seems heroku isn't able to build the native parts of required ruby-audio. After a quick search on "ruby-audio heroku" I found this: https://github.com/khurramzaman/ruby-audio-heroku

What's wrong with Bundler working with RubyGems to push a Git repo to Heroku?

I've made sure that all the files are in the root of the repository as recommended in this discussion. However, as I follow the instructions in this section of the book, I can't get through the section without the problems. What do you think is happening with my system that's causing the error? I have no clue at the moment of what the problem means despite reading the following in the log. Thanks in advance for your help!
stanley#ubuntu:~/rails_sample/first_app$ git push heroku master
Warning: Permanently added the RSA host key for IP address '50.19.85.156' to the list of known hosts.
Counting objects: 96, done.
Compressing objects: 100% (79/79), done.
Writing objects: 100% (96/96), 28.81 KiB, done.
Total 96 (delta 22), reused 0 (delta 0)
-----> Heroku receiving push
-----> Ruby/Rails app detected
-----> Installing dependencies using Bundler version 1.2.0.pre
Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment
Fetching gem metadata from https://rubygems.org/.......
Installing rake (0.9.2.2)
Installing i18n (0.6.0)
Installing multi_json (1.3.5)
Installing activesupport (3.2.3)
Installing builder (3.0.0)
Installing activemodel (3.2.3)
Installing erubis (2.7.0)
Installing journey (1.0.3)
Installing rack (1.4.1)
Installing rack-cache (1.2)
Installing rack-test (0.6.1)
Installing hike (1.2.1)
Installing tilt (1.3.3)
Installing sprockets (2.1.3)
Installing actionpack (3.2.3)
Installing mime-types (1.18)
Installing polyglot (0.3.3)
Installing treetop (1.4.10)
Installing mail (2.4.4)
Installing actionmailer (3.2.3)
Installing arel (3.0.2)
Installing tzinfo (0.3.33)
Installing activerecord (3.2.3)
Installing activeresource (3.2.3)
Installing coffee-script-source (1.3.3)
Installing execjs (1.3.2)
Installing coffee-script (2.2.0)
Installing rack-ssl (1.3.2)
Installing json (1.7.3) with native extensions
Installing rdoc (3.12)
Installing thor (0.14.6)
Installing railties (3.2.3)
Installing coffee-rails (3.2.2)
Installing jquery-rails (2.0.2)
Using bundler (1.2.0.pre)
Installing rails (3.2.3)
Installing sass (3.1.18)
Installing sass-rails (3.2.5)
Installing sqlite3 (1.3.6) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/local/bin/ruby extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal'
or 'yum install sqlite-devel' and check your shared library search path (the
location where your sqlite3 shared library is located).
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/local/bin/ruby
--with-sqlite3-dir
--without-sqlite3-dir
--with-sqlite3-include
--without-sqlite3-include=${sqlite3-dir}/include
--with-sqlite3-lib
--without-sqlite3-lib=${sqlite3-dir}/lib
--enable-local
--disable-local
Gem files will remain installed in /tmp/build_3tplrxvj7qa81/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.6 for inspection.
Results logged to /tmp/build_3tplrxvj7qa81/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.6/ext/sqlite3/gem_make.out
An error occurred while installing sqlite3 (1.3.6), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.3.6'` succeeds before bundling.
!
! Failed to install gems via Bundler.
!
! Heroku push rejected, failed to compile Ruby/rails app
To git#heroku.com:growing-mountain-2788.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git#heroku.com:growing-mountain-2788.git'
------Gemfile------------------------
As requested, here's the auto-generated gemfile:
source 'https://rubygems.org'
gem 'rails', '3.2.3'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
gem 'sqlite3'
gem 'json'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', :platform => :ruby
gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
# To use Jbuilder templates for JSON
# gem 'jbuilder'
# Use unicorn as the app server
# gem 'unicorn'
# Deploy with Capistrano
# gem 'capistrano'
# To use debugger
# gem 'ruby-debug'
Heroku tries to use postgres automatically. (good thing, as sqlite is NOT suitable for prosuction)
The sqlite scripts are compatible with postgres, so no change is required.
Do this in your Gemfile :
gem "sqlite3", :groups => [:development, :test]
gem "pg", groups => [:production]
Be aware that there might be behavior differences between sqlite and postgres. It is strongly recommended to use postgres on your development environment
see https://devcenter.heroku.com/articles/how-do-i-use-sqlite3-for-development
The problem is missing headers files to sqlite3 on the server and gem cannot build the extension. Do you need sqlite? Try remove it from Gemfile or if this is possible install sqlite3-dev package on the server.
I had this same problem, the problem went away when I completed my push to GitHub.
I needed to complete this step:
$ git remote add origin ...
$ git push -u origin master
After that it pushed to heroku without any problems.
Replace the SQLite gem with postgres's pg gem. Heroku uses Postgres and you don't need SQLite in production mode anyway.
Replace sqlite in your Gemfile with 'gem pg'
Heroku use PostgreSQL, not SQLite.
Follow this instructions to solve your problem https://devcenter.heroku.com/articles/rails3

Trouble installing Mongoid with Rails 3 on Windows

In my Gemfile:
gem "mongoid", "~> 2.3"
gem "bson_ext", "~> 1.4"
When I run bundle install I get the error below:
Bundler could not find compatible versions for gem "activemodel":
In Gemfile:
mongoid (~> 2.3) x86-mingw32 depends on
activemodel (~> 3.1) x86-mingw32
rails (= 3.0.6) x86-mingw32 depends on
activemodel (3.0.6)
I've tried pointing to github for the version, as is suggested in some other posts, but when I do this and run bundle install, I get another error:
Fetching http://github.com/mongoid/mongoid.git
C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/source.rb:579:in
``': No such file or directory - git clone "http://github.com/mongoid/mongoid.gi
t" "C:/Ruby192/lib/ruby/gems/1.9.1/cache/bundler/git/mongoid-96bbbaf83f2d1e3487e
c2c95b9e5148015a7a346" --bare --no-hardlinks (Errno::ENOENT)
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/sour
ce.rb:579:in `git'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/sour
ce.rb:653:in `cache'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/sour
ce.rb:551:in `specs'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/defi
nition.rb:356:in `block in converge_locked_specs'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/defi
nition.rb:345:in `each'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/defi
nition.rb:345:in `converge_locked_specs'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/defi
nition.rb:143:in `resolve'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.21/lib/bundler/defi
nition.rb:90:in `specs'
Any tips are appreciated. Thanks!
If I recall correctly, bson_ext needs to be built natively. This means that somehow you must build it on Windows. The errors are pointing to x86-mingw32, which can be downloaded from here
The reason you would need that is because there are a couple of libraries that are platform dependent. Hope this sets you in the right direction.

git push heroku failing because trying to install development gems. BUNDLE_WITHOUT command not working

I get an error after issuing the git push heroku command. This initially looked like something to be solved by using the heroku config command to bundle without the development:test gems. However, I used that command as discussed in this similar writeup [ Heroku's trying to install development gems even after I've told it not to ] and it still doesn't work.
The line "Using --without development:test" in the push message below seems to indicate the BUNDLE_WITHOUT config command worked, so maybe this is a gemfile or other issue?
Thanks!
$ git push heroku
Counting objects: 64, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (42/42), done.
Writing objects: 100% (48/48), 6.03 KiB, done.
Total 48 (delta 15), reused 0 (delta 0)
-----> Heroku receiving push
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
Installing rails3_serve_static_assets... done
-----> Configure Rails 3 to disable x-sendfile
Installing rails3_disable_x_sendfile... done
-----> Configure Rails to log to stdout
Installing rails_log_stdout... done
-----> Gemfile detected, running Bundler version 1.0.7
Unresolved dependencies detected; Installing...
Using --without development:test
Fetching source index for http://rubygems.org/
Installing rake (0.8.7)
Installing ZenTest (4.5.0)
Installing abstract (1.0.0)
Installing activesupport (3.0.3)
Installing builder (2.1.2)
Installing i18n (0.5.0)
Installing activemodel (3.0.3)
Installing erubis (2.6.6)
Installing rack (1.2.2)
Installing rack-mount (0.6.14)
Installing rack-test (0.5.7)
Installing tzinfo (0.3.25)
Installing actionpack (3.0.3)
Installing mime-types (1.16)
Installing polyglot (0.3.1)
Installing treetop (1.4.9)
Installing mail (2.2.15)
Installing actionmailer (3.0.3)
Installing arel (2.0.9)
Installing activerecord (3.0.3)
Installing activeresource (3.0.3)
Installing autotest (4.4.6)
Installing sys-uname (0.8.5) with native extensions
Installing autotest-fsevent (0.2.5) with native extensions /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/installer.rb:483:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
/usr/ruby1.8.7/bin/ruby extconf.rb
extconf.rb:19: Only Darwin (Mac OS X) systems are supported (RuntimeError)
Gem files will remain installed in /disk1/tmp/build_258oz7hi5972n/.bundle/gems/ruby/1.8/gems/autotest-fsevent-0.2.5 for inspection.
Results logged to /disk1/tmp/build_258oz7hi5972n/.bundle/gems/ruby/1.8/gems/autotest-fsevent-0.2.5/ext/fsevent/gem_make.out
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/installer.rb:446:in `each'
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/installer.rb:446:in `build_extensions'
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/installer.rb:198:in `install'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/source.rb:95:in `install'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/installer.rb:55:in `run'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/spec_set.rb:12:in `each'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/installer.rb:44:in `run'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/installer.rb:8:in `install'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/cli.rb:225:in `install'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/vendor/thor/task.rb:22:in `send'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/vendor/thor/task.rb:22:in `run'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/vendor/thor.rb:246:in `dispatch'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/vendor/thor/base.rb:389:in `start'
from /usr/ruby1.8.7/lib/ruby/gems/1.8/gems/bundler-1.0.7/bin/bundle:13
from /usr/ruby1.8.7/bin/bundle:19:in `load'
from /usr/ruby1.8.7/bin/bundle:19
FAILED: http://devcenter.heroku.com/articles/bundler
! Heroku push rejected, failed to install gems via Bundler
error: hooks/pre-receive exited with error code 1
To git#heroku.com:blooming-mountain-199.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git#heroku.com:blooming-mountain-199.git'
Gemfile...
source 'http://rubygems.org'
gem 'rails', '3.0.3'
gem 'sqlite3', '1.3.3', :require => 'sqlite3'
gem 'gravatar_image_tag', '1.0.0.pre2'
gem 'will_paginate', '3.0.pre2'
gem "nokogiri"
gem "geokit"
gem "rack", "~>1.1"
group :development, :test do
gem 'rspec-rails', '2.5.0'
gem 'annotate-models', '1.0.4'
gem 'faker', '0.3.1'
gem 'autotest-fsevent' if RUBY_PLATFORM =~ /darwin/
gem 'rspec', '2.5.0'
gem 'webrat', '0.7.1'
gem 'spork', '0.9.0.rc4'
gem 'factory_girl_rails', '1.0'
gem 'ZenTest'
gem 'autotest'
gem 'autotest-rails'
gem 'autotest-growl'
end
Well, the problem is clearly with the autotest-fsevent getting loaded when you push to Heroku, which is not Darwin-based. Although you do have a conditional following the gem 'autotest-fsevent' statement, the gem is still trying to load when you deploy to Heroku. There are two likely causes for this.
The first, is that another gem is requiring it. If nothing else, autotest-growl should also be Darwin-only. I'm not sure these are related, but I'd still double-check.
The next issue is to make sure that Gemfile.lock isn't getting pushed. If you last ran bundle install on Darwin, it's possible that the gem got locked into the dependencies that way. git rm Gemfile.lock before you commit and push to Heroku.
Finally, my favored solution is not to use autotest. I'm not sure if that's an option for you, but I found it to be annoying when I did use it I use RSpec and Cucumber. I realize this last suggestion is a non-answer, but I don't like including platform-dependent gems even in testing, just because when you go to staging, little annoyances like this have a tendency of cropping up.
I'm not sure why Rails Tutorial is still using ZenTest and autotest, I don't know anyone who does... that might be changing, a friend went to the Rails Tutorial session at RailsConf and said Michael was actually noting errata during the tutorial, so maybe it'll be different in a future version.
As a final note, out of curiosity, if you are on OS X, how did you install Ruby? It's in a very odd place.

Ruby on Rails - linecache error while trying to ' bundle install '

Hi I'm trying to run bundle install on my windows machine it runs fine until it reaches the linecache and then spits out a huge error:
Fetching source index for http://rubygems.org/
Using rake (0.8.7)
Using abstract (1.0.0)
Using activesupport (3.0.3)
Using builder (2.1.2)
Using i18n (0.5.0)
Using activemodel (3.0.3)
Using erubis (2.6.6)
Using rack (1.2.2)
Using rack-mount (0.6.14)
Using rack-test (0.5.7)
Using tzinfo (0.3.26)
Using actionpack (3.0.3)
Using mime-types (1.16)
Using polyglot (0.3.1)
Using treetop (1.4.9)
Using mail (2.2.17)
Using actionmailer (3.0.3)
Using arel (2.0.9)
Using activerecord (3.0.3)
Using activeresource (3.0.3)
Using bundler (1.0.12)
Using thor (0.14.6)
Using railties (3.0.3)
Using rails (3.0.3)
Using render_component_vho (3.0.3)
Using verification (1.0.1)
Using active_scaffold_vho (3.0.19)
Using columnize (0.3.2)
Installing linecache (0.43) with native extensions C:/Ruby192/lib/ruby/site_ruby
/1.9.1/rubygems/installer.rb:533:in `rescue in block in build_extensions': ERROR
: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)
C:/Ruby192/bin/ruby.exe extconf.rb
Can't handle 1.9.x yet
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=C:/Ruby192/bin/ruby
Gem files will remain installed in C:/Ruby192/lib/ruby/gems/1.9.1/gems/linecache
-0.43 for inspection.
Results logged to C:/Ruby192/lib/ruby/gems/1.9.1/gems/linecache-0.43/ext/gem_mak
e.out
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:511:in `b
lock in build_extensions'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:486:in `e
ach'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:486:in `b
uild_extensions'
from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:159:in `i
nstall'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/sour
ce.rb:96:in `install'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/inst
aller.rb:55:in `block in run'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/spec
_set.rb:12:in `block in each'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/spec
_set.rb:12:in `each'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/spec
_set.rb:12:in `each'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/inst
aller.rb:44:in `run'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/inst
aller.rb:8:in `install'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/cli.
rb:225:in `install'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/vend
or/thor/task.rb:22:in `run'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/vend
or/thor/invocation.rb:118:in `invoke_task'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/vend
or/thor.rb:246:in `dispatch'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/lib/bundler/vend
or/thor/base.rb:389:in `start'
from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.12/bin/bundle:13:in
`<top (required)>'
from C:/Ruby192/bin/bundle:19:in `load'
from C:/Ruby192/bin/bundle:19:in `<main>'
I've tried googling for the problem and found two posts that explain the problem that I have first is a Stackoveflow Post which is pretty close to what I've got, but upon further inspection I found that the solution given in that post was not what I needed
another is this post that seems to discuss the exact problem that I have but doesn't give a solution anyone have any idea what I should do??
Ruby Version => 1.9.2
Rails Version => oh come on it doesn't even tell rails version it just prints out another error
Could not find linecache-0.43 in any of the sources
Try running `bundle install`.
any ideas what I'm doing wrong?? any help would be immensely appreciated
You should try installing linecache19 instead of linecache. The gem you are trying to install is incompatible with Ruby version 1.9.2.
This is also suggested by the error message:
Can't handle 1.9.x yet
"debugger" gems has worked more flawless for me lately.
I switched from ruby-debug19 to debugger which installs the dependencies without any hassle.
1.9.2-p136 + RVM. Worked using ruby-debug19 which installs linecache19 as a dependency:
gem install ruby-debug19 -- --with-ruby-include=$rvm_path/src/ruby-1.9.2-p136/