Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Heroku does not accept push even though I have sqlite in development block

I have the following lines in my Gemfile:

gem 'rails', '3.1.1'

group :production do
  gem 'pg'
end        

group :development, :test do
  gem 'sqlite3'
end

I also ran bundle install to have my Gemfile.lock updated.

When I push to heroku I still get the following error:

 !
 !     Failed to install gems via Bundler.
 !     
 !     Detected sqlite3 gem which is not supported on Heroku.
 !     http://devcenter.heroku.com/articles/how-do-i-use-sqlite3-for-development
 !
 !     Heroku push rejected, failed to compile Ruby/rails app

What am I missing?

like image 835
Besi Avatar asked Nov 04 '11 09:11

Besi


2 Answers

Hoppla. I made quite a silly mistake here. I was currently working on a branch but I pushed the master branch to Herokum, like I was used to.

So git push heroku master did push an old version of the branch, which did of course not contain my changes to the Gemfile.

like image 95
Besi Avatar answered Oct 05 '22 23:10

Besi


I had sqlite3 in development block, but I had recently installed mailcatcher, a useful gem to catch sent emails and display them to you in your browser.

mailcatcher has sqlite3 as a dependency. Moving it back where it belongs fixed the problem:

group :development, :test  do
    gem 'sqlite3'
    gem 'mailcatcher'
end

If you have this error but are sure you do not include sqlite3 outside of the development mode, look for other gem requiring it.

like image 38
Guillaume Avatar answered Oct 06 '22 00:10

Guillaume