ruby-debug-base193 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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
+