ruby-debug-base193 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,138 @@
1
+ /* Context info */
2
+ enum ctx_stop_reason {CTX_STOP_NONE, CTX_STOP_STEP, CTX_STOP_BREAKPOINT,
3
+ CTX_STOP_CATCHPOINT};
4
+
5
+ /* Context flags */
6
+ #define CTX_FL_SUSPEND (1<<1)
7
+ #define CTX_FL_TRACING (1<<2)
8
+ #define CTX_FL_SKIPPED (1<<3)
9
+ #define CTX_FL_IGNORE (1<<4)
10
+ #define CTX_FL_DEAD (1<<5)
11
+ #define CTX_FL_WAS_RUNNING (1<<6)
12
+ #define CTX_FL_ENABLE_BKPT (1<<7)
13
+ #define CTX_FL_STEPPED (1<<8)
14
+ #define CTX_FL_FORCE_MOVE (1<<9)
15
+ #define CTX_FL_CATCHING (1<<10)
16
+ #define CTX_FL_EXCEPTION_TEST (1<<11)
17
+ #define CTX_FL_ENSURE_SKIPPED (1<<12)
18
+ #define CTX_FL_RETHROW (1<<13)
19
+
20
+ #define CTX_FL_TEST(c,f) ((c)->flags & (f))
21
+ #define CTX_FL_SET(c,f) do { (c)->flags |= (f); } while (0)
22
+ #define CTX_FL_UNSET(c,f) do { (c)->flags &= ~(f); } while (0)
23
+
24
+ typedef struct {
25
+ struct iseq_catch_table_entry tmp_catch_table;
26
+ struct iseq_catch_table_entry *old_catch_table;
27
+ int old_catch_table_size;
28
+ VALUE mod_name;
29
+ VALUE errinfo;
30
+ } debug_catch_t;
31
+
32
+ typedef struct {
33
+ struct rb_iseq_struct *iseq;
34
+ struct iseq_catch_table_entry *catch_table;
35
+ int catch_table_size;
36
+ } iseq_catch_t;
37
+
38
+ typedef struct {
39
+ VALUE thread_id;
40
+ int thnum;
41
+ int flags;
42
+ enum ctx_stop_reason stop_reason;
43
+ int stop_next;
44
+ int dest_frame;
45
+ int stop_line;
46
+ int stop_frame;
47
+ int stack_len;
48
+ const char * last_file;
49
+ int last_line;
50
+ VALUE breakpoint;
51
+ debug_catch_t catch_table;
52
+ VALUE saved_jump_ins[2];
53
+ rb_control_frame_t *jump_cfp;
54
+ VALUE *jump_pc;
55
+ iseq_catch_t *old_iseq_catch;
56
+ VALUE last_exception;
57
+ volatile int thread_pause;
58
+ //
59
+ rb_control_frame_t *start_cfp;
60
+ rb_control_frame_t *cur_cfp;
61
+ rb_control_frame_t *top_cfp;
62
+ rb_control_frame_t *catch_cfp;
63
+ rb_control_frame_t *saved_frames;
64
+ rb_control_frame_t **saved_cfp;
65
+ int saved_cfp_count;
66
+ //
67
+ struct RData catch_rdata;
68
+ struct rb_iseq_struct catch_iseq;
69
+ #if defined HAVE_TYPE_STRUCT_ISEQ_INSN_INFO_ENTRY
70
+ struct iseq_insn_info_entry catch_info_entry;
71
+ # define line_info_size insn_info_size
72
+ # define line_info_table insn_info_table
73
+ #elif defined HAVE_TYPE_STRUCT_ISEQ_LINE_INFO_ENTRY
74
+ struct iseq_line_info_entry catch_info_entry;
75
+ #endif
76
+ struct RNode catch_cref_stack;
77
+ VALUE iseq_insn[7];
78
+ VALUE local_table;
79
+ //
80
+ rb_control_frame_t **cfp;
81
+ int cfp_count;
82
+ } debug_context_t;
83
+
84
+ /* variables in ruby_debug.c */
85
+ extern VALUE mDebugger;
86
+ extern VALUE rdebug_breakpoints;
87
+ extern VALUE rdebug_catchpoints;
88
+ extern VALUE rdebug_threads_tbl;
89
+
90
+ /* routines in ruby_debug.c */
91
+ extern int filename_cmp(VALUE source, const char *file);
92
+
93
+ static inline int
94
+ classname_cmp(VALUE name, VALUE klass)
95
+ {
96
+ VALUE mod_name;
97
+ VALUE class_name = (Qnil == name) ? rb_str_new2("main") : name;
98
+ if (klass == Qnil) return(0);
99
+ mod_name = rb_mod_name(klass);
100
+ return (mod_name != Qnil
101
+ && rb_str_cmp(class_name, mod_name) == 0);
102
+ }
103
+
104
+ /* Breakpoint information */
105
+ enum bp_type {BP_POS_TYPE, BP_METHOD_TYPE};
106
+ enum hit_condition {HIT_COND_NONE, HIT_COND_GE, HIT_COND_EQ, HIT_COND_MOD};
107
+
108
+ typedef struct {
109
+ int id;
110
+ enum bp_type type;
111
+ VALUE source;
112
+ union
113
+ {
114
+ int line;
115
+ ID mid;
116
+ } pos;
117
+ VALUE expr;
118
+ VALUE enabled;
119
+ int hit_count;
120
+ int hit_value;
121
+ enum hit_condition hit_condition;
122
+ } debug_breakpoint_t;
123
+
124
+ /* routines in breakpoint.c */
125
+ extern int check_breakpoint_expression(VALUE breakpoint, VALUE binding);
126
+ extern int check_breakpoint_hit_condition(VALUE breakpoint);
127
+ extern VALUE check_breakpoints_by_method(debug_context_t *debug_context,
128
+ VALUE klass, ID mid, VALUE self);
129
+ extern VALUE check_breakpoints_by_pos(debug_context_t *debug_context,
130
+ const char *file, int line);
131
+ extern VALUE create_breakpoint_from_args(int argc, VALUE *argv, int id);
132
+ extern VALUE context_breakpoint(VALUE self);
133
+ extern VALUE context_set_breakpoint(int argc, VALUE *argv, VALUE self);
134
+ extern VALUE rdebug_add_catchpoint(VALUE self, VALUE value);
135
+ extern VALUE debug_catchpoints(VALUE self);
136
+ extern VALUE rdebug_remove_breakpoint(VALUE self, VALUE id_value);
137
+
138
+ extern void Init_breakpoint();
@@ -0,0 +1,1065 @@
1
+ 2009-03-29 03:00 Rocky Bernstein
2
+
3
+ * ChangeLog: Canonicalize breakpoint locations a little better.
4
+ More work should be done and more work should be done on the
5
+ testing side too.
6
+
7
+ 2009-03-11 23:42 Rocky Bernstein
8
+
9
+ * ChangeLog: update texinfo for catch
10
+
11
+ 2008-11-25 02:43 Rocky Bernstein
12
+
13
+ * ChangeLog: Frame without a frame number means frame 0, same as
14
+ gdb. We are now in 0.10.4 territory now.
15
+
16
+ 2008-11-16 00:14 Rocky Bernstein
17
+
18
+ * ChangeLog: Add rdoc for rdebug script.
19
+
20
+ 2008-11-14 19:28 Rocky Bernstein
21
+
22
+ * ruby-debug-base.rb: Go over documentation and revise.
23
+
24
+ 2008-11-14 15:32 Rocky Bernstein
25
+
26
+ * ChangeLog, ruby-debug-base.rb: Move Debugger#debugger from base
27
+ to cli. Revert code in ruby_debug.c and block parameter in
28
+ debugger. cf. -> Compare with. Document Debugger.start better.
29
+
30
+ 2008-11-13 10:29 Rocky Bernstein
31
+
32
+ * ChangeLog: Make Debugger.start{block} work if Debugger.started?
33
+ is false. Second try.
34
+
35
+ 2008-11-11 02:07 Rocky Bernstein
36
+
37
+ * ChangeLog: Tweak truncated stack test since Ruby's caller doesn't
38
+ seem to include (tail?) recursive calls and we do. Get regression
39
+ tests working in light of recent changes.
40
+
41
+ 2008-11-10 01:48 Kent Sibilev
42
+
43
+ * ruby-debug-base.rb: a little bit more readable
44
+
45
+ 2008-11-10 01:35 Kent Sibilev
46
+
47
+ * ruby-debug-base.rb: Debugger.start must always call the passed
48
+ block
49
+
50
+ 2008-11-07 19:35 Rocky Bernstein
51
+
52
+ * ChangeLog: Change truncated frame message.
53
+
54
+ 2008-11-07 10:39 Rocky Bernstein
55
+
56
+ * ChangeLog: Add check to "where" to see if the call stack is
57
+ truncated; task #2354
58
+
59
+ 2008-11-06 16:17 Rocky Bernstein
60
+
61
+ * ChangeLog: #22698 Allow ruby-debug-base 0.x.y.z be compatible
62
+ with ruby-debug 0.x.y.
63
+
64
+ 2008-11-02 21:59 Rocky Bernstein
65
+
66
+ * ChangeLog, ruby-debug-base.rb: Debugger.start with a block now
67
+ stops inside the block. Debugger.debugger with a block works like
68
+ Debugger.start with a block.
69
+
70
+ The whole interface is hopelessly kludgy and needs to be redone.
71
+
72
+ 2008-10-26 14:54 Rocky Bernstein
73
+
74
+ * ChangeLog: Doc typo. Add comment to remind me how to turn off
75
+ optimizationin extconf.rb
76
+
77
+ 2008-10-25 16:01 Rocky Bernstein
78
+
79
+ * ChangeLog: Warn and add a "confirmation" when setting a
80
+ breakpoint on a file that is not loaded. Regression tests no
81
+ longer fail.
82
+
83
+ 2008-09-22 00:07 Rocky Bernstein
84
+
85
+ * ruby-debug-base.rb: #22118 bug in showing variables post mortem.
86
+ Patch thanks to rubikitch.
87
+ Update pm.rb integration test.
88
+
89
+ 2008-09-03 17:29 Rocky Bernstein
90
+
91
+ * ChangeLog: Show line numbers when $DEBUG is set. Patch #21772
92
+ from Martin Krauskopf
93
+
94
+ 2008-07-07 07:11 Rocky Bernstein
95
+
96
+ * ruby-debug-base.rb: Tracker [#20041] start erroneously moved to
97
+ Kernel - should be in
98
+ Debugger.start
99
+
100
+ 2008-06-20 06:46 Rocky Bernstein
101
+
102
+ * ruby-debug-base.rb: trace.rb: add "trace var"
103
+ ruby-debug-base.rb: remove another undefined warning.
104
+
105
+ 2008-05-24 01:27 Rocky Bernstein
106
+
107
+ * ChangeLog: Remove dup lines.
108
+
109
+ 2008-05-15 16:05 Rocky Bernstein
110
+
111
+ * ChangeLog: Handle "catch nnn off" Forgotten there during r656.
112
+ From mkrauskopf [#20156].
113
+
114
+ 2008-05-05 18:05 Rocky Bernstein
115
+
116
+ * ChangeLog: make test-frame installation independent. Bug #19931
117
+
118
+ 2008-04-29 13:37 Rocky Bernstein
119
+
120
+ * ChangeLog: Test line number in "continue" command for validity.
121
+
122
+ 2008-04-28 16:16 Rocky Bernstein
123
+
124
+ * ChangeLog: From Martin Krauskopf via patch #19779
125
+
126
+ Allow folks to configure Ruby used for CLI tests in the
127
+ test/config.yaml. The defaults are for native Ruby, so nothing
128
+ needs
129
+ to be done for ruby-debug.
130
+
131
+ Developers of interfaces other than cli might override
132
+ config.yaml by
133
+ customized config.private.yaml which is ignored. So there will be
134
+ no
135
+ trash in e.g. 'svn st' output when developer customize the Ruby
136
+ to be
137
+ used.
138
+
139
+ Handy for alternative interface implementations using
140
+ svn:externals.
141
+
142
+ 2008-04-22 02:49 Rocky Bernstein
143
+
144
+ * ruby-debug-base.rb: Experiment with debugger(steps=0). Puts us in
145
+ the debugger call, but this may be the best we can do for now.
146
+ See tracker
147
+ #19639.
148
+
149
+ 2008-04-16 01:11 Rocky Bernstein
150
+
151
+ * ChangeLog: In 0.10.2 now. Some work to cope systems without
152
+ readline. More work is needed.
153
+ Add test of "set autoeval." Undefined command message more
154
+ closely like gdb's.
155
+
156
+ 2008-04-10 08:49 Rocky Bernstein
157
+
158
+ * ChangeLog: linecache is required by ruby-debug-base not
159
+ ruby-debug. Thanks Martin!
160
+
161
+ 2008-04-10 08:00 Rocky Bernstein
162
+
163
+ * ChangeLog: Last change before 0.10.1 release.
164
+
165
+ 2008-04-10 02:03 Rocky Bernstein
166
+
167
+ * ChangeLog: Cosmetic stuff: spelling corrections. Update node
168
+ structure so texinfo
169
+ doesn't complain.
170
+
171
+ 2008-04-08 14:52 Rocky Bernstein
172
+
173
+ * ChangeLog: autorequire is deprecated and presumably no longer
174
+ needed
175
+ http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/182827
176
+
177
+ 2008-04-07 00:36 Rocky Bernstein
178
+
179
+ * ChangeLog, ruby-debug-base.rb: ruby-debug-base.rb: document
180
+ Debugger.start parameters.
181
+ CHANGES: Revise what's happened
182
+ test-shortkey.el: A failing regression test because I think
183
+ rdebug-shortkey-mode
184
+ is not correct.
185
+
186
+ 2008-04-03 19:01 Rocky Bernstein
187
+
188
+ * ChangeLog, ruby-debug-base.rb: Allow setting :post_mortem => true
189
+ from Debugger.start.
190
+
191
+ 2008-03-28 13:53 Rocky Bernstein
192
+
193
+ * ChangeLog: Don't unconditionally turn on short-key mode when
194
+ annotations are on. Use rdebug-short-key-mode setting to decide.
195
+
196
+ 2008-03-23 17:47 Rocky Bernstein
197
+
198
+ * ChangeLog: set.rb -> settings.rb since it's already one command
199
+ per file, and
200
+ remove another :nodoc.
201
+ Rakefile: split long line
202
+
203
+ 2008-03-18 16:05 Rocky Bernstein
204
+
205
+ * ChangeLog: Fix bug in 'list' command when wrapping off the end.
206
+ test-finish.rb: tolerate buggy in Ruby versions <= 1.8.7.
207
+
208
+ 2008-03-13 02:15 Rocky Bernstein
209
+
210
+ * ruby-debug-base.rb: INCOMPATIBLE CHANGE: "finish" works like gdb
211
+ - stop just before the
212
+ most recent method finishes. Will now accept a number which stops
213
+ that
214
+ many frames completed. (Note that return line numbers will be
215
+ funny,
216
+ the first line of the method until Ruby 1.8.7.)
217
+
218
+ 2008-03-10 13:28 Rocky Bernstein
219
+
220
+ * ChangeLog: Dunno why we are now one line number less. So be it
221
+ (for now).
222
+
223
+ 2008-03-09 23:30 Rocky Bernstein
224
+
225
+ * ChangeLog: For now we require the duplicate numbers on
226
+ conditionals.
227
+
228
+ 2008-03-02 04:20 Rocky Bernstein
229
+
230
+ * ruby-debug-base.rb: Better error message for an invalid break
231
+ command.
232
+
233
+ 2008-02-28 05:06 Rocky Bernstein
234
+
235
+ * ChangeLog: breakpoints.{cmd,right}: test for an invalid stopping
236
+ line number
237
+ rdebug-fns.el: move generic split-string-and-unquote from
238
+ rdebug-core.
239
+ rdebug-core.el: Add rdebug-common-init to replace
240
+ gud-common-init. Is
241
+ simpler, and finds files better via debugger output/annotations.
242
+ Fix bug in rdebug-setup-windows: gud-find-file can return nil,
243
+ and
244
+ we still need to set buf.
245
+
246
+ 2008-02-27 04:04 Rocky Bernstein
247
+
248
+ * ruby-debug-base.rb: Slightly more robust handle_post_mortem.
249
+
250
+ 2008-02-26 17:31 Rocky Bernstein
251
+
252
+ * ChangeLog: Go over source location positioning. 0 is now the
253
+ oldest (first) position. Add M-S-down and M-S-up for first and
254
+ last. More tests needed in test-fns.el and need to prompt on wrap
255
+ around.
256
+
257
+ 2008-02-26 00:57 Rocky Bernstein
258
+
259
+ * ChangeLog: Fix bug in "info file xxx breakpoints".
260
+
261
+ 2008-02-24 16:36 Rocky Bernstein
262
+
263
+ * ChangeLog: rdebug; make more Ruby 1.9 compatible.
264
+
265
+ 2008-02-24 16:14 Rocky Bernstein
266
+
267
+ * ChangeLog: Minor changes.
268
+ rdbg.rb: don't need $DEBUG test any more
269
+ rdebug-regexp.el: go over with checkdoc
270
+ bin/rdebug: use PATH_SEPARATOR (for 'doze again)
271
+
272
+ 2008-02-24 04:51 Rocky Bernstein
273
+
274
+ * ChangeLog: CLI: Add long help for "info file".
275
+
276
+ test/test-help.rb: Make test failures easier to fix and more like
277
+ the
278
+ other tests.
279
+
280
+ emacs/test: finish testing all of the funcitons in rdebug-fns.el
281
+
282
+ rdebug-layouts.el: Make checkdoc clean.
283
+ rdebug-track.el: don't need to rename shell buffer. Do it as an
284
+ option only.
285
+ rdebug-secondary.el: get rid of hoaky buffer finding for at least
286
+ gud-comint-buf. (Should probably do others as well)
287
+
288
+ DOC: Note weird line stopping locations. Describe what "ctrl" in
289
+ prompt means.
290
+
291
+ 2008-02-21 02:56 Rocky Bernstein
292
+
293
+ * ChangeLog: Fringe for frame buffer the same as in source code.
294
+ Move
295
+ miscellaneous small functions to a new file. Reduce duplication
296
+ of
297
+ "chomp" code.
298
+
299
+ 2008-02-19 23:44 Rocky Bernstein
300
+
301
+ * ChangeLog: rdebug-cmd.el: M-insert toggles shortkey mode in the
302
+ command buffer
303
+ rdebug: search for Ruby program if file is not found and no
304
+ SEPARATOR
305
+ chars in the filename
306
+
307
+ 2008-02-18 19:56 Rocky Bernstein
308
+
309
+ * ChangeLog: Frame switching shouldn't be recorded in position
310
+ history ring.
311
+
312
+ 2008-02-17 13:57 Rocky Bernstein
313
+
314
+ * ruby-debug-base.rb: Add Debugger.last_exception. Show exception
315
+ in post-mortem when "info program"
316
+ is issued. Reorganize list of major changes better.
317
+
318
+ 2008-02-13 21:47 Rocky Bernstein
319
+
320
+ * ChangeLog: processor.rb: spelled "post-mortem" incorrectly in
321
+ prompt.
322
+
323
+ 2008-02-13 17:32 Rocky Bernstein
324
+
325
+ * ChangeLog: Set up keys for comint-next-prompt and
326
+ comint-previous-prompt.
327
+
328
+ 2008-02-12 02:06 Rocky Bernstein
329
+
330
+ * ChangeLog: Fix bug in "info thread verbose" which wasn't showing
331
+ full traceback.
332
+
333
+ 2008-02-09 15:48 Rocky Bernstein
334
+
335
+ * ChangeLog: helper.rb Failed attempt to DRY tests more. But save
336
+ what we have
337
+ which may someday in the future be used to go further. Minus to
338
+ undercore in Data file names in preparation such time. (We'll use
339
+ the
340
+ filename as the test name).
341
+
342
+ testing
343
+
344
+ 2008-02-06 16:15 Rocky Bernstein
345
+
346
+ * ChangeLog: Add 'nowarn to find-file-noselect and test that we
347
+ don't get a warning.
348
+
349
+ 2008-02-05 01:41 Rocky Bernstein
350
+
351
+ * ChangeLog: rdebug.el: Add a defgroup for rdebug so customization
352
+ in Emacs 23 is possible.
353
+ Some other minor doc fixes.
354
+ setshow.* make sure we don't have an $Id line that we have to
355
+ check against.
356
+
357
+ 2008-02-03 15:23 Rocky Bernstein
358
+
359
+ * ChangeLog: Try to get testing a little more organized, although
360
+ more work should
361
+ be done: Create a data directory for comparison ("right") and
362
+ script
363
+ command ("cmd") files. Code is now more uniform (and should DRY'd
364
+ a
365
+ bit more).
366
+
367
+ 2008-02-02 23:10 Rocky Bernstein
368
+
369
+ * ChangeLog: Remove commands in post-mortem which are not
370
+ applicable, e.g."step",
371
+ "next", "continue"...
372
+
373
+ "No breakpoints have been set" is now an error message when
374
+ trying to
375
+ set a breakpoint.
376
+
377
+ Add post-mortem test.
378
+
379
+ Debug.init no longer exists.
380
+
381
+ 2008-02-02 09:27 Rocky Bernstein
382
+
383
+ * ruby-debug-base.rb: Remove Debugger.init and fold options
384
+ parameter into Debugger.start.
385
+ Old Debugger.start has been renamed Deebugger.start_
386
+
387
+ 2008-01-31 16:30 Rocky Bernstein
388
+
389
+ * ChangeLog: Leave ruby_debug.c this way for now.
390
+
391
+ 2008-01-31 16:24 Rocky Bernstein
392
+
393
+ * ChangeLog: ruby_debug.c: more adventures in exception handling
394
+ processor.rb: Removal of crash when annotate is on. Need to fix
395
+ the source of the
396
+ problem though.
397
+
398
+ 2008-01-31 15:16 Rocky Bernstein
399
+
400
+ * ruby-debug-base.rb: Handle post-mortem and exception traceback
401
+ reporting in ruby-debug
402
+
403
+ 2008-01-30 17:01 Rocky Bernstein
404
+
405
+ * ChangeLog: Add Command.find() to find a subcommand name.
406
+ condition.right: correct for breakpoint hit counts.
407
+
408
+ 2008-01-30 01:43 Rocky Bernstein
409
+
410
+ * ChangeLog: Add number of times a breakpoint is hit like gdb does.
411
+
412
+ 2008-01-29 22:37 Rocky Bernstein
413
+
414
+ * ChangeLog: Columnize breakpoint output.
415
+
416
+ 2008-01-29 11:20 Rocky Bernstein
417
+
418
+ * ChangeLog: More annotate=2 fixes.
419
+
420
+ 2008-01-28 15:59 Rocky Bernstein
421
+
422
+ * ChangeLog: Add info file breakpoints to show lines which we can
423
+ set a breakpoint on.
424
+ Revise so we chdir into SRC_DIR.
425
+ test-hist.rb is broken - will fix later.
426
+
427
+ 2008-01-25 12:11 Rocky Bernstein
428
+
429
+ * ChangeLog, ruby-debug-base.rb: Add Debugger.init which intializes
430
+ things that rdebug does. This
431
+ allows a restart even though rdebug wasn't called initially.
432
+
433
+ 2008-01-22 23:15 Rocky Bernstein
434
+
435
+ * ChangeLog: Allow "help info xxx". Add ability for long help on
436
+ "info" command.
437
+ Add "info break xx".
438
+
439
+ test: remove test/unit class name conflicts. All the tests we
440
+ wrote
441
+ now get run.
442
+
443
+ 2008-01-19 19:28 Rocky Bernstein
444
+
445
+ * ChangeLog: Move ruby-debug-base tests to base directory. Add a
446
+ binding_n regression test.
447
+
448
+ 2008-01-16 18:42 Rocky Bernstein
449
+
450
+ * ChangeLog: Need to present source filename (__FILE__) as Ruby and
451
+ therefore breakpoint
452
+ sees it.
453
+
454
+
455
+ 2008-01-16 02:19 Rocky Bernstein
456
+
457
+ * ChangeLog, ruby-debug-base.rb: Line caching moved to an external
458
+ gem, linecache. We now require
459
+ version 0.2 of that or greater.
460
+
461
+ 2008-01-14 01:31 Rocky Bernstein
462
+
463
+ * ChangeLog: Make rdebug-track work better in the face of prompt
464
+ and error annotations.
465
+ control.rb: need another test when rdebug not called initially.
466
+
467
+ 2008-01-13 21:51 Rocky Bernstein
468
+
469
+ * ChangeLog: Some stack -> frame renaming
470
+ ext/breakpoint.c: put methods in alpha order (to help with
471
+ reference man)
472
+ breakpoints.rb: one print -> errmsg
473
+
474
+ 2008-01-13 18:13 Rocky Bernstein
475
+
476
+ * ChangeLog: Create errmsg routine for error output, start tagging
477
+ error messages
478
+ as errors. Under annotate 3, output errors similar to gdb
479
+ --annotate
480
+ does (although still simplified). Have Emacs pick up debugger
481
+ error
482
+ annotations.
483
+
484
+ 2008-01-13 04:05 Rocky Bernstein
485
+
486
+ * ChangeLog: Check validity of expressions in breakpoint conditions
487
+ and don't allow
488
+ enabling a syntactically invalid expression.
489
+
490
+ Start noting messages which are errors via an errmsg routine.
491
+
492
+ 2008-01-11 10:26 Rocky Bernstein
493
+
494
+ * ChangeLog: Document that ruby-debug resets $0. Align program
495
+ options in ref manual and --help. Alphabetize better.
496
+
497
+ 2008-01-10 22:56 Rocky Bernstein
498
+
499
+ * ChangeLog: More correct $0 fix. Deal with the case ./ is
500
+ automatically added.
501
+ However this might not be right in all cases.
502
+
503
+ 2008-01-10 22:25 Rocky Bernstein
504
+
505
+ * ChangeLog: Was gobbling arg in processing --emacs. Add test.
506
+
507
+ 2008-01-10 10:34 Rocky Bernstein
508
+
509
+ * ChangeLog: Add condition command.
510
+
511
+ 2008-01-09 19:10 Rocky Bernstein
512
+
513
+ * ChangeLog: Rakefile: rdebug.rb -> rdbg.el
514
+ rdebug-dbg.el: Add $Id$
515
+
516
+ 2008-01-09 19:03 Rocky Bernstein
517
+
518
+ * ChangeLog: Break out secondary buffer into their own file, and
519
+ also internal
520
+ debug code and general secondary commands. Secondary buffer code
521
+ removed from rdebug-cmd and moved into the appropriate file.
522
+
523
+ rdebug-edit-variables-value is not defined so comment out for
524
+ now.
525
+
526
+ 2008-01-08 16:04 Rocky Bernstein
527
+
528
+ * ChangeLog: Restore $: to the value it was before rdebug call.
529
+
530
+ 2008-01-07 20:38 Rocky Bernstein
531
+
532
+ * ChangeLog: Add "var class". This means "var const .." can no
533
+ longer be abbreviated "var c"; use "var co" instead.
534
+ (Or "var const" or "var constant"
535
+
536
+ 2008-01-07 19:57 Rocky Bernstein
537
+
538
+ * ChangeLog: Add class level variables to "info variables"
539
+
540
+ 2008-01-07 17:37 Rocky Bernstein
541
+
542
+ * ChangeLog: Add "self" to list "info variables" spits out.
543
+
544
+ 2008-01-07 09:59 Rocky Bernstein
545
+
546
+ * ChangeLog: --emacs sets width to 120. rdebug-core.el will reset
547
+ to 120 unless it's already that.
548
+
549
+ 2008-01-07 04:29 Rocky Bernstein
550
+
551
+ * ChangeLog: Split out ChangeLogs better (I hope).
552
+
553
+ 2008-01-06 20:56 Rocky Bernstein
554
+
555
+ * ChangeLog: test/*-emacs-basic*, tdebug: Add test of running in
556
+ Emacs without annotations.
557
+
558
+ emacs/*.el: make regexp tests work again, move regexp to from
559
+ core to regexp.
560
+ Add an annotate regexp test.
561
+
562
+ processor.rb: Remove some anotation print from bleeding into
563
+ output
564
+ when annotations are not wanted. Reinstate "Program finished" in
565
+ annotations and outside (rdebug).
566
+
567
+ 2008-01-06 18:55 Rocky Bernstein
568
+
569
+ * ChangeLog: Create Processor class and subclass that. Perhaps a
570
+ mixin would be good.
571
+ Remove annotation output bleanding when annotate is off.
572
+ Try to reduce the mess annotations is adding to processor.rb
573
+ rdebug-core.el: fix indentation to pass the regression test
574
+ Anders added
575
+ Makefile.am: Add rdebug-source.el to distribution.
576
+ Make sure "rake test"
577
+
578
+ 2008-01-06 02:15 Rocky Bernstein
579
+
580
+ * ChangeLog: Some work on saving state across a restart. More work
581
+ is needed on the
582
+ script command to get this working. The save-file name is now
583
+ optional. save.rb split off from script.rb Display expressions
584
+ and
585
+ some settings are now captured in the save/restore file.
586
+ Add interface.finalize - things that need to be done before quit
587
+ or
588
+ restart.
589
+
590
+ 2008-01-05 21:16 Rocky Bernstein
591
+
592
+ * ChangeLog: More work to make annotate more like gdb's.
593
+ starting/stopping/exiting
594
+ should be more similar. Some code has been commented out until we
595
+ get
596
+ the Emacs interface to match. See "FIXME: ANNOTATE" in
597
+ processor.rb.
598
+ Also regression tests for output and annotate currently fail for
599
+ this
600
+ reason.
601
+
602
+ 2008-01-02 20:35 Rocky Bernstein
603
+
604
+ * ChangeLog: helper.rb: add regexp for a position. TODO: add
605
+ parsing routine and use in
606
+ various commands
607
+
608
+ 2008-01-02 14:41 Rocky Bernstein
609
+
610
+ * ChangeLog: processor.rb: Redo where starting/exiting annotations
611
+ are done.
612
+ rdebug.el: back off on setting output command for now.
613
+
614
+ 2008-01-01 15:23 Rocky Bernstein
615
+
616
+ * ChangeLog: Fix --emacs to do --no-quit properly.
617
+
618
+ 2008-01-01 09:00 Rocky Bernstein
619
+
620
+ * ChangeLog: Remove RDoc warnings caused because C files have been
621
+ split up.
622
+
623
+ 2008-01-01 05:51 Rocky Bernstein
624
+
625
+ * ChangeLog: reindent -> indent. Makefile.am: wasn't including all
626
+ test files.
627
+
628
+ 2007-12-31 06:26 Rocky Bernstein
629
+
630
+ * ChangeLog: Rakefile: add spit-off C files to ruby-debug-base gem.
631
+
632
+ 2007-12-31 06:23 Rocky Bernstein
633
+
634
+ * ChangeLog: rdebug-test-cmd.el: Indentation
635
+
636
+ 2007-12-31 06:08 Rocky Bernstein
637
+
638
+ * ChangeLog: Changes and more changes.
639
+
640
+ 2007-12-29 13:31 Rocky Bernstein
641
+
642
+ * ChangeLog: Remove looping on quit. "-n" is broken so remove it
643
+ for now.
644
+
645
+ 2007-12-28 15:33 Rocky Bernstein
646
+
647
+ * ChangeLog: info.rb: Incorrect test for no display expressions.
648
+ display.rb: Grammar thing.
649
+ processor.rb: Slightly cleaner code
650
+ test/* more/better tests.
651
+
652
+ 2007-12-27 21:03 Rocky Bernstein
653
+
654
+ * ChangeLog: Be more agressive about resetting gud-last-frame and
655
+ gud-last-last-frame. These foul up tracking when debugging is
656
+ interrupted.
657
+ We probably need a special "reset" command.
658
+
659
+ 2007-12-26 18:35 Rocky Bernstein
660
+
661
+ * ChangeLog: Version number games - maybe 0.10.1 is better.
662
+
663
+ 2007-12-25 23:40 Rocky Bernstein
664
+
665
+ * ChangeLog: Add step- and step+. Document as well as the new
666
+ toggle command.
667
+
668
+ 2007-12-25 09:55 Rocky Bernstein
669
+
670
+ * ChangeLog: Small doc fixes.
671
+
672
+ 2007-12-25 07:51 Rocky Bernstein
673
+
674
+ * ChangeLog: Last commit before 0.10.0 release.
675
+
676
+ 2007-12-25 02:51 Rocky Bernstein
677
+
678
+ * ChangeLog: breakpoints.*: main -> Object. Add bad Class name test
679
+ AUTHOR: Add Anders
680
+ README: note ruby-debug-extra. More precise (I think)
681
+
682
+ 2007-12-24 00:25 Rocky Bernstein
683
+
684
+ * ChangeLog: Rakefile: set up gem unit test for ruby-debug-base.
685
+ Add file in test/
686
+ so we could do the same for ruby-debug were it not for other
687
+ mysterious
688
+ problems.
689
+
690
+ 2007-12-23 17:33 Rocky Bernstein
691
+
692
+ * ChangeLog: Go over packaging:
693
+ ChangeLogs for ruby-debug-base (in ext and lib) separate from CLI
694
+ ChangeLog
695
+ ChangeLogs now map userid to names
696
+ ruby-debug-base regression test included in ruby-debug-base
697
+ Columnize test separated. (It will disappear when ruby-debug
698
+ requires it
699
+ as an external)
700
+
701
+ 2007-12-16 21:31 Rocky Bernstein
702
+
703
+ * ruby-debug-base.rb: Add "info variables test".
704
+
705
+ ruby-debug-base.rb: Not sure how test(?M, file) ever worked
706
+ before but change
707
+ to use File.stat(file).mtime
708
+ info.rb: ignore debugger variables which are sometimes set.
709
+
710
+ 2007-12-10 03:23 Rocky Bernstein
711
+
712
+ * ruby-debug-base.rb: doc changes.
713
+
714
+ 2007-06-26 07:05 Rocky Bernstein
715
+
716
+ * ruby-debug-base.rb: Run .rdebugrc on Debugger.start. Look for
717
+ this in the current directory and run that instead the one in
718
+ $HOME if that exists. Again, inspired and compatible with gdb.
719
+
720
+ rdebug: Check script for syntax errors before loading. We get
721
+ more informative errors and it doesn't look like rdebug is at
722
+ fault.
723
+
724
+ 2007-06-05 16:36 Kent Sibilev
725
+
726
+ * ruby-debug-base.rb: code reorganization.
727
+ reverted 'run' command.
728
+
729
+ 2007-06-05 07:59 Kent Sibilev
730
+
731
+ * ruby-debug-base.rb: restore post_mortem
732
+
733
+ 2007-06-02 15:01 Rocky Bernstein
734
+
735
+ * ruby-debug-base.rb: lib/ruby-debug-base.rb: add Quit and Restart
736
+ exceptions which can reliably be used after the delayed exception
737
+ handling bug is fixed
738
+ emacs/rdebug-track.el and cli/ruby-debug/processor.rb: more
739
+ accurate line tracking in EMACS. When not in emacs should be more
740
+ like what was there.
741
+
742
+ 2007-06-01 21:57 Rocky Bernstein
743
+
744
+ * ruby-debug-base.rb: parens around a print seems to give a
745
+ warning. Remove.
746
+
747
+ 2007-05-23 16:43 Rocky Bernstein
748
+
749
+ * ruby-debug-base.rb: post_mortem: to test $! *before* running
750
+ debug_at_ext or else we may get an erroneous message:
751
+ ruby-debug-base.rb:162:in `current_context': Debugger.start is
752
+ not called yet. (RuntimeError)
753
+
754
+ A simple test case to show the problem:
755
+
756
+ "require rubygems"
757
+ "require ruby-debug"
758
+ Debugger.start
759
+ Debugger.post_mortem
760
+ exit # Causes us to incorrectly give the above error
761
+
762
+ 2007-05-15 20:22 Kent Sibilev
763
+
764
+ * ruby-debug-base.rb: various fixes
765
+
766
+ 2007-04-27 23:21 Kent Sibilev
767
+
768
+ * ruby-debug-base.rb: ditto
769
+
770
+ 2007-04-27 23:19 Kent Sibilev
771
+
772
+ * ruby-debug-base.rb: add breakpoint method as an alias for
773
+ debugger in case breakpoint method is not defined already
774
+
775
+ 2007-03-25 01:03 Kent Sibilev
776
+
777
+ * ruby-debug-base.rb: will start the debugger if necessary
778
+
779
+ 2007-03-24 18:17 Kent Sibilev
780
+
781
+ * stable becomes the trunk
782
+
783
+ 2007-03-13 17:06 Kent Sibilev
784
+
785
+ * fixed rdoc
786
+
787
+ 2007-03-01 23:44 Kent Sibilev
788
+
789
+ * fixed post-mortem
790
+
791
+ 2007-02-27 08:02 Kent Sibilev
792
+
793
+ * repackaging ruby-debug
794
+
795
+ 2007-02-23 20:56 Kent Sibilev
796
+
797
+ * added an option for Debugger.debug_load to stop at the first line
798
+ of code
799
+
800
+ 2007-02-12 06:59 Kent Sibilev
801
+
802
+ * added --emacs option
803
+
804
+ 2007-02-09 16:56 Kent Sibilev
805
+
806
+ * in remote mode the debugger shouldn't stop inside of rdebug
807
+ script
808
+
809
+ 2007-02-09 06:20 Kent Sibilev
810
+
811
+ * --
812
+
813
+ 2007-02-09 01:00 Kent Sibilev
814
+
815
+ * fixed code reloading
816
+ made 'reload on' as a part of the 'set' command
817
+ evaluate ~/.rdebugrc as an init script
818
+
819
+ 2007-02-07 02:42 Kent Sibilev
820
+
821
+ * should use ignored? method to check for the debugger's thread
822
+
823
+ 2007-02-06 22:21 Kent Sibilev
824
+
825
+ *
826
+
827
+ 2007-02-05 22:48 Kent Sibilev
828
+
829
+ * --
830
+
831
+ 2007-02-05 22:11 Kent Sibilev
832
+
833
+ * fixed emacs integration
834
+
835
+ 2007-02-05 20:16 Kent Sibilev
836
+
837
+ * fixed another issue where a bogus frame is being left in the
838
+ stack
839
+
840
+ 2007-02-04 23:36 Kent Sibilev
841
+
842
+ * seg fault bugfixes
843
+ fixed suspend/resume
844
+
845
+ 2007-02-04 03:49 Kent Sibilev
846
+
847
+ * A better fix for the segmentation fault
848
+
849
+ 2007-02-03 20:24 Kent Sibilev
850
+
851
+ * fix seg fault by avoiding ruby's bug
852
+ fixed Context#resume
853
+ when handling post-mortem all threads must be suspended
854
+
855
+ 2007-02-02 18:47 Kent Sibilev
856
+
857
+ * removed ambiguity with down command
858
+
859
+ 2007-02-01 23:48 Kent Sibilev
860
+
861
+ * typo
862
+
863
+ 2007-02-01 22:15 Kent Sibilev
864
+
865
+ * made eval command available from the control thread
866
+
867
+ 2007-02-01 07:22 Kent Sibilev
868
+
869
+ * added setting command
870
+ added Context#suspended? method
871
+ dispay suspended status in the thread list
872
+ display frame starting from zero
873
+
874
+ 2007-01-31 21:13 Kent Sibilev
875
+
876
+ * ditto
877
+
878
+ 2007-01-31 21:12 Kent Sibilev
879
+
880
+ * fixed help command
881
+
882
+ 2007-01-31 19:39 Kent Sibilev
883
+
884
+ * fixed frame count
885
+ added frame_self method to context
886
+
887
+ 2007-01-31 16:48 Kent Sibilev
888
+
889
+ * removed all references to frames array
890
+ fixed post-mortem debugging
891
+
892
+ 2007-01-31 00:51 Kent Sibilev
893
+
894
+ * removed obsolete frames usage
895
+
896
+ 2007-01-31 00:41 Kent Sibilev
897
+
898
+ * refactored out frame class and preallocate stack
899
+ made local variable available even when bindings are not
900
+ collected.
901
+
902
+ 2007-01-28 20:25 Kent Sibilev
903
+
904
+ * --
905
+
906
+ 2007-01-28 06:22 Kent Sibilev
907
+
908
+ * - Control thread is always started by rdebug script.
909
+ - Ability to specify negative frame number to frame commands.
910
+ Patch from R. Bernstein.
911
+
912
+ 2007-01-28 04:52 Kent Sibilev
913
+
914
+ * added top frame caching
915
+ control thread is always started by rdebug script
916
+
917
+ 2007-01-27 01:43 Kent Sibilev
918
+
919
+ * another performance optimization
920
+
921
+ 2007-01-26 20:28 Kent Sibilev
922
+
923
+ * fixed #7484
924
+
925
+ 2007-01-26 17:59 Kent Sibilev
926
+
927
+ * revisited file name comparing procedure
928
+
929
+ 2007-01-26 09:03 Kent Sibilev
930
+
931
+ * performance improvements
932
+
933
+ 2007-01-26 03:12 Kent Sibilev
934
+
935
+ * added option to exclude collecting of frame bindings
936
+
937
+ 2007-01-24 18:33 Kent Sibilev
938
+
939
+ * disable tracing when in post-mortem
940
+ added -x/--trace option to rdebug script
941
+
942
+ 2007-01-21 08:13 Kent Sibilev
943
+
944
+ *
945
+
946
+ 2007-01-21 03:34 Kent Sibilev
947
+
948
+ * assign an id to the breakpoint
949
+
950
+ 2007-01-21 01:20 Kent Sibilev
951
+
952
+ * added post_mortem_method wrap method
953
+
954
+ 2006-12-21 20:16 Kent Sibilev
955
+
956
+ * added 'restart' command
957
+
958
+ 2006-12-21 14:12 Kent Sibilev
959
+
960
+ * made 'exit' an alias to 'quit'
961
+ fixed the interoperability problem with rspec
962
+
963
+ 2006-12-21 13:43 Kent Sibilev
964
+
965
+ * fixed trace command in post-mortem mode
966
+
967
+ 2006-12-21 01:59 Kent Sibilev
968
+
969
+ * initialize only once
970
+
971
+ 2006-12-21 01:08 Kent Sibilev
972
+
973
+ * fixes irb help command
974
+
975
+ 2006-12-20 21:19 Kent Sibilev
976
+
977
+ * check that debugger has been started
978
+
979
+ 2006-12-20 20:08 Kent Sibilev
980
+
981
+ * added post-mortem option to rdebug
982
+
983
+ 2006-12-20 19:38 Kent Sibilev
984
+
985
+ * initial support for post-mortem debugging
986
+
987
+ 2006-12-19 06:13 Kent Sibilev
988
+
989
+ * removed 'run' alias
990
+
991
+ 2006-12-18 08:34 Kent Sibilev
992
+
993
+ * added irb command
994
+ fixed source_for method
995
+
996
+ 2006-12-02 19:15 Kent Sibilev
997
+
998
+ * added reload command
999
+
1000
+ 2006-12-02 18:32 Kent Sibilev
1001
+
1002
+ * fixed #6518 and #6545
1003
+
1004
+ 2006-12-01 06:47 Kent Sibilev
1005
+
1006
+ *
1007
+
1008
+ 2006-11-21 23:29 Kent Sibilev
1009
+
1010
+ * ensure that on/off is the last on the line
1011
+
1012
+ 2006-11-16 00:04 Kent Sibilev
1013
+
1014
+ * fixed debug_method for assignment methods
1015
+
1016
+ 2006-11-16 00:01 Kent Sibilev
1017
+
1018
+ * added the new branch for the stable version
1019
+
1020
+ 2006-10-15 22:43 Kent Sibilev
1021
+
1022
+ * branching a stable version
1023
+
1024
+ 2006-10-15 22:26 Kent Sibilev
1025
+
1026
+ * ruby-debug.rb: remove unused require
1027
+ uploaded new windows binary
1028
+
1029
+ 2006-10-15 19:02 Kent Sibilev
1030
+
1031
+ * ruby-debug/commands/display.rb: remove unused constructor
1032
+
1033
+ 2006-10-15 16:54 Kent Sibilev
1034
+
1035
+ * ruby-debug.rb, ruby-debug/commands/threads.rb: new logic of
1036
+ context suspend/resume
1037
+
1038
+ 2006-10-15 07:36 Kent Sibilev
1039
+
1040
+ * ruby-debug.rb, ruby-debug/lock.rb: fixed locking of debugger
1041
+ threads
1042
+
1043
+ 2006-10-09 22:01 Kent Sibilev
1044
+
1045
+ * ruby-debug/interface.rb: fixes for windows version
1046
+
1047
+ 2006-10-09 19:06 Kent Sibilev
1048
+
1049
+ * ruby-debug.rb, ruby-debug/interface.rb: added Debugger.skip and
1050
+ Debugger.debug_at_exit methods
1051
+
1052
+ 2006-10-09 16:44 Kent Sibilev
1053
+
1054
+ * ., ruby-debug, ruby-debug.rb, ruby-debug/command.rb,
1055
+ ruby-debug/commands, ruby-debug/commands/breakpoints.rb,
1056
+ ruby-debug/commands/catchpoint.rb,
1057
+ ruby-debug/commands/control.rb, ruby-debug/commands/display.rb,
1058
+ ruby-debug/commands/eval.rb, ruby-debug/commands/frame.rb,
1059
+ ruby-debug/commands/help.rb, ruby-debug/commands/list.rb,
1060
+ ruby-debug/commands/method.rb, ruby-debug/commands/script.rb,
1061
+ ruby-debug/commands/stepping.rb, ruby-debug/commands/threads.rb,
1062
+ ruby-debug/commands/tmate.rb, ruby-debug/commands/trace.rb,
1063
+ ruby-debug/commands/variables.rb, ruby-debug/interface.rb,
1064
+ ruby-debug/lock.rb, ruby-debug/processor.rb: initial import
1065
+