Re: Venkman planning for Gecko 1.9

Gijs Kruitbosch <[email protected]> Wed, 05 Sep 2007 15:14:45 +0200
Newsgroups gmane.comp.mozilla.devel.jsdebugger
Message-ID <[email protected]>
John J. Barton wrote:
> Gijs Kruitbosch wrote:
>> On the other hand, it has perhaps about 30% of the JS debugging 
>> features Venkman has (
> 
>> profiling? 
> Implemented

But you can't save profiles (or at least, you couldn't the last time I 
used it).

> 
>> freezing js execution in other windows? 
> I guess you mean breakpoints? Implemented.  Other windows is part of the 
> extension support (Chromebug) I am working on this.
No, I mean stopping JS from executing at all, effectively freezing the 
window (stopping the user from interacting with it at all). Last time I 
checked, Firebug doesn't do this.

> 
>> ignoring files while debugging? 
> ? I don't know what this means.

If you use stop for exceptions or errors, or log exceptions or errors (3 
out of 4 of those are not possible in Firebug, fwiw...), you sometimes 
want to ignore certain files because they keep throwing random errors 
you don't give a ... about.

> 
>> setting evaluation objects? 
> Watch is implemented
No, this is setting an object so that variables are resolved as 
properties on that object, and |this| refers to the object.

> pretty print?
> I use it for browser-generated event handlers, but general use of pretty 
> print is not implemented.
> 
>> ), and the code is generally speaking harder to hack than Venkman (at 
>> least, several people seem to believe this). 
> True, but Venkman is not a cake walk either.
> 
>> From a security perspective, some of Firebug's features (notably 
>> console logging etc.) are also a bit problematic at the moment (see 
>> version history for 1.02 and 1.03 on addons.mozilla.org).
> The current release is 1.05 and 1.1 is almost in beta.
> 
> On the other hand, Venkman does not support eval() debugging, 
Pretty print...

> browser-generated event handlers,


> CSS errors, CSS state, HTML state, 
No, because it's a *javascript debugger*. You have DOMI for all of that, 
and Venkman works with DOMI in inspecting dom nodes (if you get a trunk 
build of venkman, anyway).

> break-on-top-level,
It does (assuming you mean setting breakpoints in __toplevel__).

> net traffic analysis
No, because it's a *javascript debugger*

> FF3.
That's because it's unmaintained, this will be fixed soon, hopefully. 
Also, the same goes for released versions of Firebug.

> 
> But I don't think the feature list is so important since they can be 
> made similar. Both programs are frankly mysterious because they rely on 
> poorly documented underlying APIs.  In fact Venkman is in my experience 
> the best documentation we have for JSD. In a perfect world I'd like to 
> see both up to speed. But in reality we have only a few people who can 
> work on these, so I want to be sure you know about Chromebug so you can 
> consider that alternative.

Noted. I'm helping out Venkman because I'm afraid it might die 
otherwise. That doesn't seem to be the case for Firebug at all. Given 
I'm still a fulltime student (in his final, ie thesis-writing, year) who 
is also doing a grant project involving other code in the mozilla 
universe, I simply don't have (enough) time to spend on Firebug or its 
derivatives.

<snip>

~ Gijs