Electrolysis/Short-Term Goals: Difference between revisions
(+bug#) |
(->bwarner) |
||
| Line 69: | Line 69: | ||
Addons written with the Jetpack SDK high-level APIs should automatically be compatible with content processes. Analyze existing SDK-based addons for usage of low-level APIs which may not be compatible with content processes and create a report for developers. NOTE: this should probably be combined with the static analysis of "old-style" addons above. | Addons written with the Jetpack SDK high-level APIs should automatically be compatible with content processes. Analyze existing SDK-based addons for usage of low-level APIs which may not be compatible with content processes and create a report for developers. NOTE: this should probably be combined with the static analysis of "old-style" addons above. | ||
Owner: | Owner: Brian Warner | ||
Goal Date: 1-Sep | Goal Date: 1-Sep | ||
Revision as of 19:19, 18 August 2011
Current Goals
Deploy Dynamic Analysis to mozilla-central
Followup to the initial dynamic analaysis goal: clean up the patch that is written, write some simple testcases to ensure correct behavior, and land the analysis to mozilla-central debug builds (off by default).
Owner: Drew Willcoxon Goal date: 14-July Status: Patches reviewed, revisions ongoing Bug: bug 666713
In order to make the dynamic analysis useful for estimating Firefox frontend work, we need basic page navigation to not produce any warnings. This means that current uses of web progress listeners in the Firefox frontend should be ported to the message manager.
It is ok for this goal to ifdef out certain features (such as aero tab previews) which are known not to work and are not essential to running mochitests.
Owner: Felipe Gomes Goal date: 21-July Status: in progress
Static Analysis of Chrome/Content Interaction
Parallel to the dynamic analysis, we need to be able to statically identify code patterns which may require rewriting (mainly in long-tail extensions). This will be an ongoing project, but we need to set intermediate goals (obvious patterns that we should start flagging). Refinement will depend on analysis gathered in the dynamic phase. bug 675014
Owner: Dave Herman
Subgoal 1: Write Testcase code
Write some testcase extensions which the tool must analyze.
Goal date: 23-June Status: incomplete, in trouble
Subgoal 2: Analyze and produce reports on one bad pattern
Goal date: 7-July
Extension Usage Metrics
Identify which extensions must be compatible with content processes in order to reach 80% of Firefox users.
Owner: smooney Goal Date: 7-July
Accessibility Tuning
Fix a couple bugs found during the initial a11y hookup and do QA to identify remaining problems.
Owner: dbolter Goal Date: 11-August
Deploy a Responsiveness Metric
Deploy a responsiveness metric which measures the average and maximum time away from the event loop.
Owner: Ted Mielczarek Goal Date: 25-August
Implement Session Restore
Implement the "restore" half of session save/restore per the posted plan.
Owner: jez Goal Date: 18-August
Analyze Jetpack SDK-based addons for low-level module usage
Addons written with the Jetpack SDK high-level APIs should automatically be compatible with content processes. Analyze existing SDK-based addons for usage of low-level APIs which may not be compatible with content processes and create a report for developers. NOTE: this should probably be combined with the static analysis of "old-style" addons above.
Owner: Brian Warner
Goal Date: 1-Sep
Make the Jetpack SDK compatible with content processes
The Jetpack API should already be compatible, but the implementation will need to change. The Jetpack team is already working towards this goal for mobile.
Owner: Myk Goal Date: TBD
Remote IndexedDB for multiple content processes
The current implementation of IndexedDB needs to be reworked to work on multiple content processes. bug 666693
Owner: khuey Goal Date: 8-Sep
Completed Goals
Dynamic Instrumentation for Chrome/Content Interaction
We want to identify:
- non message-manager scripts
- which touch a "content object"
- or implement nsIWebProgressListener
Definitions:
Non message-manager script is any chrome script that isn't run through nsIChromeFrameMessageManager.loadFrameScript.
Content objects are at least the following:
- Any DOM object (window, document, or node)
- Docshell or docshell derivative
- nsIWebProgress
- nsIDOMWindowUtils
Owner: Drew Willcoxon Goal date: 30-June Status: DONE (patch and initial analysis complete)
Identify Work Items for Multiple Content Processes
We have identified multiple content processes as a requirement for desktop Firefox. Identify and find owners for the work required for multiple content processes.
Owner: Benjamin Smedberg Goal Date: 23-June Status: DONE (feature bugs filed... memory analysis will be later)
Accessibility Engineering Plan
Identify whether the accessibility tree will need to be mirrored, or whether accessibility tools can work directly with trees in content processes.
Owner: David Bolter Goal Date: 7-July Status: DONE (posted to mozilla.dev.planning)
Developer Tools Engineering Plan
Identify how existing in-product developer tools will be made compatible with content processes and what additional platform support is required. DOM Inspector will almost certainly require some additional platform support.
Owner: Rob Campbell Goal Date: 7-July Status: DONE (posted to mozilla.dev.planning)
Get Firefox Starting Up
Get Firefox to start up and browse, so that the accessibility, devtools, and perhaps Jetpack SDK teams can work on dependencies.
Owner: Felipe Gomes Goal date: 23-June (Wednesday) Status: done
Connect the chrome/content accessibility tree on Windows
Implement the basic a11y plan on Windows with a hidden HWND and a connected cross-process a11y tree.
Owner: Alexander Surkov Goal date: 21-July Status: done
Write Session-Restore Plan
Publish a plan to revise session-restore for multiple content processes.
Owner: jez Goal Date: 4-August Status: done