0
|
1 @c ===================================================================
|
|
2 @node Revision History, Index, Todo List, Top
|
|
3 @section Revision History
|
|
4
|
|
5 Here is a summary of changes to edebug recorded in the RCS log, in
|
|
6 reverse chronological order.
|
|
7
|
|
8 Revision 2.9 1993/02/04 22:40:58 liberte
|
|
9 Fix handling of 0 and t edebug-form-specs.
|
|
10
|
|
11 Remove loop for consecutive special specs to simplify code.
|
|
12
|
|
13 Fix [&optional specs] again.
|
|
14
|
|
15 Bug: [&rest specs] still broken.
|
|
16
|
|
17 Bug: nested definitions may have problems still - let me know.
|
|
18
|
|
19 New variable edebug-debugger holds name of debugger for errors or quit.
|
|
20
|
|
21 Unrestore edebug-buffer's window-point after edebug display.
|
|
22 Needed in addition to setting the buffer point
|
|
23 because otherwise quitting doesnt leave point as is.
|
|
24 But doing it causes point not to be restored other times.
|
|
25 Let me know if there are problems.
|
|
26
|
|
27 Fix zmacs-regions typo for lemacs.
|
|
28
|
|
29 Revision 2.8 1993/01/13 18:34:19 liberte
|
|
30 Support edebugging top-level forms and generalize handling
|
|
31 of defining forms.
|
|
32
|
|
33 Rename edebug-defun to edebug-eval-top-level-form.
|
|
34 edebug-defun still points to the latter.
|
|
35
|
|
36 Rename edebug-all-defuns to edebug-all-defs.
|
|
37
|
|
38 Add edebug-all-forms option and command.
|
|
39
|
|
40 Add edebug-continue-kbd-macro option.
|
|
41
|
|
42 Stop defining epoch::version.
|
|
43
|
|
44 Rename def-edebug-form-spec to def-edebug-spec. Arguments are unevaluated.
|
|
45
|
|
46 edebug-form-spec supports indirection. List specs may now
|
|
47 contain body, &define, name, arglist, def-body, def-form, and strings.
|
|
48
|
|
49 While parsing, commit to alternative after matching a symbol.
|
|
50
|
|
51 Fix nested &optional handling.
|
|
52
|
|
53 Improve syntax error reporting.
|
|
54
|
|
55 Use edebug-form-specs for many Emacs special-forms: defun, defmacro,
|
|
56 interactive, condition-case, cond, as well as lambda forms and
|
|
57 functions that take function arguments. Define specs for all cl.el
|
|
58 macros.
|
|
59
|
|
60 Fix printing of window objects so they show the correct buffer.
|
|
61
|
|
62 Numerous display fixes that are too complex to explain.
|
|
63
|
|
64 Display frequency counts along with coverage data by inserting comment
|
|
65 lines.
|
|
66
|
|
67 Add global break condition.
|
|
68
|
|
69 Add "next" mode to stop only after expression evaluation.
|
|
70 Add top-level-nonstop to stop no more.
|
|
71
|
|
72 Add time argument to edebug-bounce-point.
|
|
73
|
|
74 Allow editing of previous breakpoint condition.
|
|
75
|
|
76 Fix edebug-step-in.
|
|
77
|
|
78 Clean up the backtrace display better.
|
|
79
|
|
80 Support Lucid Emacs command events.
|
|
81
|
|
82
|
|
83 Revision 2.7 92/03/23
|
|
84
|
|
85 Fix edebug-get-displayed-buffer-points to actually change buffers.
|
|
86
|
|
87 Restore current buffer in edebug-set-buffer-points
|
|
88
|
|
89 Use epoch::version instead of edebug-epoch-running.
|
|
90
|
|
91 Apparently we need to set-buffer in edebug-pop-to-buffer,
|
|
92 even after select-window.
|
|
93
|
|
94 Define dynamically bound variables to quite byte-compiler,
|
|
95 but leave them unbound to cause runtime error if used improperly.
|
|
96
|
|
97 Fix other problems with window-start, current-buffer, and
|
|
98 edebug-outside-excursion.
|
|
99
|
|
100 Revision 2.6 92/03/19
|
|
101 Disable edebug-save-point. Now point of source code buffers is always
|
|
102 saved, mark is never saved, and window-start is always saved.
|
|
103
|
|
104 Change name of edebug-save-buffer-points to
|
|
105 edebug-save-displayed-buffer-points. Also, if non-nil, only displayed
|
|
106 buffer points are saved.
|
|
107
|
|
108 Restructure definition of epoch specific functions so there is no
|
|
109 overhead for non-epoch use.
|
|
110
|
|
111 Add support for custom-print functions to handle print-level and
|
|
112 print-circle. Use edebug-prin* functions instead of standard
|
|
113 print functions.
|
|
114
|
|
115 Yet another change of the instrumenting scheme:
|
|
116 edebug-enter gets a lambda form which can be byte-compiled;
|
|
117 edebug-after gets the after expression index from edebug-before which
|
|
118 is given the before expression index. (Perhaps it is false economy to
|
|
119 avoid the after expression index.) edebug-after also gets the
|
|
120 evaluated expression result, so no explicit evals need be done.
|
|
121
|
|
122 Most of edebug-defun was moved to edebug-func-form which also
|
|
123 handles embedded defuns.
|
|
124
|
|
125 Add functions edebug-forms and edebug-sexps.
|
|
126
|
|
127 Rename edebug-list to edebug-list-form.
|
|
128
|
|
129 Use edebug-form-specs for all special forms. The spec may now be
|
|
130 a function which is called to process args. Added -form to
|
|
131 the names of special form parser functions.
|
|
132
|
|
133 Rename edebug-form-parser to edebug-interpret-form-spec. Add handling
|
|
134 of [...], function spec, and backtracking. &optional now only applies
|
|
135 to one following spec. Fixed some other bugs.
|
|
136
|
|
137 Added macro def-edebug-form-spec for convenience, and to convert
|
|
138 0 and t values to edebug-forms and edebug-sexps.
|
|
139
|
|
140 Add edebug-form-specs for mapcar, mapconcat, mapatoms, apply, and funcall
|
|
141 that all use the new function spec.
|
|
142
|
|
143 Rebuilt edebug-read-sexp to be simpler, faster, and more complete.
|
|
144
|
|
145 Accummulate frequencies of expression evaluation, displayable
|
|
146 with edebug-display-freq-count.
|
|
147
|
|
148 No longer do save-restriction since edebug's eval-region doesnt narrow.
|
|
149
|
|
150 Numerous other display changes related to source code buffer's
|
|
151 point and window-start.
|
|
152
|
|
153 Add -mode to the names of mode changing functions.
|
|
154
|
|
155 Set debugger to edebug-debug while inside edebug - it's almost
|
|
156 always useful inside, and not useful outside of edebug.
|
|
157
|
|
158 Add edebug-trace function to output FMT with ARGS to *edebug-trace* buffer.
|
|
159
|
|
160 Other changes I've forgotten.
|
|
161
|
|
162 Revision 2.5 91/07/25
|
|
163
|
|
164 Doc string cleanup.
|
|
165
|
|
166 If edebug-form-spec is t, evaluate all arguments.
|
|
167
|
|
168 If edebug-form-spec is 0, evaluate no arguments.
|
|
169
|
|
170 If edebug-form-spec is nil, evaluate macro args according
|
|
171 to edebug-eval-macro-args.
|
|
172
|
|
173 Save the outside value of executing macro.
|
|
174
|
|
175 Save and restore the outside restriction.
|
|
176
|
|
177 Dont force update for go and Go-nonstop.
|
|
178
|
|
179 Save and restore last-command-char, last-command,
|
|
180 this-command, last-input-char.
|
|
181
|
|
182 For epoch, do epoch::dispatch-events before sit-for
|
|
183 and input-pending-p since X events could interfere.
|
|
184
|
|
185 Warn about unsetting non-existent breakpoint.
|
|
186
|
|
187 Fix edebug-forward-sexp with prefix arg.
|
|
188
|
|
189 Add edebug-step-out to exit from current sexp.
|
|
190
|
|
191 Revision 2.4 91/03/18
|
|
192 Force update after go or Go-nonstop modes, so overlay arrow is correct.
|
|
193
|
|
194 Support debug-on-quit. Remove edebug-on-error.
|
|
195
|
|
196 Fix edebug-anonymous. Bug found by jackr@wpd.sgi.com (Jack Repenning).
|
|
197
|
|
198 Don't discard-input anymore. Easier to change modes this way.
|
|
199
|
|
200 Fix max-lisp-eval-depth and max-specpdl-size incrementing.
|
|
201
|
|
202 Save and restore points in all buffers, if
|
|
203 edebug-save-buffer-points is non-nil. Expensive!
|
|
204 Bug caught by wolfgang@wsrcc.com (Wolfgang S. Rupprecht)
|
|
205
|
|
206 Save standard-output and standard-input in edebug-recursive-edit
|
|
207 so that edebug-outside-excursion can restore them.
|
|
208
|
|
209 Call set-buffer in edebug-pop-to-buffer since
|
|
210 select-window does not do that.
|
|
211
|
|
212 Fix edebug's eval-defun to remember current buffer inside evaluations
|
|
213 and to evaluate top-level forms. Found by Jamie Zawinski.
|
|
214
|
|
215 Add edebug-interactive-entry to support interactive forms with
|
|
216 non-string arg. Bug found by Jack Repenning.
|
|
217
|
|
218 Simplify edebug-restore-match-data to just store-match-data.
|
|
219 Motivated by linus@lysator.liu.se.
|
|
220
|
|
221 Move the match-data call to before the outside
|
|
222 buffer is changed, since it assumes that.
|
|
223
|
|
224 Revision 2.3 91/01/17
|
|
225
|
|
226 Fix bug found by hollen@megatek.uucp.
|
|
227 Current buffer was not being restored.
|
|
228
|
|
229 Call edebug with (edebug begin end 'exp)
|
|
230 and add additional wrapper around body of functions:
|
|
231 (edebug-enter function body).
|
|
232
|
|
233 Make &optional only apply to immediate next arg
|
|
234 in edebug-interpret-form-spec (was edebug-macro-parser).
|
|
235
|
|
236 Catch debug errors with edebug. Yeah!
|
|
237
|
|
238 Reset edebug-mode on first function entry. Yeah!
|
|
239 Motivated by Dion Hollenbeck.
|
|
240
|
|
241 Add the missing bindings to the global-edebug-map.
|
|
242
|
|
243 eval-current-buffer now uses eval-region.
|
|
244
|
|
245 eval-region now does not narrow region.
|
|
246 Narrowing was the cause of the window-start being set wrong.
|
|
247
|
|
248 Reset edebug-mode only on
|
|
249 first entry of any function at each recursive-edit level.
|
|
250
|
|
251 Add edebug-backtrace, to generate cleaned up
|
|
252 backtrace. It doesnt "work" like the debug backtrace, however.
|
|
253
|
|
254 Require reselecting outside window even if
|
|
255 quit occurs, otherwise save-excursions may restore
|
|
256 buffer to the wrong window.
|
|
257
|
|
258 Revision 2.2 90/11/26
|
|
259
|
|
260 Shadow eval-defun and eval-region. Toggle
|
|
261 edebugging with edebug-all-defuns.
|
|
262
|
|
263 Call edebug with (edebug 'function begin end 'exp)
|
|
264 Suggested by Jamie Zawinski <jwz@lucid.com>.
|
|
265
|
|
266 Add edebug-interpret-form-spec to process macro args.
|
|
267 Motivated by Darryl Okahata darrylo@hpnmxx.hp.com.
|
|
268
|
|
269 Fix by Roland McGrath <roland@ai.mit.edu>
|
|
270 to wrap body of edebug-save-restriction in progn.
|
|
271
|
|
272 Fix by Darryl Okahata <darrylo%hpnmd@hpcea.hp.com>
|
|
273 to add (set-window-hscroll (selected-window) 0) to
|
|
274 edebug-pop-to-buffer.
|
|
275
|
|
276 Revision 2.1 90/11/16
|
|
277
|
|
278 Clean up.
|
|
279
|
|
280 Add edebug-form-spec to edebug macro calls. Thanks to Joe Wells.
|
|
281
|
|
282 edebug-forward-sexp uses step mode if no forward-sexp.
|
|
283
|
|
284 Revision 2.0 90/11/14 22:30:54 liberte
|
|
285
|
|
286 Handle lambda forms, function, interactive evals, defmacro.
|
|
287
|
|
288 Clean up display for Epoch - save and restore screen configurations.
|
|
289 Note: epoch 3.2 broke set-window-configuration.
|
|
290 Also, sit-for pauses do not always work in epoch.
|
|
291
|
|
292 Display evaluations window.
|
|
293
|
|
294 Display result after expression evaluation.
|
|
295 Thanks to discussions with Shinichirou Sugou.
|
|
296
|
|
297 Conditional and temporary breakpoints.
|
|
298
|
|
299 Change "continue" to "go" mode and add different "continue" mode.
|
|
300
|
|
301 Option to stop before symbols.
|
|
302
|
|
303 Fix by: Glen Ditchfield gjditchfield@violet.uwaterloo.ca
|
|
304 to handle ?# type chars.
|
|
305
|
|
306
|
|
307 Revision 1.5 89/05/10
|
|
308 Fix condition-case expression lists.
|
|
309
|
|
310 Reorganize edebug.
|
|
311
|
|
312 Revision 1.4 89/02/14
|
|
313 Fix broken breakpointing.
|
|
314
|
|
315 Temporarily widen elisp buffer during edebug.
|
|
316
|
|
317 Revision 1.3 89/01/30
|
|
318 More bug fixes for cond and let.
|
|
319
|
|
320 Another parsing fix backquote.
|
|
321
|
|
322 Fix for lambda forms inside defuns.
|
|
323
|
|
324 Leave point at syntax error, mark at starting position.
|
|
325
|
|
326 Revision 1.2 88/11/28
|
|
327 Bug fixes: cond construct didnt execute.
|
|
328 () in sexp list didnt parse
|
|
329 () as variable in condition-case didnt parse.
|
|
330
|
|
331 Revision 1.1 88/11/28
|
|
332 Initial revision
|
|
333
|