Forum: Ruby Triggering the debugger II

809dfec231b08847b1c1b99dc8f62bb5?d=identicon&s=25 Ralph Shnelvar (ralphshnelvar)
on 2010-07-16 00:34
(Received via mailing list)
I'm still having trouble with the debugger and debugging


Here's part of my source ...

- - - -
1) #!/usr/bin/env ruby
2) require 'rubygems'
3) require 'ruby-debug'
4) Debugger.start
5)
6) debugger
- - - -


Here's my session
- - - -
f:\UltraDedup>ruby -rdebug UltraDedup.rb
Debug.rb
Emacs support available.

UltraDedup.rb:2:require 'rubygems'
(rdb:1) b 3
Set breakpoint 1 at UltraDedup.rb:3
(rdb:1) b 4
Set breakpoint 2 at UltraDedup.rb:4
(rdb:1) b 6
Set breakpoint 3 at UltraDedup.rb:6
(rdb:1) c
F:/InstantRails-2.0-win/ruby/lib/ruby/1.8/rational.rb:78: `undefined
method `gcd' for Rational(1, 2):Rational' (NoMethodError)
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/config_file.rb:220:in
`load_file'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/config_file.rb:168:in
`initialize'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:384:in
`new'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:384:in
`configuration'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:634:in
`path'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:68:in
`installed_spec_directories'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:58:in
`from_installed_gems'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:881:in
`source_index'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/gem_path_searcher.rb:81:in
`init_gemspecs'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems/gem_path_searcher.rb:13:in
`initialize'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:839:in
`new'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:839:in
`searcher'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:838:in
`synchronize'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:838:in
`searcher'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:478:in
`find_files'
        from
F:/InstantRails-2.0-win/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:1103
        from UltraDedup.rb:2:in `require'
        from UltraDedup.rb:2
F:/InstantRails-2.0-win/ruby/lib/ruby/1.8/rational.rb:78:    gcd =
num.gcd(den)
(rdb:1) quit
- - - -


As you can see ... I either don't stop where I think I'm stopping or I
am getting this strange stack before I hit line 3.

Any thoughts???

Damn ... I don't have this problem in an Instant Rails environment.

I am using Instant Rails to develope a Ruby/FXRuby program.   Is that a
no-no?
6b8b3cef6cfca481bad5a93b99d6b8d3?d=identicon&s=25 rocky (Guest)
on 2010-07-16 13:10
(Received via mailing list)
ruby -rdebug UltraDedup.rb

invokes the debugger that comes with Ruby, not ruby-debug. To invoke
ruby-debug run as rdebug.
809dfec231b08847b1c1b99dc8f62bb5?d=identicon&s=25 Ralph Shnelvar (ralphshnelvar)
on 2010-07-16 14:14
(Received via mailing list)
Rocky,

Friday, July 16, 2010, 5:10:04 AM, you wrote:

r> ruby -rdebug UltraDedup.rb

r> invokes the debugger that comes with Ruby, not ruby-debug. To invoke
ruby-debug run as rdebug.

May the gods smile on your house and your family.

Rocky, what does ruby-debug do that the native debugger does not?

I'm not groking this at all.

Ralph
Bec38d63650c8912b6ba9b557fb953b9?d=identicon&s=25 Roger Pack (rogerdpack)
on 2010-07-16 16:41
> Rocky, what does ruby-debug do that the native debugger does not?

Faster, less bugs.

Also, if you want to stop where you exception is thrown I believe you
can run

rdebug:1 > catch Exception

and it will stop after it's thrown.
Ab870531383eea6e4d9110317f5401e7?d=identicon&s=25 Caleb Clausen (Guest)
on 2010-07-16 18:41
(Received via mailing list)
On 7/16/10, rocky <user@compgroups.net/> wrote:
> ruby -rdebug UltraDedup.rb
>
> invokes the debugger that comes with Ruby, not ruby-debug. To invoke
> ruby-debug run as rdebug.

Furthermore, if you run your ruby program via the rdebug command, you
needn't modify your source code at all.

It's unfortunate that the 2 different debuggers both use the word
rdebug somehow in their invocation.... With the original debug.rb, you
start debugging your program via 'ruby -rdebug' whereas with
ruby-debug gem, you start debugging via 'rdebug'. This makes it more
confusing than it ought to be.
Bfcc9047bea80035a936648dc1912ec4?d=identicon&s=25 Gavin Sinclair (Guest)
on 2010-07-17 01:25
(Received via mailing list)
> It's unfortunate that the 2 different debuggers both use the word
> rdebug somehow in their invocation.... With the original debug.rb, you
> start debugging your program via 'ruby -rdebug' whereas with
> ruby-debug gem, you start debugging via 'rdebug'. This makes it more
> confusing than it ought to be.
>

With ruby-debug, I start debugging via the "debugger" method in my
code, possibly conditional, in the exact place I want it. Couldn't be
happier!
3094bf04803916300ff86ef6c28c24a1?d=identicon&s=25 rocky (Guest)
on 2010-07-17 23:05
(Received via mailing list)
On Jul 16, 12:40 pm, Caleb Clausen <vikk...@gmail.com> wrote:
> It's unfortunate that the 2 different debuggers both use the word
> rdebug somehow in their invocation.... With the original debug.rb, you
> start debugging your program via 'ruby -rdebug' whereas withruby-debuggem, you start 
debugging via 'rdebug'. This makes it more
> confusing than it ought to be.

Yes, it rdebug was an unfortunate name. In the rewrite [1], I don't
make that mistake. However currently that debugger is called rbdbgr
which I have come to learn that that is a very very bad name for the
project. I need to change that eventually -- different mistakes!

With regards to the question to the differences between debug.rb and
ruby-debug, others have answered this very nicely. Thanks! And there
is Pascal's blog on this from a while ago [2].

Nevertheless I'll try to summarize differences and note the possible
confusion on the next update of "Debugging with ruby-debug" [3].

[1] http://github.com/rocky/rbdbgr
[2]
http://blog.nanorails.com/articles/2006/07/14/a-be...
[3] http://bashdb.sourceforge.net/ruby-debug.html
Please log in before posting. Registration is free and takes only a minute.
Existing account

NEW: Do you have a Google/GoogleMail, Yahoo or Facebook account? No registration required!
Log in with Google account | Log in with Yahoo account | Log in with Facebook account
No account? Register here.