|
View:
New views
13 Messages
—
Rating Filter:
Alert me
|
|
|
JS debugger on conceptual levelI am exploring a possilibity to add Firefox debugging into our Splinetech
JavaScript Debugger: www.remotedebugger.com Since it will only enrich mozilla if another debugger supports it, I would like to learn more about how the FF debugger works conceptually. If there is a diagram, that will be great. I obviously checked the firebug docs but I find it not clear. What are the essential classes and components that make the debugging possible, and how do they interact with each other. Thanks, Daniel.. www.remotedebugger.com _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelDan wrote:
> I am exploring a possilibity to add Firefox debugging into our Splinetech > JavaScript Debugger: www.remotedebugger.com > > Since it will only enrich mozilla if another debugger supports it, I would > like to learn more about how the FF debugger works conceptually. If there is > a diagram, that will be great. > I obviously checked the firebug docs but I find it not clear. > What are the essential classes and components that make the debugging > possible, and how do they interact with each other. You might look at http://groups.google.com/group/webdebugprotocol?hl=en Are you only interested in JS debugging? Then all of the action in Firebug is in two files: http://code.google.com/p/fbug/source/browse/branches/firebug1.5/components/firebug-service.js http://code.google.com/p/fbug/source/browse/branches/firebug1.5/content/firebug/debugger.js Pretty standard stuff, except for the eval/event support. jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelCurious stuff.
In IE world, I just attach to IE through a bunch of COM interfaces and get an interface for a the running application from which I just set bpts and go on. How does Firebug start debugging it? Dan "John J. Barton" <johnjbarton@...> wrote in message news:xbCdnY1Ks6wP3_jXnZ2dnUVZ_jxi4p2d@...... > Dan wrote: >> I am exploring a possilibity to add Firefox debugging into our Splinetech >> JavaScript Debugger: www.remotedebugger.com >> >> Since it will only enrich mozilla if another debugger supports it, I >> would like to learn more about how the FF debugger works conceptually. If >> there is a diagram, that will be great. >> I obviously checked the firebug docs but I find it not clear. >> What are the essential classes and components that make the debugging >> possible, and how do they interact with each other. > > You might look at http://groups.google.com/group/webdebugprotocol?hl=en > > Are you only interested in JS debugging? Then all of the action in Firebug > is in two files: > http://code.google.com/p/fbug/source/browse/branches/firebug1.5/components/firebug-service.js > http://code.google.com/p/fbug/source/browse/branches/firebug1.5/content/firebug/debugger.js > > Pretty standard stuff, except for the eval/event support. > > jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelDan wrote:
> Curious stuff. > In IE world, I just attach to IE through a bunch of COM interfaces and get > an interface for a the running application from which I just set bpts and go > on. > How does Firebug start debugging it? Just attach to Firefox through a bunch of XPCOM interfaces and get an interface for the running application from which you just set bpts and go on. jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelYeah, remote (out-of-process) debugging in Mozilla is not trivial. I am not sure
how you'd go about doing it - both Venkman and Firebug are in-process, which makes the process easier in a way. You could probably have part of your app install an add-on that deals with the Firefox interfaces for you, and control that add-on through whatever manner you wish (pipes/COM/screenscraping/local webserver/what-have-you). ~ Gijs Dan wrote: > Curious stuff. > In IE world, I just attach to IE through a bunch of COM interfaces and get > an interface for a the running application from which I just set bpts and go > on. > How does Firebug start debugging it? > > Dan > > "John J. Barton" <johnjbarton@...> wrote in message > news:xbCdnY1Ks6wP3_jXnZ2dnUVZ_jxi4p2d@...... >> Dan wrote: >>> I am exploring a possilibity to add Firefox debugging into our Splinetech >>> JavaScript Debugger: www.remotedebugger.com >>> >>> Since it will only enrich mozilla if another debugger supports it, I >>> would like to learn more about how the FF debugger works conceptually. If >>> there is a diagram, that will be great. >>> I obviously checked the firebug docs but I find it not clear. >>> What are the essential classes and components that make the debugging >>> possible, and how do they interact with each other. >> You might look at http://groups.google.com/group/webdebugprotocol?hl=en >> >> Are you only interested in JS debugging? Then all of the action in Firebug >> is in two files: >> http://code.google.com/p/fbug/source/browse/branches/firebug1.5/components/firebug-service.js >> http://code.google.com/p/fbug/source/browse/branches/firebug1.5/content/firebug/debugger.js >> >> Pretty standard stuff, except for the eval/event support. >> >> jjb > > dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelGijs Kruitbosch wrote:
> Yeah, remote (out-of-process) debugging in Mozilla is not trivial. I am > not sure how you'd go about doing it - both Venkman and Firebug are > in-process, which makes the process easier in a way. You could probably > have part of your app install an add-on that deals with the Firefox > interfaces for you, and control that add-on through whatever manner you > wish (pipes/COM/screenscraping/local webserver/what-have-you). I would say this even much stronger: out-of-process debugging is beyond technical feasibility as a practical matter. It would require interpreting and manipulating the bit image of the remote process. C debuggers do this for C code, it is very difficult. While it has some advantages, doing it for the complete mozilla run time is not likely. I call the thing Gijs describes 'proxied debugging', where the debugger UI is in one process talking to server in the debuggee. I guess that what Dan is talking about when he says "remote". I believe some folks are confusing proxied debugging and out-of-process debugging, which have different cost/benefits. In particular the so called "uncertainty" problem of a runtime with an embedded debugger cannot be completely removed in proxied debugging. jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelJohn J. Barton wrote:
> Gijs Kruitbosch wrote: >> Yeah, remote (out-of-process) debugging in Mozilla is not trivial. I >> am not sure how you'd go about doing it - both Venkman and Firebug are >> in-process, which makes the process easier in a way. You could >> probably have part of your app install an add-on that deals with the >> Firefox interfaces for you, and control that add-on through whatever >> manner you wish (pipes/COM/screenscraping/local webserver/what-have-you). > > I would say this even much stronger: out-of-process debugging is beyond > technical feasibility as a practical matter. It would require > interpreting and manipulating the bit image of the remote process. C > debuggers do this for C code, it is very difficult. While it has some > advantages, doing it for the complete mozilla run time is not likely. > > I call the thing Gijs describes 'proxied debugging', where the debugger > UI is in one process talking to server in the debuggee. I guess that > what Dan is talking about when he says "remote". > > I believe some folks are confusing proxied debugging and out-of-process > debugging, which have different cost/benefits. In particular the so > called "uncertainty" problem of a runtime with an embedded debugger > cannot be completely removed in proxied debugging. > > jjb Well fine. I apologize if I was not very strict in terms of terminology. I can't think of any external interfaces that we have for debugging. In fact, just in general the only interfaces I can think of that manipulate Gecko/"Mozilla"/Firefox from the outside (without sneaking in on the inside first) are gtkmozembed and the Mozilla ActiveX control. Neither allows you the kind of control you want for debugging, I'm pretty sure. ~ Gijs _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelGijs Kruitbosch wrote:
... > > Well fine. I apologize if I was not very strict in terms of terminology. (I did not mean to imply you were in any sense incorrect, I was agreeing with you). > I can't think of any external interfaces that we have for debugging. In > fact, just in general the only interfaces I can think of that manipulate > Gecko/"Mozilla"/Firefox from the outside (without sneaking in on the > inside first) are gtkmozembed and the Mozilla ActiveX control. Neither > allows you the kind of control you want for debugging, I'm pretty sure. We are trying to get a proxied debugging solution going over on the webdebugprotocol group and Mike Collins at IBM is working on Firebug/Firefox code for this. jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelInteresting. Well making a proxy to which connect my UI is Ok with me.
But what function in the js codes of firebug gets called first and which one attaches to Firefox and enumerates the scripts? I am just trying to figure out from which side to look at this code. Thanks Dan "John J. Barton" <johnjbarton@...> wrote in message news:kv-dncGn9qa_3PrXnZ2dnUVZ_gxi4p2d@...... > Gijs Kruitbosch wrote: > ... >> >> Well fine. I apologize if I was not very strict in terms of terminology. > > (I did not mean to imply you were in any sense incorrect, I was agreeing > with you). > >> I can't think of any external interfaces that we have for debugging. In >> fact, just in general the only interfaces I can think of that manipulate >> Gecko/"Mozilla"/Firefox from the outside (without sneaking in on the >> inside first) are gtkmozembed and the Mozilla ActiveX control. Neither >> allows you the kind of control you want for debugging, I'm pretty sure. > > We are trying to get a proxied debugging solution going over on the > webdebugprotocol group and Mike Collins at IBM is working on > Firebug/Firefox code for this. > > jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelDan wrote:
> Interesting. Well making a proxy to which connect my UI is Ok with me. > > But what function in the js codes of firebug gets called first and which one > attaches to Firefox and enumerates the scripts? > I am just trying to figure out from which side to look at this code. Well now that I think about it, maybe Venkman would be a better place to start. Firebug used onScriptCreated to get scripts and it does a lot of stuff to get eval() and event() scripts. I think Venkman enumerate the live scripts instead. jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelHow do you guys debug Firebug itself?
Dan "John J Barton" <johnjbarton@...> wrote in message news:lrqdnXNFmIqYZPXXnZ2dnUVZ_tOdnZ2d@...... > Dan wrote: >> Interesting. Well making a proxy to which connect my UI is Ok with me. >> >> But what function in the js codes of firebug gets called first and which >> one attaches to Firefox and enumerates the scripts? >> I am just trying to figure out from which side to look at this code. > > Well now that I think about it, maybe Venkman would be a better place to > start. Firebug used onScriptCreated to get scripts and it does a lot of > stuff to get eval() and event() scripts. I think Venkman enumerate the > live scripts instead. > jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelDan wrote:
> How do you guys debug Firebug itself? Using Chromebug and FBTrace (internal Firebug logging). We can't use Chromebug to debug the JS debug parts of Firebug because they both use jsd. The X versions, eg 1.5X, have FBTrace. You can watch the debugger actions by opening the trace console and setting options like BP/FBS_BP, FBS_STEP, etc. FBS is the firebug service component, our connector for jsd. jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
|
|
Re: JS debugger on conceptual levelGreat! At least I can see what it does.
Dan "John J. Barton" <johnjbarton@...> wrote in message news:8KidnUjy1omvGfHXnZ2dnUVZ_s2dnZ2d@...... > Dan wrote: >> How do you guys debug Firebug itself? > > Using Chromebug and FBTrace (internal Firebug logging). We can't use > Chromebug to debug the JS debug parts of Firebug because they both use > jsd. > > The X versions, eg 1.5X, have FBTrace. You can watch the debugger actions > by opening the trace console and setting options like BP/FBS_BP, FBS_STEP, > etc. FBS is the firebug service component, our connector for jsd. > > jjb _______________________________________________ dev-apps-js-debugger mailing list dev-apps-js-debugger@... https://lists.mozilla.org/listinfo/dev-apps-js-debugger |
| Free embeddable forum powered by Nabble | Forum Help |