Debugging a Rails 3 app with RadRails 2?

When trying to debug a Rails 3 app with RadRails 2.0.4, I’m running into
a problem with gem loading, apparently. See below for a stack trace.
That problem disappears, when I move Gemfile out of the way, but, of
course, then other necessary gems aren’t loaded.

From my Debug Configuration

Project:
File: script/rails
Working Directory: /home/michael/aptana/
Interpreter Arguments: -e STDOUT.sync=true -e STDERR.sync=true -e
load(ARGV.shift)
Programm Arguments: server --debugger --environment=development –
port=3000
Interpreter: standard /usr/bin/ruby

I’ve tried adding/removing ruby-debug and ruby-debug-ide to the Gemfile
in any order and at the top-level as well as in the :development group.

I think, but are far from sure, that RadRails and Bundler are of devided
minds as to which gems are active when. First, RadRails directly runs
rdebug-ide, which runs script/rails which causes bundler to mangle which
gems are active. In the file, where the error occurs, there’s a

require ‘ruby-debug/processor’

and that succeeds. But possibly it loads the wrong file, i.e. not the
one from ruby-debug, but the one from ruby-debug-ide. The later does
indeed not define Debugger::CommandProcessor. (I’m using Ruby 1.8.7 and
this might matter here.)

I’ve tried my luck with the latest beta of Aptana Studio 3 as well, but
that wasn’t a pleasant experience, either.

I’m hoping someone has an idea how to get around this problem. I’m also
taking suggestions for other Linux-based(!) IDEs with suitable debugging
abilities :frowning:

Michael

Fast Debugger (ruby-debug-ide 0.4.9) listens on :2984
/var/lib/gems/1.8/gems/ruby-debug-0.10.3/cli/ruby-debug.rb:9
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:46:in
require' /var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:46:inrequire’
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:41:in
each' /var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:41:inrequire’
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:40:in
each' /var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler/runtime.rb:40:inrequire’
/var/lib/gems/1.8/gems/bundler-0.9.26/lib/bundler.rb:89:in `require’
/home/michael/workspace/ue_guidelines/config/application.rb:7

/var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:28:in
`require’
/var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:28

/var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:27:in
tap' /var/lib/gems/1.8/gems/railties-3.0.0.beta4/lib/rails/commands.rb:27 ./script/rails:6:inrequire’
./script/rails:6
/var/lib/gems/1.8/gems/ruby-debug-ide-0.4.9/lib/ruby-debug-
ide.rb:109:in debug_load' /var/lib/gems/1.8/gems/ruby-debug-ide-0.4.9/lib/ruby-debug- ide.rb:109:indebug_program’
/var/lib/gems/1.8/gems/ruby-debug-ide-0.4.9/bin/rdebug-ide:87
/var/lib/gems/1.8/bin/rdebug-ide:19:in load' /var/lib/gems/1.8/bin/rdebug-ide:19 -e:3:inload’
-e:3
Uncaught exception: uninitialized constant Debugger::CommandProcessor


Michael S.
mailto:[email protected]
http://www.schuerig.de/michael/