ruby-debug 0.7 released

Posted on February 02, 2007

I'm happy to announce that ruby-debug 0.7 is available now.

This is mostly a bugfix release. It also has many internal changes that greatly improve the debugger performance. It is so much faster now, that sometime I don't even notice that I'm using it when I start mongrel with rdebug script. The list of changes includes:

  • Frame class has been removed and instead a preallocated block of memory is used to keep frames information. This change has decreased the number of object being created.
  • Another major change involves the fact that the debugger by default doesn't create Binding object for each frame. This is a very expensive operation and it's been the major source of performance problems. Instead, ruby-debug keeps references to the live Ruby's data structures that store information about the local context (ruby_scope). It's still possible to restore the old behavior by using --keep-frame-binding option, or Debugger.keep_frame_binding = true.
  • New set command has been introduced. You can use help set command to see what options are available.

Enjoy, and please report any problem you find!