trepanning 0.1.3 → 0.1.4

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.
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)