I was having problems pushing data from my development db to Heroku. I decided to switch to PostgreSQL as my development db and have updated database.yml and removed the sqlite gem from the gemfiles.
The app runs fine against PostgreSQL but when I try to run the command:
heroku db:push
I get an SQLite error which is puzzling because there is no reference to sqlite in my project:
! Taps Load Error: cannot load such file -- sqlite3
! You may need to install or update the taps gem to use db commands.
! On most systems this will be:
!
! sudo gem install taps
Here is my database.yml file:
development:
adapter: postgresql
encoding: unicode
database: xxxx
pool: 5
timeout: 5000
username: xxxx
password: xxxx
test:
adapter: postgresql
encoding: unicode
database: test
pool: 5
timeout: 5000
username: xx
password: xx
production:
adapter: postgresql
encoding: unicode
database: test
pool: 5
timeout: 5000
I'm using RVM and I have created a new gemset without any luck.
I even tried this but got the same SQLite error:
heroku db:push postgres://xx:xx@localhost/xx
! Taps Load Error: cannot load such file -- sqlite3
! You may need to install or update the taps gem to use db commands.
! On most systems this will be:
!
! sudo gem install taps
I have also run bundle install and bundle update.
Johann
I was having the same problem and solved it by moving taps into a development group in my gemfile- taps requires sqlite, which is what was causing the problem.
group :development do
gem 'taps', :require => false # has an sqlite dependency, which heroku hates
end
The solution is to add not only taps
gem but also sqlite3
gem into the :development
group. If you are using in your development sqlite3
already, then just adding taps
gem will be enough. But I am using mysql
on my development so to solve that problem I had to add both.
group :development do
gem 'taps'
gem 'sqlite3'
end
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With