Skip to content
This repository has been archived by the owner on Feb 12, 2022. It is now read-only.

Taps 0.3 Load Error: no such file to load -- taps/operation #69

Closed
turadg opened this issue Feb 1, 2011 · 85 comments
Closed

Taps 0.3 Load Error: no such file to load -- taps/operation #69

turadg opened this issue Feb 1, 2011 · 85 comments

Comments

@turadg
Copy link

turadg commented Feb 1, 2011

I get this error whenever I try DB push/pull:

$ sudo heroku db:push
Password:
Taps 0.3 Load Error: no such file to load -- taps/operation
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 already have the latest releases of the heroku (1.17.10) and taps (0.3.15) gems installed.

@ddollar
Copy link
Contributor

ddollar commented Mar 2, 2011

Could you try updating to the latest heroku (1.18.0) and taps (0.3.17) and see if you still have the issue?

@turadg
Copy link
Author

turadg commented Mar 14, 2011

Works nicely now. Thanks.

@devth
Copy link

devth commented Dec 21, 2011

I'm having the same issue with latest heroku (heroku-gem/2.17.0) and taps (taps-0.3.23).

@josephShield
Copy link

I am also having this issue with the lastest heroku 2.17.0 and taps 0.3.23

@jguffey
Copy link

jguffey commented Jan 4, 2012

As Am I. Also using heroku 2.17.0 and taps 0.3.23

@brentmc79
Copy link

Seeing the same issue using heroku 2.17.0 and taps 0.3.23

@jknoetzke
Copy link

Ditto.. Can someone reopen this please ?

@mliu7
Copy link

mliu7 commented Jan 8, 2012

Also having the same issue with heroku 2.17.0 and taps 0.3.23

@rdpfeffer
Copy link

BUMP! Still having issues with heroku 2.18.1 and taps 0.3.23.

@ddollar
Copy link
Contributor

ddollar commented Jan 10, 2012

Those that are having issues:

  • How did you install the CLI? Toolbelt or gem?
  • What OS/version are you on?

And please paste the output of these commands:

which heroku
which ruby

@rdpfeffer
Copy link

@ddollar: here you go
(venv)Ryans-MacBook-Pro:project rdpfeffer$ which heroku
/usr/bin/heroku

(venv)Ryans-MacBook-Pro:project rdpfeffer$ which ruby
/usr/bin/ruby

I followed the commands in the heroku docs to install both of these, running Mac OS X10.7

the commands that I am running:
heroku db:push postgres://mydbUser:mydbpass@localhost/mydb -f 'areacode' --remote staging1

@ddollar ddollar reopened this Jan 10, 2012
@mliu7
Copy link

mliu7 commented Jan 10, 2012

I had problems when I installed the Toolbelt for OSX 10.7

I fixed the problems by manually removing the heroku binary and then running:

$ sudo gem install --version '2.16.0' heroku

My stuff is located here:

$ which heroku
/usr/bin/heroku
$ which ruby
/usr/bin/ruby

@ddollar
Copy link
Contributor

ddollar commented Jan 10, 2012

@rdpfeffer can you run the following in irb and then paste the output:

require "taps"
puts $:

And then run this from the command line and paste the output

gem env

@brentmc79
Copy link

I installed the CLI via the gem

brent:~$ which heroku
/Users/brent/.rbenv/shims/heroku
brent:~$ which ruby
/Users/brent/.rbenv/shims/ruby

@rdpfeffer
Copy link

Ryans-MacBook-Pro:project rdpfeffer$ irb

require "taps"
LoadError: no such file to load -- taps
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:in gem_original_require' from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:36:inrequire'
from (irb):1
require taps
NameError: undefined local variable or method taps' for main:Object from (irb):2 put $: NoMethodError: undefined methodput' for main:Object
from (irb):3

Ryans-MacBook-Pro:project rdpfeffer$ gem env
RubyGems Environment:

  • RUBYGEMS VERSION: 1.8.15
  • RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
  • INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
  • RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  • EXECUTABLE DIRECTORY: /usr/bin
  • RUBYGEMS PLATFORMS:
    • ruby
    • universal-darwin-11
  • GEM PATHS:
    • /Library/Ruby/Gems/1.8
    • /Users/rdpfeffer/.gem/ruby/1.8
    • /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:

@rdpfeffer
Copy link

@ddollar I should also note that we are running python/django so we are not doing anything with ruby other than what the tools require

@brentmc79
Copy link

irb(main):002:0> require 'taps'
LoadError: no such file to load -- taps
    from /Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from /Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from (irb):2
    from /Users/brent/.rbenv/versions/1.9.2-p290/bin/irb:12:in `<main>'
irb(main):003:0> puts $:
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/site_ruby/1.9.1
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/site_ruby/1.9.1/x86_64-darwin11.2.0
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/site_ruby
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/vendor_ruby/1.9.1
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/vendor_ruby/1.9.1/x86_64-darwin11.2.0
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/vendor_ruby
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1
/Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.2.0
=> nil

RubyGems Environment:

  • RUBYGEMS VERSION: 1.8.10
  • RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [x86_64-darwin11.2.0]
  • INSTALLATION DIRECTORY: /Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1
  • RUBY EXECUTABLE: /Users/brent/.rbenv/versions/1.9.2-p290/bin/ruby
  • EXECUTABLE DIRECTORY: /Users/brent/.rbenv/versions/1.9.2-p290/bin
  • RUBYGEMS PLATFORMS:
    • ruby
    • x86_64-darwin-11
  • GEM PATHS:
    • /Users/brent/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1
    • /Users/brent/.gem/ruby/1.9.1
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:

@jknoetzke
Copy link

Here the output on my machine:

jknotzke@shampoo:$ which heroku
/usr/bin/heroku
jknotzke@shampoo:
$ which ruby
/usr/bin/ruby
jknotzke@shampoo:~$ irb

require "taps"
LoadError: no such file to load -- taps
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in gem_original_require' from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:inrequire'
from (irb):1
puts $:
/Library/Ruby/Site/1.8
/Library/Ruby/Site/1.8/powerpc-darwin11.0
/Library/Ruby/Site/1.8/universal-darwin11.0
/Library/Ruby/Site
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby/1.8
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby/1.8/universal-darwin11.0
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/vendor_ruby
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/powerpc-darwin11.0
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin11.0
.
=> nil
quit
jknotzke@shampoo:~$ gem env
RubyGems Environment:

  • RUBYGEMS VERSION: 1.3.6
  • RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
  • INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
  • RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  • EXECUTABLE DIRECTORY: /usr/bin
  • RUBYGEMS PLATFORMS:
    • ruby
    • universal-darwin-11
  • GEM PATHS:
    • /Library/Ruby/Gems/1.8
    • /Users/jknotzke/.gem/ruby/1.8
    • /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:

@rdpfeffer
Copy link

@ddollar @mliu7 FYI, switching back to heroku 2.16.0 worked for me too. Thanks for the tip. looking forward to getting the latest toolbelt fixed.

@eavonius
Copy link

Same issue, but even rolled back to 2.16.0 :(.

[jedwards@jayme-ubuntu:~/kinlighten] $ gem env
RubyGems Environment:

  • RUBYGEMS VERSION: 1.8.6
  • RUBY VERSION: 1.9.2 (2011-07-09 patchlevel 290) [i686-linux]
  • INSTALLATION DIRECTORY: /home/jedwards/.rvm/gems/ruby-1.9.2-p290
  • RUBY EXECUTABLE: /home/jedwards/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
  • EXECUTABLE DIRECTORY: /home/jedwards/.rvm/gems/ruby-1.9.2-p290/bin
  • RUBYGEMS PLATFORMS:
    • ruby
    • x86-linux
  • GEM PATHS:
    • /home/jedwards/.rvm/gems/ruby-1.9.2-p290
    • /home/jedwards/.rvm/gems/ruby-1.9.2-p290@global
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:

@brentmc79
Copy link

Moving to 2.16.0 worked for me.

@eavonius
Copy link

P.S. This is with taps 0.3.23 and heroku 2.16.0 (the only versions installed).

@jcderr
Copy link

jcderr commented Feb 11, 2012

I'm seeing this as well; heroku 2.19.2, taps 0.3.23.

@kakubei
Copy link

kakubei commented Feb 23, 2012

Same error for me:
/usr/bin/heroku
heroku-gem/2.20.1

~/.rvm/rubies/ruby-1.9.3-p0/bin/ruby
[myapp]/vendor/bundle/ruby/1.9.1/gems/taps-0.3.23

Installed Heroku from the toolbelt.

It seems the last comment from Heroku was a month ago. Any progress on this? Perhaps a workaround?

@geemus
Copy link
Contributor

geemus commented Feb 28, 2012

I'm digging around on this today. Sorry for the delay in response, but I've yet to have much luck reproducing this locally, which always makes things harder to track down.

@kakubei
Copy link

kakubei commented Feb 28, 2012

Is there perhaps a workaround?

Sent from my iPad, please excuse typos.

On 28 Feb 2012, at 21:54, Wesley Bearyreply@reply.github.com wrote:

I'm digging around on this today. Sorry for the delay in response, but I've yet to have much luck reproducing this locally, which always makes things harder to track down.


Reply to this email directly or view it on GitHub:
#69 (comment)

@geemus
Copy link
Contributor

geemus commented Feb 28, 2012

@kakubei I can guess at one, but since I'm not having luck locally it is difficult to know for sure. Could you try: ruby -r rubygems /usr/bin/heroku db:push ...? I'm not sure it will help, but it shouldn't hurt.

@geemus
Copy link
Contributor

geemus commented Feb 28, 2012

For those of you still having issues you might also consider using the pg backups addon to manage this sort of thing (and basic support is free). You can find info here: http://devcenter.heroku.com/articles/pgbackups

@geemus
Copy link
Contributor

geemus commented Jul 16, 2012

@adamlogic - thanks for the details, totally makes sense that it could occur this way (but slipped my mind to mention it).

@geemus
Copy link
Contributor

geemus commented Jul 16, 2012

I'm going to call this good for the time being, but if you are still experiencing this and the gem and/or Gemfile usage mentioned here doesn't fix it for you please let me know.

@geemus geemus closed this as completed Jul 16, 2012
@datnt
Copy link

datnt commented Aug 15, 2012

My gem version is as follow:

heroku (2.30.2)
heroku-api (0.3.2)
taps (0.3.23) (Even try with version 0.3.24)

And in had the same issue here. Tried the above solutions, none of them work.

I'm not using rvm.

@geemus
Copy link
Contributor

geemus commented Aug 15, 2012

@datnt - are you using a toolbelt installation or a gem installation of heroku?

@finfort
Copy link

finfort commented Aug 18, 2012

I solved problem by using
rvm reinstall 1.9.2
bundle install

than install all gems which you need without sudo.

gem install heroku

and now
heroku db:push works for me! Great!

My Gemfile

source 'http://rubygems.org'

gem 'rails', '3.1.3'

Bundle edge Rails instead:

gem 'rails', :git => 'git://github.com/rails/rails.git'

group :development, :test do
gem 'sqlite3'
end
group :production do
gem 'pg'
end
gem 'taps'
gem 'json'
gem "multi_json", "~> 1.3.6"

Gems used only for assets and not required

in production environments by default.

group :assets do
gem 'sass-rails', '> 3.1.5'
gem 'coffee-rails', '
> 3.1.1'
gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

@geemus
Copy link
Contributor

geemus commented Aug 20, 2012

@finfort - great, thanks for the update.

@snoblenet
Copy link

@finfort's solution finally worked for me after all else failed

@leejarvis
Copy link

I'm still having this issue.

Using heroku-toolbelt/2.33.0 and gem list shows taps (0.3.24). Running heroku db:pull results in the same Taps Load Error: no such file to load -- taps/operation. I'm using rbenv and doing taps alone on the command line works fine.

I should note that we've started using the toolbelt version exclusively now that the gemified version has been deprecated.

@dpmccabe
Copy link

dpmccabe commented Nov 1, 2012

I was having this same problem with Rbenv (with Ruby !.9.3-p125) and the toolbelt.

I gave up trying to work with the toolbelt, so I added 'heroku', 'sqlite3', and 'taps' to my Gemfile and have been successfully been using bundle exec heroku db:pull.

@leejarvis
Copy link

@dpmccabe Yup that's what I ended up doing. Which is fine except the gem versions is being deprecated and we're being told to use the toolbelt.

@rtdp
Copy link

rtdp commented Nov 7, 2012

adding both heroku and taps in gemfile and then doing bundle exec heroku db:pull fixed it form me.

@brendanstennett
Copy link

This issue is still happening for me. All combinations of:

  • system gem install
  • rbenv install with 1.9.2 and 1.9.3
  • adding to Gemfile and bundle exec heroku
  • heroku toolbelt

Nothing working. THis issue needs to be reopened.

@wesgarrison
Copy link

I'm experiencing this as well.

$ heroku version
heroku-toolbelt/2.33.2 (x86_64-darwin10.8.0) ruby/1.9.3`

$ taps version
0.3.24

@geemus If you want to pair on this, email me and set up a time and we can use my machine for you to track it down.

@geemus
Copy link
Contributor

geemus commented Dec 3, 2012

@wesgarrison @HuffMoody - sorry to hear that. Could you perhaps try using - https://github.com/heroku/heroku-taps (which includes vendored taps). I haven't touched it in a little while but I think it might help and be the quickest/easiest fix.

@wesgarrison - sounds good. I'm travelling today, but if the above doesn't work for you I should be able to work on it more directly later this week.

@wesgarrison
Copy link

@geemus I used pgbackups to get my database loaded, so I'm not in a bind to get this done, so I can wait until you're around and available to dig in without mucking things up in the meantime.

@brendanstennett
Copy link

@geemus I'm using pgbackups as well so no immediate rush. Installing heroku-taps then using db:pull gives the following error

 !    Heroku client internal error.
 !    Search for help at: https://help.heroku.com
 !    Or report a bug at: https://github.com/heroku/heroku/issues/new

    Error:       uninitialized constant Heroku::API (NameError)
    Backtrace:   /usr/local/heroku/lib/heroku/command.rb:213:in `rescue in run'
                 /usr/local/heroku/lib/heroku/command.rb:259:in `run'
                 /usr/local/heroku/lib/heroku/cli.rb:28:in `start'
                 /usr/local/heroku/bin/heroku:24:in `<main>'

    Command:     heroku db:pull --confirm noirblancostaging --remote staging
    Plugins:     heroku-taps
    Version:     heroku-toolbelt/2.33.2 (x86_64-darwin10.8.0) ruby/1.9.3

@mokolabs
Copy link

mokolabs commented Dec 3, 2012

@HuffMoody I'm seeing the same thing right now too.

@geemus
Copy link
Contributor

geemus commented Dec 10, 2012

Well, crap. I'm home again so my schedule is less hectic, hopefully a solution can happen soon. As someone who has never personally used taps, what things are you guys needing/wanting from it that pgbackups can't support? (pgbackups in the more recommended path these days, fwiw).

@wesgarrison
Copy link

The main thing is cross database support. Sometimes I want to push a mysql db into heroku/pg. Or, I only want to push a single table, which I might be able to do with pgbackups, but I'm not sure and don't see any documentation on how to do that.

With pgbackups you have to be running pg locally. Maybe I should do that conversion locally, but it's one more step.

Could be that pgbackups could replace the taps interface with better documentation, but other might have more stringent usecases than me.

@geemus
Copy link
Contributor

geemus commented Dec 10, 2012

@will - is there a way to use pgbackups to do single table transfer or is it always full-db?

@wesgarrison - thanks for clarification. I would argue that cross database is to be avoided (there are tons of weird gotchas that taps can't really deal with in a reasonable way, which you might not run into yet, but likely will if you use this a lot). Is there a reason not to run pg locally in the first place (and therefore avoid ever needing to convert the data)? The single table case is interesting though and certainly not clear how (or at least I don't know how). Are there particular parts of pgbackups that you feel need additional docs or that you have questions about?

@will
Copy link
Contributor

will commented Dec 10, 2012

pgbackups is always full db. If you need to do a single table, you can run pg_dump from your local machine against a remote heroku postgres database.

Also taps is awful, I cant wait until we kill it. It's the worst. It is so bad.

@wesgarrison
Copy link

IMO, then, I say deprecate taps and replace with links to good documentation examples on how you'd do the equivalent things in pgbackups. It works in the gem, so don't support it in toolbelt, perhaps.

Someone can always use taps locally to convert their local mysql/sqlite/whatever database into a local pg database (which is where that should probably happen anyway so it can be reviewed) and then up into heroku.

@geemus
Copy link
Contributor

geemus commented Dec 10, 2012

@wesgarrison - yeah. I think we want something like that to happen internally but nobody is focusing on it presently.

@cairosubway
Copy link

gem install heroku and then bundle install worked for me thank you @geemus

@evanleonard
Copy link

I'm getting this error too. Here's my taps and heroku version info:

> heroku version
heroku-toolbelt/2.39.2 (x86_64-darwin10.8.0) ruby/1.9.3
> taps version
0.3.24

@borisrorsvort
Copy link

For me installing the toolbelt and sqlite3 via homebrew fixed the issue. ruby 1.9.2

@jcarlson
Copy link

I too am getting this error, and here's how I worked around it (on Mac OS X 10.8) with rbenv as my Ruby manager

Fire up your favorite editor and open /usr/local/heroku/bin/heroku. There on line one, you'll see that the script is set to use a bundled version of Ruby:
#!/usr/local/heroku/ruby/bin/ruby

I can't explain why Heroku bundles a Ruby version with the toolbelt, but I can tell you that's why changing Ruby versions with rbenv has no effect on this problem.

Since I use Ruby 1.9.3 for pretty much all of my projects anyway, I went ahead and edited that like at the top of the heroku script to read:
#!/usr/bin/env ruby

That uses the equivalent of which ruby to determine which ruby to use to run this script. Saved off the file and bam! worked like a charm.

@hwrod
Copy link

hwrod commented Aug 15, 2013

I can confirm @jcarlson 's work-around on OS X 10.8.4.

@will
Copy link
Contributor

will commented Sep 3, 2013

Taps, db:push and db:pull are soon to be replaced with pg:push and pg:pull.

If anyone subscribed to this thread would like to check it out early and give feedback, information is at heroku/heroku-pg-extras#42

Even though this issue here is closed, it comes up on google results for "heroku pg:pull", and seems like people are still discussing here about taps.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests