Indium icon indicating copy to clipboard operation
Indium copied to clipboard

Firefox support

Open notetiene opened this issue 7 years ago • 9 comments

I'm currently trying to implement the Firefox backend. However, given the major differences between the Firefox remote debugging protocol and the Chrome one, I think it could be nice to include a todo list here.

  • [ ] Implement the Firefox Remote Debugger Protocol Backend
    • [ ] Implement the protocol API (we might look at this).
    • [ ] Implement a function to query tabs information
    • [ ] Since Firefox doesn't have a per tab protocol should we use only one process for all tabs? Also each times we make a new connection, Firefox display a prompt to accept remote debugging.
    • [ ] Implement the evaluation function
    • [ ] Implement the completion function
    • [ ] Implement the debugger functions - [ ] Implement the breakpoints functions
      • [ ] Implement the resume function
      • [ ] Implement the step-into function
      • [ ] Implement the step-out function
      • [ ] Implement the step-over function
      • [ ] Implement the continue function   - [ ] Implement pausing on exceptions and get them
    • [ ] Implement the property inspector
    • [ ] Sync the console logs

That's all for now.

notetiene avatar Apr 19 '17 01:04 notetiene

@notetiene do you want to push your commits somewhere so I could have a look?

NicolasPetton avatar Apr 26 '17 08:04 NicolasPetton

@notetiene also, since until now all backends are chrome/v8 centric, there might be refactorings to do in Indium to make it easier to implement. If that's the case, don't hesitate to tell me, I'll help the best way I can.

NicolasPetton avatar Apr 26 '17 08:04 NicolasPetton

Thanks for you comments.

I'm really interested in supporting Firefox. Sadly, I don't have much time for the following 2 weeks and my current commits only cover common variables I found between the two backends.

I'll notify you when I start working on it. :smile:

notetiene avatar Apr 26 '17 16:04 notetiene

Mozilla is apparently thinking about adding support for the CDP, in which case we wouldn't have to implement a specific backend for it.

NicolasPetton avatar Jan 10 '18 12:01 NicolasPetton

@NicolasPetton That would be great! Sadly, I'm not able to see any news concerning CDP in Firefox. Is it an official project?

notetiene avatar Jan 10 '18 13:01 notetiene

Etienne [email protected] writes:

@NicolasPetton That would be great! Sadly, I'm not able to see any news concerning CDP in Firefox. Is it an official project?

I can't find the ticket in Bugzilla anymore, but there is one. It's in their backlog IIRC, but it's something they're considering.

NicolasPetton avatar Jan 10 '18 14:01 NicolasPetton

That would be great. I found a few issues on their bugtracker but non sound like it's coming anytime soon :( https://bugzilla.mozilla.org/show_bug.cgi?id=1316741 Most recent one seems to be https://bugzilla.mozilla.org/show_bug.cgi?id=1391465

dakra avatar Jan 11 '18 00:01 dakra

This blog post by mozilla talks about how they are implementing CDP for the sake of puppeteer.js support.

nbfalcon avatar Mar 11 '21 07:03 nbfalcon

I've been following their progress about this for a while, but I missed this post. @nbfalcon thanks for the link!

NicolasPetton avatar Mar 11 '21 07:03 NicolasPetton