ruby-debug-base19x 0.11.28 → 0.11.29

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGES CHANGED
@@ -1,334 +1,334 @@
1
- 0.10.3
2
- 11/17/08
3
-
4
- - a backtrace now warns when it thinks the callstack is truncated which it
5
- gets by comparing with caller()
6
- - fix setting $0.
7
- - fix bug in showing variables in post-mortem
8
- - Document how Debugger.start with a block is intended to be used.
9
- - Move Kernel#debugger from ruby-debug-base into ruby-debug
10
- - Get regression tests working again
11
- - Warn and add a "confirmation" when setting a breakpoint on a
12
- file that is not loaded.
13
-
14
- 0.10.2
15
- - debugger(steps=0) breaks inside of debugger rather than wait for a line event.
16
- - trace var varname (stop|nostop) added which issues trace_var.
17
- - start method is now properly defined in Debugger module
18
- - fixed 'finish' command
19
- - rdebug script now works with Ruby 1.8.7
20
-
21
- 0.10.1
22
- 4/10/08 - in honor of the 30th Birthday of Kate Schwarz
23
-
24
- - bin/rdebug
25
-
26
- * "rdebug --post-mortem" now really catches uncaught exceptions and
27
- brings you to post-mortem handling. "info program" shows the exception.
28
-
29
- * rdebug now searches using ENV['PATH'] for a Ruby program to debug
30
- if the program name is not found and doesn't have any path
31
- characters in it.
32
-
33
- * Use ~/.rdboptrc (rdbopt.ini on MS Windows) to change default options.
34
-
35
- * --emacs is now --emacs-basic while --emacs 3 now implies emacs-basic
36
- ---annotate=3 --post-mortem --no-control --no-start --no-quit
37
-
38
- - rdebug (CLI)
39
-
40
- * "info" command additions and changes:
41
- o fix bug in "info variables" when string had embedded %s'
42
- o "info program" now shows uncaught exception information
43
- o "info files" show what Ruby files are loaded
44
- o "info file <f>" specific file information of <f> (e.g. time, # of lines, SHA1)
45
- o "info catch" - Exceptions that can be caught in the current stack frame.
46
- o "info "variables" shows "self" and class variables
47
- o "info threads verbose" shows stack trace of all threads
48
- o "info thread <t> verbose" shows stack trace of thread <t>.
49
-
50
- * "frame" command now accepts an optional thread number argument
51
-
52
- * Long information added to commands with subcommands: show, set,
53
- info, enable, and disable. For example "help info <xxx>" will give
54
- more detailed information about the "info <xxx>" command.
55
-
56
- * columnize now pulled in from a separate package.
57
-
58
- * add "var cl[ass]" command. Note "var const" can no longer be
59
- abbreviated "var c"; use "var co" (or const or constant).
60
-
61
- * add "condition" command. Allow removal of condition.
62
-
63
- * $0 == __FILE__ when running rdebug should work -- most of the
64
- time. See comments in code for a better solution.
65
-
66
- * rdebug command history can be displayed with "show commands". Fix a bug
67
- in history saving.
68
-
69
- * INCOMPATIBLE CHANGE: "finish" works like gdb - stop just before the most
70
- recent method finishes. Will now accept a number which stops that many
71
- frames completed. (Note that return line numbers will be funny, the
72
- first line of the method until Ruby 1.8.7.)
73
-
74
- * fix bug in 'list' command when wrapping off the end.
75
-
76
- - Emacs interaction drastically reworked, expanded, and improved.
77
-
78
- - rdebug base
79
- * allow catching multiple exceptions.
80
- INCOMPATIBLE CHANGE: variable "Debugger.catchpoint", a String, was turned
81
- into "Debugger.catchpoints", a Hash. Method "Debugger.catchpoint=" no
82
- longer exists. Debugger.set_catchpoint was turned into
83
- Debugger.add_catchpoint
84
-
85
- * Add Debugger.last_exception which is set in post-mortem.
86
-
87
- * remove Debugger.stop() when an exception is raised that would terminate the
88
- debugged program. This may allow catchpoints to work and allow tracing user
89
- code which handles "Exit" exceptions
90
-
91
- * split off breakpoint code in ruby_debug.c.
92
-
93
- * preface ruby_debug global Ruby variables with rdebug_.
94
-
95
- * Change Debugger.start() to accept an optional options argument
96
- :init => true saves things (like $0 and ARGV) necessary to
97
- allow restart. Default: true
98
- :post_mortem => true runs post-mortem on an uncaught exception
99
- Default: false
100
-
101
- The old Debugger.start() is now renamed to Debugger.start_()
102
-
103
- * split of line caching to an external gem. We now only allow setting
104
- breakpoints on lines where it makes sense to do so.
105
-
106
- * Incompatible enhancement: even return/end will now call event handler
107
-
108
- See ChangeLog for full details, and the reference guide for more complete
109
- documentation of these changes.
110
-
111
- 0.10.0
112
- 12/25/07
113
-
114
- - '-r' option can be used to require additional libraries.
115
- - --noquit option added to stay in debugger when the program exits
116
- - gdb-like --annotate option added. Can be used by front-ends to get information
117
- without polling
118
- - Fixed 'var const' command. Issue #10847.
119
- - Using pretty-print for all var commands.
120
- - Better error reporting for commands that require a numeric argument.
121
- - Fixed Kernel#binding_n method
122
- - Add option -d ($DEBUG = true) and --verbose. Make -v work like ruby.
123
- - Remove debugger messages caused when warnings are turned on.
124
- - "info" and "show" commands added. "set" made more like gdb's
125
- set. subcommands can be abbreviated and are case insensitive.
126
- - restart program if it terminates normally and we've got a tty and
127
- we stop on the first statement.
128
- - help is in tidy column format. method lists are shown that way as well.
129
- the "width" setting ("set/show width") is used for the line width
130
- - stack traces now show parameter names and types. "info args" lists just
131
- the parameters (with the most recent values, not the values at call time).
132
- - post-mortem "exit" bug fixed.
133
- - More Emacs-friendly: rdebug-track.el will track location inside an Emacs
134
- shell. Emacs position information is shown in breakpoints and catchpoints
135
- similar to gdba. Commands to position in another window a unit test traceback
136
- or ruby traceback. Much more work invisioned for Emacs.
137
- - INCOMPATIBLE CHANGE: "break" now sets a breakpoint on the current line
138
- (same as gdb). Use "info break" for a list of breakpoints.
139
- - INCOMPATIBLE CHANGE: "script" command removed. Use "source" command instead
140
- (same as gdb).
141
- - Run .rdebugrc on Debugger.start. Look for a file in the current directory and
142
- run that instead of the one in $HOME if that exists. Again, inspired by and compatible
143
- with gdb.
144
- - Changes compatible with Ruby 1.9. NOTE: this debugger will NOT work with
145
- Ruby 1.9
146
- - leaving irb shows position same as entering debugger; "list" position
147
- is also cleared when leaving irb
148
- - help "foo" gives message "Undefined command "foo" rather than a list
149
- of help commands. (Message test is gdb's)
150
- - Add set linetrace+ - similar to step+ for linetrace
151
- - Start unit tests.
152
- - Start a reference guide.
153
-
154
- 0.9.3
155
- - Fixed if..elsif..end stepping.
156
- - From irb session Ctrl-C or 'cont' command continues execution without showing the debugger prompt.
157
- - Added Debugger.settings method to programatically modify command settings.
158
- - Added Kernel#breakpoint as alias to Kernel#debugger is the former is not already defined.
159
-
160
- 0.9.2
161
- - Fixed file comparison in Windows platform.
162
- - Added setter methods to Breakpoint properties
163
- - Added breakpoint hit condition functionality (not available via CLI yet) and methods:
164
- Breakpoint:hit_count
165
- Breakpoint:hit_value[=]
166
- Breakpoint:hit_condition[=]
167
-
168
- 0.9.1
169
- - Fixed incorrect stack calculation.
170
- - Context#stop_next= method aliased as Context#step.
171
- - Added the 'force' parameter to Context#step_over.
172
- - Added the 'force' parameter to Context#step.
173
- - 'next+/step+' commands forces to move to another line
174
- - Added a new 'forcestep' setting.
175
-
176
- 0.9
177
- - Kernel#debugger method will start the debugger if it's not running.
178
- - Added Context#stop_reason method.
179
- - Calling a method with a block will create a new frame. This changes the behavior of 'next' command. So in order to step into a block, 'step' command must be used. That fixes bug #9629.
180
- - Added the possibility to add a temporary context-specific breakpoint. Context#breakpoint and Context#set_breakpoint methods are added.
181
- - 'cont' command now accepts a numerical parameter which implements 'Continue until line' behavior.
182
- - Added new Context.frame_class method
183
- - Added new 'framefullpath' setting.
184
- - Added new 'frameclassname' setting.
185
- - All Ruby's 'eval' and require/load methods create a new frame. Fixes bug #9686.
186
-
187
- 0.8.1
188
- - Added a shortcut module 'debugger'. require "ruby-debug/debugger" will start the debugger and stop at the next line (similar to require 'debug').
189
- - Fixed remote debugging.
190
-
191
- 0.8
192
- - Extract the base debugger API into a separate gem (ruby-debug-base), so it will be easier to add a new interface.
193
- - Added 'set autoirb' setting.
194
- - Bugfixes.
195
-
196
- 0.7.5
197
- - Fixed 'reload on' command
198
- - 'reload on' command is removed in favor of 'set autoreload'
199
- - rdebug will evaluate ~/.rdebugrc script on startup
200
-
201
- 0.7.4
202
- - Added a workaround of the Ruby interpreter problem where a method created with Module#define_method
203
- and which raises an exception doesn't trigger a :return event, this way screwing the stack trace.
204
- - Fixed a situation of an array 'out of bounds' access.
205
- - Fixed the help for 'where' command.
206
-
207
- 0.7.3
208
- - Fixed a case when a frame is not popped up properly.
209
- - Removed Context.ignore= method, since it can result with the segmentation fault error.
210
- - Fixed the case when Context#suspend may effect the state of the thread on Context#resume
211
- - Fixed several cases of seg faults when accessing dyna_vars structure.
212
-
213
- 0.7.2
214
- - Fixed Context#resume (a thread should be waked up only when it was running when it was suspended).
215
- - When handling post-mortem exception, all threads must be suspended.
216
-
217
- 0.7.1
218
- - Fixed 'delete' command
219
-
220
- 0.7
221
- - Eliminated explicit Frame object. Use Context.frame_[binding,file,line] instead.
222
- - Fixed help command.
223
- - Renamed Debugger.keep_frame_info to Debugger.keep_frame_binding
224
- - 'eval' command is available, even when keep_frame_binding is not used.
225
- - New 'set' command is available.
226
-
227
- 0.6.2
228
- - Added thread lookup cache.
229
- - Control thread is always started by rdebug script.
230
- - Ability to specify negative frame number to frame commands. Patch from R. Bernstein.
231
-
232
- 0.6.1
233
- - Another performance optimization.
234
-
235
- 0.6
236
- - Added option to exclude collecting of frame bindings.
237
- - Several performance optimizations.
238
-
239
- 0.5.4
240
- - Added -x/--trace option to rdebug script. Patch from R. Bernstein.
241
- - Removed a live thread reference from the context's structure avoiding memory leakage.
242
-
243
- 0.5.3
244
- - Added Module#post_mortem_method method, which wraps any method with Debugger.post_mortem block.
245
- - Added breakpoint id, which is not dependent on the breakpoint position in Debugger.breakpoints array.
246
-
247
- 0.5.2
248
- - Fixes interoperability problems with rspec.
249
- - Made 'exit' as an alias to 'quit'
250
- - Added 'restart' command. Patch from R. Bernstein.
251
-
252
- 0.5.1
253
- - Bugfixes.
254
-
255
- 0.5
256
- - Added post-mortem debugging
257
- - Added 'irb' command.
258
-
259
- 0.4.5
260
- - Fixed debug_method when applied to setter.
261
- - Added 'reload' command which can be used to reload source code in case it's been changed.
262
- - Added Debugger.reload_source_on_change option (true, by default) which controls whether ruby-debug should keep
263
- track of the source files modification times and reload them if they've been changed.
264
-
265
- 0.4.4
266
- - Renamed Context#set_suspend and Context#clear_suspend methods to Context#suspend and Context#resume respectively.
267
- - Context#resume method not only clears suspend flag, but also resumes the thread execution.
268
- - Bugfixes.
269
-
270
- 0.4.3
271
- - Added Debugger.skip method which allows escaping a block from the debugger reach.
272
- - Bugfixes.
273
-
274
- 0.4.2
275
- - Module#deubg_method added.
276
- - Added rdoc.
277
- - Bugfixes.
278
-
279
- 0.4.1
280
- - New binding_n method for Kernel module.
281
- - Bugfixes.
282
-
283
- 0.4
284
- - Debugger.start method takes a block. If a block is specified, this method starts debugger, yields to the block
285
- and stops debugger at the end.
286
- - 'tm[ate]' command accepts a frame number now.
287
- - 'list' command accepts on/off parameter which controls whether listing will be displayed on every stop.
288
- - 'eval on/off' controls the evaluation of unknown command.
289
- - Debugger reads readline history file .rdebug_hist at startup and saves it at exit.
290
- - 'sa[ve] <file>' command can be used to save current breackpoints and catchpoint if any
291
- - 'sc[ript] <file>' command can be used to run script file. Script files can contain only control commands.
292
- - rdebug script accepts '--script FILE' parameter.
293
- - thread commands are available for the control port.
294
-
295
- 0.3 (2006-08-07)
296
- - Renamed Debugger.start_server to Debugger.start_remote.
297
- - Debugger.start_remote activates debugger by calling Debugger.start.
298
- - Debugger.start_remote starts a control thread which listen on port 8990 and accepts control
299
- commands, such as adding/deleting breakpoints, assigning catchpoint, etc. (Useful for GUI integration)
300
- - New Debugger.wait_connection option. When it's true, Debugger.start_remote waits until
301
- a remote connection is made.
302
- - New Debugger.stop_on_connect option. When a remote connection is established, debugger
303
- stops the main thread (Thread.main).
304
- - 'interrupt' command is available for the control thread.
305
-
306
- 0.2.1 (2006-07-29)
307
- - 'f[rame] nn' command selects a numbered frame. Frame numbers can be obtained by running frame
308
- command without parameters.
309
- - 'l[ist] =' show code in the context of the current line.
310
- - 'tm[ate]' opens the current file in TextMate. Available only on Mac OSX.
311
-
312
- 0.2 (2006-07-17)
313
- - Added the remote debugging. It should be activated by calling Debugger#start_server method.
314
- - CHANGED: In order to activate the debugger, it's not enough to require 'ruby-debug'.
315
- Debugger#start method must be called explicitly.
316
- - Debugger used to evaluate anything you enter as long as it's not a command. Starting from
317
- this version the 'eval' command must be used to evaluate an expression.
318
-
319
- 0.1.5 (2006-07-13)
320
- - Now the check for a breakpoint uses base filename of the source file.
321
- - Removed compilation warnings when compiling with -Wall
322
-
323
- 0.1.4 (2006-07-12)
324
- - Remembers the previous command. Invoke it by typing a carriage return
325
- at the command prompt.
326
-
327
- 0.1.3 (2006-07-11)
328
- - Conditional breakpoints
329
- - Bugfixes
330
-
331
- 0.1.2 (2006-07-16)
332
- ========================
333
-
334
- - Initial release.
1
+ 0.10.3
2
+ 11/17/08
3
+
4
+ - a backtrace now warns when it thinks the callstack is truncated which it
5
+ gets by comparing with caller()
6
+ - fix setting $0.
7
+ - fix bug in showing variables in post-mortem
8
+ - Document how Debugger.start with a block is intended to be used.
9
+ - Move Kernel#debugger from ruby-debug-base into ruby-debug
10
+ - Get regression tests working again
11
+ - Warn and add a "confirmation" when setting a breakpoint on a
12
+ file that is not loaded.
13
+
14
+ 0.10.2
15
+ - debugger(steps=0) breaks inside of debugger rather than wait for a line event.
16
+ - trace var varname (stop|nostop) added which issues trace_var.
17
+ - start method is now properly defined in Debugger module
18
+ - fixed 'finish' command
19
+ - rdebug script now works with Ruby 1.8.7
20
+
21
+ 0.10.1
22
+ 4/10/08 - in honor of the 30th Birthday of Kate Schwarz
23
+
24
+ - bin/rdebug
25
+
26
+ * "rdebug --post-mortem" now really catches uncaught exceptions and
27
+ brings you to post-mortem handling. "info program" shows the exception.
28
+
29
+ * rdebug now searches using ENV['PATH'] for a Ruby program to debug
30
+ if the program name is not found and doesn't have any path
31
+ characters in it.
32
+
33
+ * Use ~/.rdboptrc (rdbopt.ini on MS Windows) to change default options.
34
+
35
+ * --emacs is now --emacs-basic while --emacs 3 now implies emacs-basic
36
+ ---annotate=3 --post-mortem --no-control --no-start --no-quit
37
+
38
+ - rdebug (CLI)
39
+
40
+ * "info" command additions and changes:
41
+ o fix bug in "info variables" when string had embedded %s'
42
+ o "info program" now shows uncaught exception information
43
+ o "info files" show what Ruby files are loaded
44
+ o "info file <f>" specific file information of <f> (e.g. time, # of lines, SHA1)
45
+ o "info catch" - Exceptions that can be caught in the current stack frame.
46
+ o "info "variables" shows "self" and class variables
47
+ o "info threads verbose" shows stack trace of all threads
48
+ o "info thread <t> verbose" shows stack trace of thread <t>.
49
+
50
+ * "frame" command now accepts an optional thread number argument
51
+
52
+ * Long information added to commands with subcommands: show, set,
53
+ info, enable, and disable. For example "help info <xxx>" will give
54
+ more detailed information about the "info <xxx>" command.
55
+
56
+ * columnize now pulled in from a separate package.
57
+
58
+ * add "var cl[ass]" command. Note "var const" can no longer be
59
+ abbreviated "var c"; use "var co" (or const or constant).
60
+
61
+ * add "condition" command. Allow removal of condition.
62
+
63
+ * $0 == __FILE__ when running rdebug should work -- most of the
64
+ time. See comments in code for a better solution.
65
+
66
+ * rdebug command history can be displayed with "show commands". Fix a bug
67
+ in history saving.
68
+
69
+ * INCOMPATIBLE CHANGE: "finish" works like gdb - stop just before the most
70
+ recent method finishes. Will now accept a number which stops that many
71
+ frames completed. (Note that return line numbers will be funny, the
72
+ first line of the method until Ruby 1.8.7.)
73
+
74
+ * fix bug in 'list' command when wrapping off the end.
75
+
76
+ - Emacs interaction drastically reworked, expanded, and improved.
77
+
78
+ - rdebug base
79
+ * allow catching multiple exceptions.
80
+ INCOMPATIBLE CHANGE: variable "Debugger.catchpoint", a String, was turned
81
+ into "Debugger.catchpoints", a Hash. Method "Debugger.catchpoint=" no
82
+ longer exists. Debugger.set_catchpoint was turned into
83
+ Debugger.add_catchpoint
84
+
85
+ * Add Debugger.last_exception which is set in post-mortem.
86
+
87
+ * remove Debugger.stop() when an exception is raised that would terminate the
88
+ debugged program. This may allow catchpoints to work and allow tracing user
89
+ code which handles "Exit" exceptions
90
+
91
+ * split off breakpoint code in ruby_debug.c.
92
+
93
+ * preface ruby_debug global Ruby variables with rdebug_.
94
+
95
+ * Change Debugger.start() to accept an optional options argument
96
+ :init => true saves things (like $0 and ARGV) necessary to
97
+ allow restart. Default: true
98
+ :post_mortem => true runs post-mortem on an uncaught exception
99
+ Default: false
100
+
101
+ The old Debugger.start() is now renamed to Debugger.start_()
102
+
103
+ * split of line caching to an external gem. We now only allow setting
104
+ breakpoints on lines where it makes sense to do so.
105
+
106
+ * Incompatible enhancement: even return/end will now call event handler
107
+
108
+ See ChangeLog for full details, and the reference guide for more complete
109
+ documentation of these changes.
110
+
111
+ 0.10.0
112
+ 12/25/07
113
+
114
+ - '-r' option can be used to require additional libraries.
115
+ - --noquit option added to stay in debugger when the program exits
116
+ - gdb-like --annotate option added. Can be used by front-ends to get information
117
+ without polling
118
+ - Fixed 'var const' command. Issue #10847.
119
+ - Using pretty-print for all var commands.
120
+ - Better error reporting for commands that require a numeric argument.
121
+ - Fixed Kernel#binding_n method
122
+ - Add option -d ($DEBUG = true) and --verbose. Make -v work like ruby.
123
+ - Remove debugger messages caused when warnings are turned on.
124
+ - "info" and "show" commands added. "set" made more like gdb's
125
+ set. subcommands can be abbreviated and are case insensitive.
126
+ - restart program if it terminates normally and we've got a tty and
127
+ we stop on the first statement.
128
+ - help is in tidy column format. method lists are shown that way as well.
129
+ the "width" setting ("set/show width") is used for the line width
130
+ - stack traces now show parameter names and types. "info args" lists just
131
+ the parameters (with the most recent values, not the values at call time).
132
+ - post-mortem "exit" bug fixed.
133
+ - More Emacs-friendly: rdebug-track.el will track location inside an Emacs
134
+ shell. Emacs position information is shown in breakpoints and catchpoints
135
+ similar to gdba. Commands to position in another window a unit test traceback
136
+ or ruby traceback. Much more work invisioned for Emacs.
137
+ - INCOMPATIBLE CHANGE: "break" now sets a breakpoint on the current line
138
+ (same as gdb). Use "info break" for a list of breakpoints.
139
+ - INCOMPATIBLE CHANGE: "script" command removed. Use "source" command instead
140
+ (same as gdb).
141
+ - Run .rdebugrc on Debugger.start. Look for a file in the current directory and
142
+ run that instead of the one in $HOME if that exists. Again, inspired by and compatible
143
+ with gdb.
144
+ - Changes compatible with Ruby 1.9. NOTE: this debugger will NOT work with
145
+ Ruby 1.9
146
+ - leaving irb shows position same as entering debugger; "list" position
147
+ is also cleared when leaving irb
148
+ - help "foo" gives message "Undefined command "foo" rather than a list
149
+ of help commands. (Message test is gdb's)
150
+ - Add set linetrace+ - similar to step+ for linetrace
151
+ - Start unit tests.
152
+ - Start a reference guide.
153
+
154
+ 0.9.3
155
+ - Fixed if..elsif..end stepping.
156
+ - From irb session Ctrl-C or 'cont' command continues execution without showing the debugger prompt.
157
+ - Added Debugger.settings method to programatically modify command settings.
158
+ - Added Kernel#breakpoint as alias to Kernel#debugger is the former is not already defined.
159
+
160
+ 0.9.2
161
+ - Fixed file comparison in Windows platform.
162
+ - Added setter methods to Breakpoint properties
163
+ - Added breakpoint hit condition functionality (not available via CLI yet) and methods:
164
+ Breakpoint:hit_count
165
+ Breakpoint:hit_value[=]
166
+ Breakpoint:hit_condition[=]
167
+
168
+ 0.9.1
169
+ - Fixed incorrect stack calculation.
170
+ - Context#stop_next= method aliased as Context#step.
171
+ - Added the 'force' parameter to Context#step_over.
172
+ - Added the 'force' parameter to Context#step.
173
+ - 'next+/step+' commands forces to move to another line
174
+ - Added a new 'forcestep' setting.
175
+
176
+ 0.9
177
+ - Kernel#debugger method will start the debugger if it's not running.
178
+ - Added Context#stop_reason method.
179
+ - Calling a method with a block will create a new frame. This changes the behavior of 'next' command. So in order to step into a block, 'step' command must be used. That fixes bug #9629.
180
+ - Added the possibility to add a temporary context-specific breakpoint. Context#breakpoint and Context#set_breakpoint methods are added.
181
+ - 'cont' command now accepts a numerical parameter which implements 'Continue until line' behavior.
182
+ - Added new Context.frame_class method
183
+ - Added new 'framefullpath' setting.
184
+ - Added new 'frameclassname' setting.
185
+ - All Ruby's 'eval' and require/load methods create a new frame. Fixes bug #9686.
186
+
187
+ 0.8.1
188
+ - Added a shortcut module 'debugger'. require "ruby-debug/debugger" will start the debugger and stop at the next line (similar to require 'debug').
189
+ - Fixed remote debugging.
190
+
191
+ 0.8
192
+ - Extract the base debugger API into a separate gem (ruby-debug-base), so it will be easier to add a new interface.
193
+ - Added 'set autoirb' setting.
194
+ - Bugfixes.
195
+
196
+ 0.7.5
197
+ - Fixed 'reload on' command
198
+ - 'reload on' command is removed in favor of 'set autoreload'
199
+ - rdebug will evaluate ~/.rdebugrc script on startup
200
+
201
+ 0.7.4
202
+ - Added a workaround of the Ruby interpreter problem where a method created with Module#define_method
203
+ and which raises an exception doesn't trigger a :return event, this way screwing the stack trace.
204
+ - Fixed a situation of an array 'out of bounds' access.
205
+ - Fixed the help for 'where' command.
206
+
207
+ 0.7.3
208
+ - Fixed a case when a frame is not popped up properly.
209
+ - Removed Context.ignore= method, since it can result with the segmentation fault error.
210
+ - Fixed the case when Context#suspend may effect the state of the thread on Context#resume
211
+ - Fixed several cases of seg faults when accessing dyna_vars structure.
212
+
213
+ 0.7.2
214
+ - Fixed Context#resume (a thread should be waked up only when it was running when it was suspended).
215
+ - When handling post-mortem exception, all threads must be suspended.
216
+
217
+ 0.7.1
218
+ - Fixed 'delete' command
219
+
220
+ 0.7
221
+ - Eliminated explicit Frame object. Use Context.frame_[binding,file,line] instead.
222
+ - Fixed help command.
223
+ - Renamed Debugger.keep_frame_info to Debugger.keep_frame_binding
224
+ - 'eval' command is available, even when keep_frame_binding is not used.
225
+ - New 'set' command is available.
226
+
227
+ 0.6.2
228
+ - Added thread lookup cache.
229
+ - Control thread is always started by rdebug script.
230
+ - Ability to specify negative frame number to frame commands. Patch from R. Bernstein.
231
+
232
+ 0.6.1
233
+ - Another performance optimization.
234
+
235
+ 0.6
236
+ - Added option to exclude collecting of frame bindings.
237
+ - Several performance optimizations.
238
+
239
+ 0.5.4
240
+ - Added -x/--trace option to rdebug script. Patch from R. Bernstein.
241
+ - Removed a live thread reference from the context's structure avoiding memory leakage.
242
+
243
+ 0.5.3
244
+ - Added Module#post_mortem_method method, which wraps any method with Debugger.post_mortem block.
245
+ - Added breakpoint id, which is not dependent on the breakpoint position in Debugger.breakpoints array.
246
+
247
+ 0.5.2
248
+ - Fixes interoperability problems with rspec.
249
+ - Made 'exit' as an alias to 'quit'
250
+ - Added 'restart' command. Patch from R. Bernstein.
251
+
252
+ 0.5.1
253
+ - Bugfixes.
254
+
255
+ 0.5
256
+ - Added post-mortem debugging
257
+ - Added 'irb' command.
258
+
259
+ 0.4.5
260
+ - Fixed debug_method when applied to setter.
261
+ - Added 'reload' command which can be used to reload source code in case it's been changed.
262
+ - Added Debugger.reload_source_on_change option (true, by default) which controls whether ruby-debug should keep
263
+ track of the source files modification times and reload them if they've been changed.
264
+
265
+ 0.4.4
266
+ - Renamed Context#set_suspend and Context#clear_suspend methods to Context#suspend and Context#resume respectively.
267
+ - Context#resume method not only clears suspend flag, but also resumes the thread execution.
268
+ - Bugfixes.
269
+
270
+ 0.4.3
271
+ - Added Debugger.skip method which allows escaping a block from the debugger reach.
272
+ - Bugfixes.
273
+
274
+ 0.4.2
275
+ - Module#deubg_method added.
276
+ - Added rdoc.
277
+ - Bugfixes.
278
+
279
+ 0.4.1
280
+ - New binding_n method for Kernel module.
281
+ - Bugfixes.
282
+
283
+ 0.4
284
+ - Debugger.start method takes a block. If a block is specified, this method starts debugger, yields to the block
285
+ and stops debugger at the end.
286
+ - 'tm[ate]' command accepts a frame number now.
287
+ - 'list' command accepts on/off parameter which controls whether listing will be displayed on every stop.
288
+ - 'eval on/off' controls the evaluation of unknown command.
289
+ - Debugger reads readline history file .rdebug_hist at startup and saves it at exit.
290
+ - 'sa[ve] <file>' command can be used to save current breackpoints and catchpoint if any
291
+ - 'sc[ript] <file>' command can be used to run script file. Script files can contain only control commands.
292
+ - rdebug script accepts '--script FILE' parameter.
293
+ - thread commands are available for the control port.
294
+
295
+ 0.3 (2006-08-07)
296
+ - Renamed Debugger.start_server to Debugger.start_remote.
297
+ - Debugger.start_remote activates debugger by calling Debugger.start.
298
+ - Debugger.start_remote starts a control thread which listen on port 8990 and accepts control
299
+ commands, such as adding/deleting breakpoints, assigning catchpoint, etc. (Useful for GUI integration)
300
+ - New Debugger.wait_connection option. When it's true, Debugger.start_remote waits until
301
+ a remote connection is made.
302
+ - New Debugger.stop_on_connect option. When a remote connection is established, debugger
303
+ stops the main thread (Thread.main).
304
+ - 'interrupt' command is available for the control thread.
305
+
306
+ 0.2.1 (2006-07-29)
307
+ - 'f[rame] nn' command selects a numbered frame. Frame numbers can be obtained by running frame
308
+ command without parameters.
309
+ - 'l[ist] =' show code in the context of the current line.
310
+ - 'tm[ate]' opens the current file in TextMate. Available only on Mac OSX.
311
+
312
+ 0.2 (2006-07-17)
313
+ - Added the remote debugging. It should be activated by calling Debugger#start_server method.
314
+ - CHANGED: In order to activate the debugger, it's not enough to require 'ruby-debug'.
315
+ Debugger#start method must be called explicitly.
316
+ - Debugger used to evaluate anything you enter as long as it's not a command. Starting from
317
+ this version the 'eval' command must be used to evaluate an expression.
318
+
319
+ 0.1.5 (2006-07-13)
320
+ - Now the check for a breakpoint uses base filename of the source file.
321
+ - Removed compilation warnings when compiling with -Wall
322
+
323
+ 0.1.4 (2006-07-12)
324
+ - Remembers the previous command. Invoke it by typing a carriage return
325
+ at the command prompt.
326
+
327
+ 0.1.3 (2006-07-11)
328
+ - Conditional breakpoints
329
+ - Bugfixes
330
+
331
+ 0.1.2 (2006-07-16)
332
+ ========================
333
+
334
+ - Initial release.