trepanning 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (134) hide show
  1. data/ChangeLog +465 -0
  2. data/NEWS +26 -1
  3. data/README.textile +1 -1
  4. data/app/cmd_parse.kpeg +2 -1
  5. data/app/cmd_parser.rb +30 -3
  6. data/app/core.rb +1 -1
  7. data/app/display.rb +39 -1
  8. data/app/frame.rb +1 -1
  9. data/app/irb.rb +42 -40
  10. data/app/options.rb +3 -2
  11. data/app/run.rb +21 -7
  12. data/app/util.rb +12 -2
  13. data/app/yarv.rb +0 -2
  14. data/bin/trepan +2 -3
  15. data/data/perldb.bindings +17 -0
  16. data/interface/script.rb +1 -1
  17. data/interface/server.rb +1 -1
  18. data/interface/user.rb +3 -1
  19. data/{interface/base_intf.rb → interface.rb} +1 -1
  20. data/io/input.rb +1 -3
  21. data/io/null_output.rb +1 -1
  22. data/io/string_array.rb +1 -2
  23. data/io/tcpclient.rb +1 -1
  24. data/io/tcpserver.rb +1 -1
  25. data/{io/base_io.rb → io.rb} +0 -0
  26. data/lib/trepanning.rb +2 -1
  27. data/processor/command/alias.rb +15 -4
  28. data/processor/command/backtrace.rb +2 -2
  29. data/processor/command/base/subcmd.rb +1 -5
  30. data/processor/command/base/submgr.rb +1 -1
  31. data/processor/command/base/subsubcmd.rb +1 -1
  32. data/processor/command/base/subsubmgr.rb +4 -4
  33. data/processor/command/break.rb +1 -1
  34. data/processor/command/complete.rb +1 -1
  35. data/processor/command/condition.rb +2 -2
  36. data/processor/command/continue.rb +1 -1
  37. data/processor/command/debug.rb +1 -1
  38. data/processor/command/delete.rb +10 -7
  39. data/processor/command/directory.rb +1 -1
  40. data/processor/command/disable.rb +25 -19
  41. data/processor/command/disassemble.rb +1 -1
  42. data/processor/command/display.rb +35 -28
  43. data/processor/command/down.rb +8 -8
  44. data/processor/command/edit.rb +1 -1
  45. data/processor/command/enable.rb +10 -12
  46. data/processor/command/eval.rb +1 -1
  47. data/processor/command/exit.rb +1 -1
  48. data/processor/command/finish.rb +1 -1
  49. data/processor/command/frame.rb +2 -2
  50. data/processor/command/help.rb +6 -8
  51. data/processor/command/info.rb +2 -0
  52. data/processor/command/info_subcmd/files.rb +17 -11
  53. data/processor/command/info_subcmd/frame.rb +0 -1
  54. data/processor/command/info_subcmd/locals.rb +6 -73
  55. data/processor/command/info_subcmd/source.rb +10 -4
  56. data/processor/command/info_subcmd/variables.rb +34 -0
  57. data/processor/command/info_subcmd/variables_subcmd/.gitignore +1 -0
  58. data/processor/command/info_subcmd/variables_subcmd/class.rb +40 -0
  59. data/processor/command/info_subcmd/variables_subcmd/constant.rb +41 -0
  60. data/processor/command/info_subcmd/{globals.rb → variables_subcmd/globals.rb} +21 -16
  61. data/processor/command/info_subcmd/variables_subcmd/instance.rb +41 -0
  62. data/processor/command/info_subcmd/variables_subcmd/locals.rb +99 -0
  63. data/processor/command/kill.rb +9 -8
  64. data/processor/command/list.rb +9 -107
  65. data/processor/command/macro.rb +27 -9
  66. data/processor/command/next.rb +1 -1
  67. data/processor/command/nocache.rb +2 -2
  68. data/processor/command/parsetree.rb +1 -1
  69. data/processor/command/pp.rb +1 -1
  70. data/processor/command/pr.rb +1 -1
  71. data/processor/command/ps.rb +1 -1
  72. data/processor/command/quit.rb +18 -7
  73. data/processor/command/raise.rb +1 -1
  74. data/processor/command/reload.rb +10 -10
  75. data/processor/command/restart.rb +1 -1
  76. data/processor/command/save.rb +1 -1
  77. data/processor/command/server.rb +1 -1
  78. data/processor/command/set_subcmd/auto.rb +7 -1
  79. data/processor/command/set_subcmd/different.rb +5 -4
  80. data/processor/command/set_subcmd/substitute_subcmd/eval.rb +2 -2
  81. data/processor/command/set_subcmd/trace.rb +5 -4
  82. data/processor/command/set_subcmd/trace_subcmd/print.rb +4 -3
  83. data/processor/command/shell.rb +5 -3
  84. data/processor/command/show_subcmd/{alias.rb → aliases.rb} +2 -2
  85. data/processor/command/show_subcmd/auto_subcmd/eval.rb +2 -7
  86. data/processor/command/show_subcmd/trace_subcmd/print.rb +3 -3
  87. data/processor/command/show_subcmd/version.rb +24 -0
  88. data/processor/command/source.rb +1 -1
  89. data/processor/command/step.rb +1 -1
  90. data/processor/command/tbreak.rb +1 -1
  91. data/processor/command/unalias.rb +11 -6
  92. data/processor/command/undisplay.rb +14 -10
  93. data/processor/command/up.rb +12 -13
  94. data/processor/command/watchg.rb +1 -1
  95. data/processor/{command/base/cmd.rb → command.rb} +3 -2
  96. data/processor/display.rb +34 -0
  97. data/processor/frame.rb +2 -2
  98. data/processor/help.rb +6 -4
  99. data/processor/hook.rb +95 -96
  100. data/processor/list.rb +146 -0
  101. data/processor/location.rb +26 -0
  102. data/processor/mock.rb +4 -7
  103. data/processor/msg.rb +54 -42
  104. data/processor/running.rb +6 -3
  105. data/processor/subcmd.rb +16 -41
  106. data/processor/validate.rb +6 -9
  107. data/{processor/main.rb → processor.rb} +11 -40
  108. data/sample/rocky-trepan-colors.rb +0 -1
  109. data/test/data/enable.cmd +1 -1
  110. data/test/data/trace.cmd +6 -0
  111. data/test/data/trace.right +39 -0
  112. data/test/example/gcd.rb +0 -1
  113. data/test/functional/test-next.rb +1 -1
  114. data/test/integration/helper.rb +4 -0
  115. data/test/integration/test-trace.rb +18 -0
  116. data/test/unit/cmd-helper.rb +4 -4
  117. data/test/unit/test-app-cmd_parse.rb +1 -1
  118. data/test/unit/test-app-display.rb +22 -0
  119. data/test/unit/test-app-options.rb +14 -10
  120. data/test/unit/test-app-run.rb +7 -1
  121. data/test/unit/test-base-subcmd.rb +1 -1
  122. data/test/unit/test-cmd-kill.rb +11 -4
  123. data/test/unit/test-cmd-parse_list_cmd.rb +1 -1
  124. data/test/unit/{test-base-cmd.rb → test-command.rb} +1 -1
  125. data/test/unit/test-proc-eval.rb +1 -2
  126. data/test/unit/test-proc-frame.rb +1 -2
  127. data/test/unit/test-proc-list.rb +52 -0
  128. data/test/unit/test-proc-load_cmds.rb +1 -1
  129. data/test/unit/test-proc-location.rb +11 -4
  130. data/test/unit/test-proc-main.rb +1 -1
  131. data/test/unit/test-proc-validate.rb +1 -2
  132. data/test/unit/test-subcmd-help.rb +1 -1
  133. data/trepanning.gemspec +1 -1
  134. metadata +26 -12
data/ChangeLog CHANGED
@@ -1,3 +1,468 @@
1
+ 2011-10-15 rocky <rockyb@rubyforge.org>
2
+
3
+ * processor/command/enable.rb: Another small doc change to enable
4
+
5
+ 2011-10-15 rocky <rockyb@rubyforge.org>
6
+
7
+ * processor/command/delete.rb: More generic "delete" demo code
8
+
9
+ 2011-10-15 rocky <rockyb@rubyforge.org>
10
+
11
+ * app/display.rb, processor/command/delete.rb,
12
+ processor/command/undisplay.rb: command/undisplay.rb: command
13
+ completion of display numbers. Update help. Get confirmation before
14
+ deleting all displays command/delete.rb: error checking on display
15
+ numbers app/display.rb: nums() return a list of display numbers.
16
+
17
+ 2011-10-14 rocky <rockyb@rubyforge.org>
18
+
19
+ * app/display.rb, processor/command/disable.rb,
20
+ processor/display.rb, test/unit/test-app-display.rb: Add
21
+ enable/display display NUM..
22
+
23
+ 2011-10-14 rocky <rockyb@rubyforge.org>
24
+
25
+ * processor/command/disable.rb, processor/command/display.rb,
26
+ processor/command/enable.rb: Update help text for "enable",
27
+ "disable" and "display"
28
+
29
+ 2011-10-10 rocky <rockyb@rubyforge.org>
30
+
31
+ Merge branch 'master' of github.com:rocky/rb-trepanning
32
+
33
+ 2011-10-10 rocky <rockyb@rubyforge.org>
34
+
35
+ * processor.rb, processor/command/display.rb, processor/running.rb,
36
+ test/data/enable.cmd, test/data/trace.right: Respect breakpoints
37
+ when :traceprint is in effect. However turn a "continue" into a
38
+ "step" when :traceprint is in effect. save_display is borked.
39
+
40
+ 2011-10-09 rocky <rockyb@rubyforge.org>
41
+
42
+ * processor/command/set_subcmd/auto.rb,
43
+ processor/command/set_subcmd/trace.rb,
44
+ processor/command/show_subcmd/trace_subcmd/print.rb: Some more small
45
+ doc tweaks
46
+
47
+ 2011-10-09 rocky <rockyb@rubyforge.org>
48
+
49
+ * processor/command/set_subcmd/auto.rb,
50
+ processor/command/set_subcmd/different.rb,
51
+ processor/command/set_subcmd/trace.rb,
52
+ processor/command/set_subcmd/trace_subcmd/print.rb: Regularize and
53
+ improve "set" help a little bit.
54
+
55
+ 2011-10-09 rocky <rockyb@rubyforge.org>
56
+
57
+ * processor.rb, test/data/trace.cmd, test/data/trace.right,
58
+ test/integration/test-trace.rb: --trace works now.
59
+
60
+ 2011-10-09 rocky <rockyb@rubyforge.org>
61
+
62
+ * app/options.rb, bin/trepan, lib/trepanning.rb,
63
+ test/example/gcd.rb, test/integration/helper.rb: Move closer to
64
+ having --trace (-x) working
65
+
66
+ 2011-09-30 rocky <rockyb@rubyforge.org>
67
+
68
+ * app/yarv.rb, sample/rocky-trepan-colors.rb: Changed to support
69
+ coderay 1.0.
70
+
71
+ 2011-09-26 rocky <rockyb@rubyforge.org>
72
+
73
+ Merge branch 'master' of github.com:rocky/rb-trepanning
74
+
75
+ 2011-09-26 rocky <rockyb@rubyforge.org>
76
+
77
+ * processor/command/macro.rb: Improve "macro" documentation
78
+
79
+ 2011-09-26 R. Bernstein <rocky.bernstein@gmail.com>
80
+
81
+ Merge pull request #1 from jfirebaugh/patch-1 Correct link to
82
+ installation instructions
83
+
84
+ 2011-09-26 John Firebaugh <john.firebaugh@gmail.com>
85
+
86
+ * README.textile: Correct link to installation instructions
87
+
88
+ 2011-09-22 rocky <rockyb@rubyforge.org>
89
+
90
+ * processor/command/kill.rb, test/unit/test-cmd-kill.rb: Complete on
91
+ lower-case signal name and 'unconditionally'.
92
+
93
+ 2011-09-22 rocky <rockyb@rubyforge.org>
94
+
95
+ * processor/command/unalias.rb: Add command completion for
96
+ "unalias".
97
+
98
+ 2011-09-17 rocky <rockyb@rubyforge.org>
99
+
100
+ Merge branch 'master' of github.com:rocky/rb-trepanning
101
+
102
+ 2011-09-17 rocky <rockyb@rubyforge.org>
103
+
104
+ * processor/command/set_subcmd/different.rb: Grammar
105
+
106
+ 2011-09-15 rocky <rockyb@rubyforge.org>
107
+
108
+ * io/string_array.rb, processor/command/info_subcmd/files.rb,
109
+ processor/command/show_subcmd/auto_subcmd/eval.rb,
110
+ processor/running.rb: Misc small changes
111
+
112
+ 2011-09-07 rocky <rockyb@rubyforge.org>
113
+
114
+ * processor/running.rb, test/functional/test-next.rb: We should not
115
+ "step" or "next" over an exception!
116
+
117
+ 2011-09-05 rocky <rockyb@rubyforge.org>
118
+
119
+ Merge branch 'master' of github.com:rocky/rb-trepanning
120
+
121
+ 2011-09-05 rocky <rockyb@rubyforge.org>
122
+
123
+ * app/run.rb: Change absolute/relative file test in whence_file
124
+
125
+ 2011-09-04 rocky <rockyb@rubyforge.org>
126
+
127
+ * processor/command/info_subcmd/files.rb,
128
+ processor/command/info_subcmd/frame.rb, processor/mock.rb: Fix up
129
+ subcommand mock setup. Small "info files" change.
130
+
131
+ 2011-09-04 rocky <rockyb@rubyforge.org>
132
+
133
+ * processor/command/help.rb: Tweak general help text and adjust
134
+ spacing around listing all categories.
135
+
136
+ 2011-08-30 rocky <rockyb@rubyforge.org>
137
+
138
+ * processor/command/unalias.rb: Small changes to "unalias"
139
+
140
+ 2011-08-30 rocky <rockyb@rubyforge.org>
141
+
142
+ * processor/command/show_subcmd/alias.rb,
143
+ processor/command/show_subcmd/aliases.rb: "show alias -> show
144
+ aliases". And correct a small typo.
145
+
146
+ 2011-08-28 rocky <rockyb@rubyforge.org>
147
+
148
+ * processor.rb, processor/command/display.rb: indenting changes.
149
+
150
+ 2011-08-28 rocky <rockyb@rubyforge.org>
151
+
152
+ * processor/msg.rb: Should try to load term/ansicolor whether or not
153
+ we ask for syntax highlighting
154
+
155
+ 2011-08-22 rocky <rockyb@rubyforge.org>
156
+
157
+ * processor/help.rb: Use sectioning in giving list of subcommands
158
+
159
+ 2011-08-22 rocky <rockyb@rubyforge.org>
160
+
161
+ * processor/subcmd.rb: Get rid of another unused method
162
+
163
+ 2011-08-22 rocky <rockyb@rubyforge.org>
164
+
165
+ * processor/subcmd.rb: Stray blank got added
166
+
167
+ 2011-08-22 rocky <rockyb@rubyforge.org>
168
+
169
+ * processor/subcmd.rb: Semi-remove an unused method
170
+
171
+ 2011-08-21 rocky <rockyb@rubyforge.org>
172
+
173
+ Merge branch 'master' of github.com:rocky/rb-trepanning
174
+
175
+ 2011-08-21 rocky <rockyb@rubyforge.org>
176
+
177
+ * processor/command.rb, processor/command/base/subcmd.rb: Remove
178
+ unused function
179
+
180
+ 2011-08-21 rocky <rockyb@rubyforge.org>
181
+
182
+ * processor/command/help.rb: Wasn't showing output in showing * form
183
+ of categories.
184
+
185
+ 2011-08-21 rocky <rockyb@rubyforge.org>
186
+
187
+ * processor.rb, processor/location.rb: Move EVENT2ICON the file it
188
+ is used
189
+
190
+ 2011-08-17 rocky <rockyb@rubyforge.org>
191
+
192
+ * lib/trepanning.rb: Was setting client parameter default
193
+ incorrectly
194
+
195
+ 2011-08-15 rocky <rockyb@rubyforge.org>
196
+
197
+ * processor/command/quit.rb: Small fixes to "quit" command. Sync
198
+ with Perl trepanning.
199
+
200
+ 2011-08-14 rocky <rockyb@rubyforge.org>
201
+
202
+ * processor/validate.rb: Remove pydbgr reminant in get_an_int
203
+ comment.
204
+
205
+ 2011-08-14 rocky <rockyb@rubyforge.org>
206
+
207
+ * processor.rb, processor/msg.rb, processor/validate.rb: Small
208
+ changes to assist in Perl Debugger sync.
209
+
210
+ 2011-08-14 rocky <rockyb@rubyforge.org>
211
+
212
+ * processor/command/kill.rb, test/unit/test-app-options.rb:
213
+ test-app-options.rb: testing help/version options was killing the
214
+ rest of the tests Speaking of killing.. add more robust kill
215
+ checking and fix an outright bug in name-to-number access.
216
+
217
+ 2011-08-14 rocky <rockyb@rubyforge.org>
218
+
219
+ * processor/command/kill.rb: Small help string change
220
+
221
+ 2011-08-11 rocky <rockyb@rubyforge.org>
222
+
223
+ * app/core.rb, interface.rb, io.rb, processor.rb,
224
+ processor/command.rb, processor/frame.rb, processor/list.rb,
225
+ processor/main.rb, processor/mock.rb, processor/validate.rb,
226
+ test/unit/test-base-subcmd.rb,
227
+ test/unit/test-cmd-parse_list_cmd.rb, test/unit/test-command.rb,
228
+ test/unit/test-proc-eval.rb, test/unit/test-proc-frame.rb,
229
+ test/unit/test-proc-list.rb, test/unit/test-proc-load_cmds.rb,
230
+ test/unit/test-proc-main.rb, test/unit/test-proc-validate.rb,
231
+ test/unit/test-subcmd-help.rb: Rename "base" files.
232
+
233
+ 2011-08-10 rocky <rockyb@rubyforge.org>
234
+
235
+ * processor/command/alias.rb, processor/command/backtrace.rb,
236
+ processor/command/base/cmd.rb, processor/command/base/subcmd.rb,
237
+ processor/command/base/submgr.rb,
238
+ processor/command/base/subsubcmd.rb, processor/command/break.rb,
239
+ processor/command/complete.rb, processor/command/condition.rb,
240
+ processor/command/continue.rb, processor/command/debug.rb,
241
+ processor/command/delete.rb, processor/command/directory.rb,
242
+ processor/command/disable.rb, processor/command/disassemble.rb,
243
+ processor/command/display.rb, processor/command/edit.rb,
244
+ processor/command/eval.rb, processor/command/exit.rb,
245
+ processor/command/finish.rb, processor/command/frame.rb,
246
+ processor/command/help.rb, processor/command/kill.rb,
247
+ processor/command/list.rb, processor/command/macro.rb,
248
+ processor/command/next.rb, processor/command/nocache.rb,
249
+ processor/command/parsetree.rb, processor/command/pp.rb,
250
+ processor/command/pr.rb, processor/command/ps.rb,
251
+ processor/command/quit.rb, processor/command/raise.rb,
252
+ processor/command/restart.rb, processor/command/save.rb,
253
+ processor/command/server.rb, processor/command/shell.rb,
254
+ processor/command/source.rb, processor/command/step.rb,
255
+ processor/command/tbreak.rb, processor/command/unalias.rb,
256
+ processor/command/undisplay.rb, processor/command/up.rb,
257
+ processor/command/watchg.rb, test/unit/test-base-cmd.rb: Change
258
+ another "base" file to the name of the class, e.g. Trepan::Command
259
+
260
+ 2011-08-10 rocky <rockyb@rubyforge.org>
261
+
262
+ * interface/base_intf.rb, interface/script.rb, interface/server.rb,
263
+ interface/user.rb, io/base_io.rb, io/input.rb, io/null_output.rb,
264
+ io/string_array.rb, io/tcpclient.rb, io/tcpserver.rb: Perl teaches
265
+ me a thing about how to structure base classes. user.rb: add demo of
266
+ close and closed? when closed.
267
+
268
+ 2011-07-28 rocky <rockyb@rubyforge.org>
269
+
270
+ * processor/command/list.rb: Sync with rbx-trepanning
271
+
272
+ 2011-07-23 rocky <rockyb@rubyforge.org>
273
+
274
+ * processor/list.rb, test/unit/test-proc-list.rb: A little bit of
275
+ testing on last change. Weak but still something
276
+
277
+ 2011-07-23 rocky <rockyb@rubyforge.org>
278
+
279
+ * app/cmd_parse.kpeg, app/cmd_parser.rb, processor/command/list.rb,
280
+ processor/list.rb: Allow negative numbers in "list" command's last
281
+ field to mean range first+last .. first.
282
+
283
+ 2011-07-23 rocky <rockyb@rubyforge.org>
284
+
285
+ * app/frame.rb, processor/command/list.rb, processor/list.rb,
286
+ processor/validate.rb, test/unit/test-proc-list.rb: Move list
287
+ parsing to its own file. Go over and generalize a little.
288
+
289
+ 2011-06-23 rocky <rockyb@rubyforge.org>
290
+
291
+ Merge branch 'master' of github.com:rocky/rb-trepanning
292
+
293
+ 2011-06-22 rocky <rockyb@rubyforge.org>
294
+
295
+ * trepanning.gemspec: diff-lcs dependency is only a deveopment
296
+ dependency.
297
+
298
+ 2011-06-21 rocky <rockyb@rubyforge.org>
299
+
300
+ Merge branch 'master' of github.com:rocky/rb-trepanning
301
+
302
+ 2011-06-21 rocky <rockyb@rubyforge.org>
303
+
304
+ * NEWS, app/run.rb, app/util.rb, bin/trepan,
305
+ processor/command/info_subcmd/files.rb,
306
+ processor/command/info_subcmd/source.rb, test/unit/test-app-run.rb:
307
+ Give breakpoints for files via linecache only if they are
308
+ syntactically correct ruby files. Fix bug in "info files .".
309
+
310
+ 2011-06-19 rocky <rockyb@rubyforge.org>
311
+
312
+ Merge branch 'master' of github.com:rocky/rb-trepanning
313
+ Conflicts: processor/command/info_subcmd/variables_subcmd/locals.rb
314
+ processor/msg.rb
315
+
316
+ 2011-06-19 rocky <rockyb@rubyforge.org>
317
+
318
+ * processor/command/help.rb, processor/command/info.rb,
319
+ processor/command/info_subcmd/variables_subcmd/constant.rb,
320
+ processor/command/info_subcmd/variables_subcmd/locals.rb,
321
+ processor/help.rb, processor/msg.rb, processor/subcmd.rb: Correct
322
+ abbreviation lookup and respect mode. Add "info var constant".
323
+
324
+ 2011-06-18 rocky <rockyb@rubyforge.org>
325
+
326
+ * app/irb.rb,
327
+ processor/command/info_subcmd/variables_subcmd/class.rb,
328
+ processor/command/info_subcmd/variables_subcmd/globals.rb,
329
+ processor/command/info_subcmd/variables_subcmd/instance.rb,
330
+ processor/command/info_subcmd/variables_subcmd/locals.rb,
331
+ processor/command/shell.rb, processor/msg.rb: Color "info
332
+ "variables" display. Fix some bug in issuing "dbgr" command.
333
+
334
+ 2011-06-18 rocky <rockyb@rubyforge.org>
335
+
336
+ * processor/command/info_subcmd/variables.rb,
337
+ processor/command/info_subcmd/variables_subcmd/globals.rb,
338
+ processor/command/info_subcmd/variables_subcmd/locals.rb: Completion
339
+ on "i v g" and other small changes.
340
+
341
+ 2011-06-18 rocky <rockyb@rubyforge.org>
342
+
343
+ * processor/command/show_subcmd/version.rb: Remove stray '
344
+
345
+ 2011-06-18 rocky <rockyb@rubyforge.org>
346
+
347
+ * processor/command/info_subcmd/variables_subcmd/class.rb,
348
+ processor/command/show_subcmd/version.rb: Add "show version" and
349
+ plug small bug for "info var constants" .
350
+
351
+ 2011-06-18 rocky <rockyb@rubyforge.org>
352
+
353
+ * processor/command/base/subsubmgr.rb,
354
+ processor/command/info_subcmd/globals.rb,
355
+ processor/command/info_subcmd/iv.rb,
356
+ processor/command/info_subcmd/locals.rb,
357
+ processor/command/info_subcmd/variables.rb,
358
+ processor/command/info_subcmd/variables_subcmd/.gitignore,
359
+ processor/command/info_subcmd/variables_subcmd/class.rb,
360
+ processor/command/info_subcmd/variables_subcmd/globals.rb,
361
+ processor/command/info_subcmd/variables_subcmd/instance.rb,
362
+ processor/command/info_subcmd/variables_subcmd/locals.rb,
363
+ processor/mock.rb: Create "info variables" and move locals, globals
364
+ iv (now instance) into that. Get abbreviations for subcommand
365
+ working. Add "info locals" as alternate for "info variables locals"
366
+ as gdb has it.
367
+
368
+ 2011-06-18 rocky <rockyb@rubyforge.org>
369
+
370
+ * processor/command/disable.rb, processor/command/enable.rb,
371
+ processor/command/info_subcmd/locals.rb: Tidy a little bit
372
+
373
+ 2011-06-18 rocky <rockyb@rubyforge.org>
374
+
375
+ * app/util.rb, processor/command/alias.rb,
376
+ processor/command/disable.rb, processor/command/down.rb,
377
+ processor/command/enable.rb,
378
+ processor/command/info_subcmd/globals.rb,
379
+ processor/command/info_subcmd/iv.rb,
380
+ processor/command/info_subcmd/locals.rb,
381
+ processor/command/reload.rb, processor/command/up.rb: Add "info iv"
382
+ to show instance variables. Use slightly cleaner way to suppress
383
+ already-defined constants.
384
+
385
+ 2011-06-18 rocky <rockyb@rubyforge.org>
386
+
387
+ * data/perldb.bindings, processor/command/alias.rb,
388
+ processor/command/list.rb, processor/main.rb: First stab at bindings
389
+ to simuliate perldb. Alias help expanded. main.rb add interfaces
390
+ accessor.
391
+
392
+ 2011-06-16 rocky <rockyb@rubyforge.org>
393
+
394
+ * app/irb.rb, app/options.rb, processor/command/shell.rb,
395
+ processor/hook.rb, test/unit/cmd-helper.rb,
396
+ test/unit/test-app-cmd_parse.rb, test/unit/test-proc-location.rb:
397
+ Fix autoirb. Sync with rbx-trepanning.
398
+
399
+ 2011-06-12 rocky <rockyb@rubyforge.org>
400
+
401
+ * ChangeLog, app/options.rb: Get ready for 0.1.3 release
402
+
403
+ 2011-06-11 rocky <rockyb@rubyforge.org>
404
+
405
+ * processor/command/base/subcmd.rb,
406
+ processor/command/base/subsubcmd.rb,
407
+ processor/command/base/subsubmgr.rb,
408
+ processor/command/set_subcmd/trace_subcmd/buffer.rb,
409
+ processor/command/set_subcmd/trace_subcmd/print.rb,
410
+ processor/command/show_subcmd/trace_subcmd/buffer.rb,
411
+ processor/load_cmds.rb: Small changes and some lint-like things.
412
+
413
+ 2011-06-11 rocky <rockyb@rubyforge.org>
414
+
415
+ * processor/command/set_subcmd/reload.rb,
416
+ processor/command/show_subcmd/reload.rb: We don't need or want
417
+ require-relative here.
418
+
419
+ 2011-06-11 rocky <rockyb@rubyforge.org>
420
+
421
+ Merge branch 'master' of github.com:rocky/rb-trepanning
422
+
423
+ 2011-06-11 rocky <rockyb@rubyforge.org>
424
+
425
+ * processor/command/watchg.rb, processor/load_cmds.rb: Join class
426
+ Trepan; class CmdProcessor to make more compatible with
427
+ rb8-trepanning
428
+
429
+ 2011-06-11 rocky <rockyb@rubyforge.org>
430
+
431
+ * app/complete.rb, app/core.rb, app/mock.rb,
432
+ processor/command/info_subcmd/breakpoints.rb,
433
+ processor/command/quit.rb, processor/command/set_subcmd/trace.rb,
434
+ processor/command/set_subcmd/trace_subcmd/buffer.rb,
435
+ processor/command/set_subcmd/trace_subcmd/print.rb,
436
+ processor/command/set_subcmd/trace_subcmd/var.rb,
437
+ processor/command/watchg.rb, processor/location.rb,
438
+ processor/main.rb, processor/mock.rb,
439
+ test/functional/test-trace-var.rb, test/functional/test-watchg.rb,
440
+ test/unit/test-app-file.rb, test/unit/test-base-subcmd.rb,
441
+ test/unit/test-base-submgr.rb, test/unit/test-proc-location.rb,
442
+ test/unit/test-proc-main.rb: set trace var -> watchg which is more
443
+ gdb-like. Add on/off/stop/nostop which is more like ruby-debug had.
444
+ Show variable and value on change. And show in "info breakpoint". Go
445
+ over rake check:unit to make work. Test code setup has gotten
446
+ simpler.
447
+
448
+ 2011-06-10 rocky <rockyb@rubyforge.org>
449
+
450
+ * NEWS, processor/command/help/suffixes.txt,
451
+ processor/command/list.rb, processor/command/set_subcmd/reload.rb,
452
+ processor/command/show_subcmd/reload.rb, processor/default.rb,
453
+ processor/location.rb, processor/main.rb, processor/mock.rb,
454
+ processor/virtual.rb: Add set/show reload. Sync with rbx-trepanning.
455
+
456
+
457
+ 2011-06-10 rocky <rockyb@rubyforge.org>
458
+
459
+ * ChangeLog, NEWS: What's up.
460
+
461
+ 2011-06-09 rocky <rockyb@rubyforge.org>
462
+
463
+ * processor/command/info_subcmd/locals.rb,
464
+ processor/command/info_subcmd/source.rb: Sync with rb8-trepanning
465
+
1
466
  2011-06-09 rocky <rockyb@rubyforge.org>
2
467
 
3
468
  * processor/command/info_subcmd/globals.rb,
data/NEWS CHANGED
@@ -1,3 +1,29 @@
1
+ Oct 27, 2011 (0.1.4)
2
+ - Add debugger commands:
3
+ * info iv (is in ruby-debug)
4
+ * info variables (is in ruby-debug)
5
+ * info locals as alternative to "info variables locals" (is in gdb)
6
+
7
+ - POSIX shell -x (long form: --trace) fixed
8
+
9
+ - Add disabling and enabling on display expressions
10
+
11
+ - Confirm before deleting all displays.
12
+
13
+ - Give breakpoints for files via linecache if they are syntactically
14
+ correct Ruby files
15
+
16
+ - Change whence-file to match gdb's resolution: don't apply PATH to
17
+ relative files.
18
+
19
+ - We should not "step" or "next" over an exception!
20
+
21
+ - Command Completion and help text improvements
22
+
23
+ - Syntax highlighting updated to support coderay 1.0
24
+
25
+ - Bugs fixed, code reorganized.
26
+
1
27
  June 12, 2011 (0.1.3) Fleetwood Release
2
28
  - Add debugger commands:
3
29
  * tbreak (is in gdb)
@@ -7,7 +33,6 @@ June 12, 2011 (0.1.3) Fleetwood Release
7
33
  * info stack (is in gdb, same as backtrace)
8
34
  * info macro (in in gdb; remove show macro)
9
35
  * show timer (set timer was already there)
10
- * parsetree
11
36
  * pp (is in ruby-debug)
12
37
  * set/show reload (is in ruby-debug)
13
38
 
data/README.textile CHANGED
@@ -1,6 +1,6 @@
1
1
  A modular, testable debugger for Ruby 1.9.2. A total rewrite of _ruby-debug_.
2
2
 
3
- __In order to use this debugger, you'll need a patched Ruby 1.9.2 and some additional packages. See the "installation instructions.":http://wiki.github.com/rocky/rb-trepanning/how-to-install-rbdbgr__
3
+ __In order to use this debugger, you'll need a patched Ruby 1.9.2 and some additional packages. See the "installation instructions.":https://github.com/rocky/rb-trepanning/wiki/How-to-Install-rb-trepanning__
4
4
 
5
5
  Right now this debugger is beta code.
6
6
 
data/app/cmd_parse.kpeg CHANGED
@@ -163,6 +163,7 @@ not_space_colons = ( not_space_colon )+:ary { ary.join }
163
163
  filename = dbl_string | not_space_colons
164
164
  file_pos_sep = sp+ | ':'
165
165
  integer = </[0-9]+/> { text.to_i }
166
+ sinteger = </[+-]?[0-9]+/> { text.to_i }
166
167
  line_number = integer
167
168
 
168
169
  vm_offset = '@' integer:int
@@ -229,7 +230,7 @@ breakpoint_stmt = location:loc - if_unless:iu - condition:cond {
229
230
  # the command. Also, "list" with nothing else is
230
231
  # handled there as well
231
232
  list_special_targets = <'.' | '-'> { text }
232
- list_stmt = (list_special_targets | location):loc - (integer:int)? {
233
+ list_stmt = (list_special_targets | location):loc - (sinteger:int)? {
233
234
  List.new(loc, int)
234
235
  }
235
236
  | (list_special_targets | location):loc {
data/app/cmd_parser.rb CHANGED
@@ -1379,6 +1379,32 @@ end
1379
1379
  return _tmp
1380
1380
  end
1381
1381
 
1382
+ # sinteger = < /[+-]?[0-9]+/ > { text.to_i }
1383
+ def _sinteger
1384
+
1385
+ _save = self.pos
1386
+ while true # sequence
1387
+ _text_start = self.pos
1388
+ _tmp = scan(/\A(?-mix:[+-]?[0-9]+)/)
1389
+ if _tmp
1390
+ text = get_text(_text_start)
1391
+ end
1392
+ unless _tmp
1393
+ self.pos = _save
1394
+ break
1395
+ end
1396
+ @result = begin; text.to_i ; end
1397
+ _tmp = true
1398
+ unless _tmp
1399
+ self.pos = _save
1400
+ end
1401
+ break
1402
+ end # end sequence
1403
+
1404
+ set_failed_rule :_sinteger unless _tmp
1405
+ return _tmp
1406
+ end
1407
+
1382
1408
  # line_number = integer
1383
1409
  def _line_number
1384
1410
  _tmp = apply(:_integer)
@@ -1790,7 +1816,7 @@ end
1790
1816
  return _tmp
1791
1817
  end
1792
1818
 
1793
- # list_stmt = ((list_special_targets | location):loc - integer:int? { List.new(loc, int) } | (list_special_targets | location):loc { List.new(loc, nil) })
1819
+ # list_stmt = ((list_special_targets | location):loc - sinteger:int? { List.new(loc, int) } | (list_special_targets | location):loc { List.new(loc, nil) })
1794
1820
  def _list_stmt
1795
1821
 
1796
1822
  _save = self.pos
@@ -1821,7 +1847,7 @@ end
1821
1847
  break
1822
1848
  end
1823
1849
  _save3 = self.pos
1824
- _tmp = apply(:_integer)
1850
+ _tmp = apply(:_sinteger)
1825
1851
  int = @result
1826
1852
  unless _tmp
1827
1853
  _tmp = true
@@ -1912,6 +1938,7 @@ end
1912
1938
  Rules[:_filename] = rule_info("filename", "(dbl_string | not_space_colons)")
1913
1939
  Rules[:_file_pos_sep] = rule_info("file_pos_sep", "(sp+ | \":\")")
1914
1940
  Rules[:_integer] = rule_info("integer", "< /[0-9]+/ > { text.to_i }")
1941
+ Rules[:_sinteger] = rule_info("sinteger", "< /[+-]?[0-9]+/ > { text.to_i }")
1915
1942
  Rules[:_line_number] = rule_info("line_number", "integer")
1916
1943
  Rules[:_vm_offset] = rule_info("vm_offset", "\"@\" integer:int { Position.new(nil, nil, :offset, int) }")
1917
1944
  Rules[:_position] = rule_info("position", "(vm_offset | line_number:l { Position.new(nil, nil, :line, l) })")
@@ -1921,7 +1948,7 @@ end
1921
1948
  Rules[:_breakpoint_stmt_no_condition] = rule_info("breakpoint_stmt_no_condition", "location:loc { Breakpoint.new(loc, false, 'true') }")
1922
1949
  Rules[:_breakpoint_stmt] = rule_info("breakpoint_stmt", "(location:loc - if_unless:iu - condition:cond { Breakpoint.new(loc, iu == 'unless', cond) } | breakpoint_stmt_no_condition)")
1923
1950
  Rules[:_list_special_targets] = rule_info("list_special_targets", "< (\".\" | \"-\") > { text }")
1924
- Rules[:_list_stmt] = rule_info("list_stmt", "((list_special_targets | location):loc - integer:int? { List.new(loc, int) } | (list_special_targets | location):loc { List.new(loc, nil) })")
1951
+ Rules[:_list_stmt] = rule_info("list_stmt", "((list_special_targets | location):loc - sinteger:int? { List.new(loc, int) } | (list_special_targets | location):loc { List.new(loc, nil) })")
1925
1952
  end
1926
1953
  if __FILE__ == $0
1927
1954
  # require 'rubygems'; require_relative '../lib/trepanning';
data/app/core.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  require 'thread_frame'
4
4
  require 'trace'
5
5
  # require_relative '../../rb-trace/app/trace'
6
- require_relative '../processor/main'
6
+ require_relative '../processor'
7
7
  class Trepan
8
8
  # This class contains the Trepan core routines, such as an event
9
9
  # processor which is responsible of handling what to do when an event is
data/app/display.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
- # Copyright (C) 2010 Rocky Bernstein <rockyb@rubyforge.net>
2
+ # Copyright (C) 2010, 2011 Rocky Bernstein <rockyb@rubyforge.net>
3
3
  # Classes to support gdb-like display/undisplay.
4
4
 
5
5
  require_relative 'frame'
@@ -18,6 +18,13 @@ class DisplayMgr
18
18
  @list = []
19
19
  end
20
20
 
21
+ def [](index)
22
+ raise TypeError,
23
+ "index #{index} should be a Fixnum, is #{index.class}" unless
24
+ index.is_a?(Fixnum)
25
+ @list.detect {|disp| disp.number == index }
26
+ end
27
+
21
28
  def add(frame, arg, fmt=nil)
22
29
  return nil unless frame
23
30
  begin
@@ -82,6 +89,18 @@ Num Enb Expression"
82
89
  end
83
90
  false
84
91
  end
92
+
93
+ def max
94
+ @list.map{|disp| disp.number}.max
95
+ end
96
+
97
+ def nums
98
+ @list.map{|disp| disp.number}
99
+ end
100
+
101
+ def size
102
+ @list.size
103
+ end
85
104
  end
86
105
 
87
106
  class Display
@@ -97,6 +116,22 @@ class Display
97
116
  @number = number
98
117
  end
99
118
 
119
+ def disable
120
+ @enabled = false
121
+ end
122
+
123
+ def disabled?
124
+ !@enabled
125
+ end
126
+
127
+ def enable
128
+ @enabled = true
129
+ end
130
+
131
+ def enabled?
132
+ @enabled
133
+ end
134
+
100
135
  def to_s(frame)
101
136
  return 'No symbol "' + @arg + '" in current context.' unless frame
102
137
 
@@ -118,6 +153,7 @@ class Display
118
153
  what += @arg if @arg
119
154
  '%3d: %s' % [@number, what]
120
155
  end
156
+
121
157
  end
122
158
 
123
159
  if __FILE__ == $0
@@ -134,6 +170,8 @@ if __FILE__ == $0
134
170
 
135
171
  x = 1
136
172
  mgr.add(frame, 'x > 1')
173
+ puts "Number of displays %s" % mgr.size
174
+ puts "Max Number %d" % mgr.max
137
175
  print_display(mgr)
138
176
 
139
177
  mgr.enable_disable(1, false)