Electrolysis/Tasks: Difference between revisions
Jump to navigation
Jump to search
(mac stuff) |
(TAF bug#) |
||
| Line 211: | Line 211: | ||
| name=Josh Matthews | | name=Josh Matthews | ||
| mentor=bz | | mentor=bz | ||
| bug= | | bug={{bug|514925}} | ||
| ETA= | | ETA= | ||
| notes= | | notes= | ||
Revision as of 12:44, 8 September 2009
This is a task list for the Electrolysis project, listing work areas, owners, mentors, etc. To volunteer for a project, please contact Benjamin Smedberg
Core
| Project | Owner | Mentor | Bug | ETA | Notes |
| Statically check IPDL specs and C++ implementations | cjones | ||||
| Dynamic fuzzing/checking of cross-process infrastructure | bsmedberg | Fuzzing for bad data, closed sockets, crashed processes | |||
| Systematic dynamic checking of C++ code implementing IPDL protocols | robin_bb | cjones | bug 506303 | It should be possible to generate pretty exhaustive unit tests from IPDL specs... |
Plugins
| Project | Owner | Mentor | Bug | ETA | Notes |
| NPObject-over-IPC | paritosh | bent/josh | |||
| Clean up plugin processes when we don't need them | bent | Needed so we don't orphan processes on unit-test machines | |||
| NPStream implementation | bsmedberg | 15-Sep | Strange race conditions with stream closing are fun to debug | ||
| windowless plugins (Win+Linux) | Chromium experience is that synchronous drawing is unacceptably slow... they maintain pixel buffers and asynchronously ship pixels across | ||||
| Mac plugin remoting (graphics work) | josh | Experiments may be necessary |
Mobile
| Project | Owner | Mentor | Bug | ETA | Notes |
| Async canvas.drawWindow for remote content | joedrew | bug 505847 | Important for the Fennec UI | ||
| Forward mouse and keyboard events from the parent to the child | For the fennec canvasbrowser | ||||
| Implement readonly remoting of preferences (nsIPrefService/nsIPrefBranch) | Tibor Mezei | bsmedberg | bug 506269 | Relatively easy, good beginner project. | |
| Remote all network access to the parent process | jduell/ehsan | jst/biesi | Need smaller subtasks! | ||
| Asynchronous and remote resolution of history queries | sdwilsh | bz | At least the asynchronous part should land on mozilla-central | ||
| IPDL/runtime support for shared-memory buffers | Rohit | cjones/bsmedberg | Probably needed to make networking and canvas.drawWindow efficient | ||
| Session history for remote tabs | bz | Need to figure out what information the parent process/UI actually use/need | |||
| Clean up tab process(es) when we don't need it | fred23 | bent | |||
| Present prompts from the chrome process if necessary (not the content process) | bsmedberg | There aren't significant security concerns with just presenting prompts other than the ability to DOS somebody in a loop, but this is probably a good place to do some thinking about the prompt architecture we actually want to end up with. |
Firefox
| Project | Owner | Mentor | Bug | ETA | Notes |
| Link targeting for remote tabs | bz | ||||
| <browser> and <tabbrowser> basically working on remote tabs | bz | May involve some significant rearch: data which is currently available synchronously will not be! | |||
| Refactor the Firefox context menu to work with remote tabs | dolske | Events don't bubble through the content tabs the same way... will probably involve collecting necessary information on the child side and passing it to the chrome process in a trusted manner. | |||
| Implement find-in-page for remote tabs | Josh Matthews | bz | bug 514925 | ||
| Implement session restore for remote tabs | |||||
| Crash reporting + multiple processes | ted | Breakpad has existing support for client/server exception handling that we're not currently using. This should fit perfectly here. (Also probably being used in Chromium.) | |||
| Multi-process dashboard | Shows CPU/memory usage/etc for tab and plugin processes | ||||
| Form and password autofill | Needs careful security architecture! | ||||
| Mac implementation of remote tabs | josh | Or we could just use tilebrowser in Firefox, which means that the content process wouldn't draw directly to the screen |