User:GijsKruitbosch/JS Debugging/Tasks
Contents
Notes
importance != working order, given that some of these items need other items, and that some require back-end changes which will need to happen fast, if at all, on the 1.8.1 branch (which is what I'm trying to cater to).
Front end work is (mostly) being done on: Firebug
Status Summary
Total | Fixed | Patch done | WFM | WONTFIX | Open | Other |
23 | 11 | 4 | 1 | 1 | 5 | 1 |
Task list
N | Task | Needs backend changes | Bug number | Result |
0 | Security Issues | Yes | - | Out of my hands |
1 | Implement list of Breakpoints | No | - | Patch |
2 | Implement Watches | No | - | Patch |
3 | Make the originating document accessible for a JS error in the console | No | None | FIXED |
4 | Frontend adapted to keep breakpoints and such separate on a per-document basis (for Firebug's console) (see above) | No | None | FIXED |
5 | Be able to go from a var referencing a DOM element to that DOM element in DOMI | No | bug 342651 | FIXED |
6 | Be able to debug from the slow script warning dialog. | Yes | bug 341764 | FIXED |
7 | Newlines are lost in Firebug's watch pane. | No | - | WORKSFORME |
8 | Venkman is too eager with __toplevel__ script linemaps | No | bug 341758 | FIXED |
9 | Changing variable values / evaluating js shouldn't require changing tabs away from the debugger (in Firebug) | No | - | Patch |
10 | Evaluate js in different windows/tabs/iframes | No | - | Patch |
11 | Provide immediate access to profiling data | No | bug 341767 | FIXED |
12 | Anonymous functions should not be lumped together in profiling. | No | bug 347888 | FIXED |
13 | Double-check handling of about:blank and (related) running/stopped state tracking in Firebug. | No | - | FIXED |
14 | Figure out why I'm crashing on GMail with firebug enabled (hack/sneak/workaround?) and on exit when using two debuggers | Hopefully not. | bug 342074 | FIXED |
15 | Fix wrapping of variable/value tree | No | - | FIXED |
16 | JS 1.7 improvements | Yes? | - | None |
17 | Debug mutation events (watch DOM elements) | Yes | - | None |
18 | Getters / Setters improvements | Yes? | - | None |
19 | 'real' stack list (not a dropdown) | No | - | WONTFIX |
20 | Inline editing of functions etc. | No, hopefully. | - | None |
21 | Pretty print | No | - | None |
22 | Open Windows view misconstructs base URL | No | bug 349066 | FIXED |
Getting to the document that error X originated from
Discussion
I would probably order these things higher:
- immediate profiling
- newlines in watches view (but there's no watch support yet, so?)
- eval JS in tab/frame/etc.
And these things lower:
- JS 1.7
- inline function editing
But I think you're generally on the right track. I need to write here how we can track what document an error came from without biting off everything that's in the current bug 228205, too. Basically involves finding the current document (via cx->contextPrivate->scriptOwner->frameElement or some such) from the handler called for exceptions and errors, and keeping track of it. We could also "just" have the console error object QI to nsIException, but I bet that would make some people API-sad, so I'm interested in us keeping the hacks to our side of the line if we can.
-- shaver
- Done, I think. GijsKruitbosch 07:20, 16 June 2006 (PDT)