Electrolysis/Short-Term Goals: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(new goals)
Line 1: Line 1:
= Current Goals =
== Get Firefox Starting Up ==
== Get Firefox Starting Up ==


Line 7: Line 9:
Status: patches posted, see [http://benjamin.smedbergs.us/weekly-updates.fcgi/user/felipe his status report]
Status: patches posted, see [http://benjamin.smedbergs.us/weekly-updates.fcgi/user/felipe his status report]


== Dynamic Instrumentation for Chrome/Content Interaction ==
== 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).


We want to identify:
Owner: Drew Willcoxon
Goal date: 14-July


* non message-manager scripts
== Make basic Firefox navigation use the Message Manager ==
* which touch a "content object"
* or implement nsIWebProgressListener


Definitions:
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.


Non message-manager script is any chrome script that isn't run through nsIChromeFrameMessageManager.loadFrameScript.
Owner: Felipe Gomes
Goal date: 21-July


Content objects are at least the following:
== Connect the chrome/content accessibility tree on Windows ==


* Any DOM object (window, document, or node)
Implement the basic a11y plan on Windows with a hidden HWND and a connected cross-process a11y tree.
* Docshell or docshell derivative
* nsIWebProgress
* nsIDOMWindowUtils


Owner: Drew Willcoxon
Owner: Alexander Surkov
Goal date: 30-June
Goal date: 21-July


== Static Analysis of Chrome/Content Interaction ==
== Static Analysis of Chrome/Content Interaction ==
Line 40: Line 41:


Goal date: 23-June
Goal date: 23-June
Status: incomplete, in trouble


=== Subgoal 2: Analyze and produce reports on one bad pattern ===
=== Subgoal 2: Analyze and produce reports on one bad pattern ===


Goal date: 7-July
Goal date: 7-July
== 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


== Extension Usage Metrics ==
== Extension Usage Metrics ==
Line 57: Line 52:


Owner: blizzard?/jorge?
Owner: blizzard?/jorge?
Goal Date: 7-July
== 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
Goal Date: 7-July


Line 79: Line 67:
Owner: Ted Mielczarek
Owner: Ted Mielczarek
Goal Date: TBD
Goal Date: TBD
= 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)

Revision as of 16:00, 7 July 2011

Current Goals

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: patches posted, see his status report

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

Make basic Firefox navigation use the Message Manager

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.

Owner: Felipe Gomes Goal date: 21-July

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

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

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: blizzard?/jorge? Goal Date: 7-July

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

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: TBD

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)