Jetpack/Roadmap-2011: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 18: Line 18:
     <th></th>
     <th></th>
     <th style="text-align: left; background-color: #9f9f9f;">Jetpack Prototype</th>
     <th style="text-align: left; background-color: #9f9f9f;">Jetpack Prototype</th>
     <th style="text-align: left; background-color: #cfcfcf;">Jetpack SDK 0.1 - 0.5</th>
     <th style="text-align: left; background-color: #cfcfcf;">Jetpack SDK 0.1</th>
     <th style="text-align: left;">Jetpack SDK 0.6 - 0.9</th>
     <th style="text-align: left;">Jetpack SDK 0.2 - 0.n</th>
     <th style="text-align: left;">Jetpack SDK 1.0</th>
     <th style="text-align: left;">Jetpack SDK 1.0</th>
   </tr>
   </tr>
Line 26: Line 26:
     <th>ETA</th>
     <th>ETA</th>
     <th style="text-align: left; background-color: #9f9f9f;">DONE, 2009 Q4</th>
     <th style="text-align: left; background-color: #9f9f9f;">DONE, 2009 Q4</th>
     <th style="text-align: left; background-color: #cfcfcf;">IN PROGRESS, 2010 Q1/2</th>
     <th style="text-align: left; background-color: #cfcfcf;">DONE, 2010 Q1</th>
     <th style="text-align: left;">2010 Q3/4</th>
     <th style="text-align: left;">2010 Q2 - Q4</th>
     <th style="text-align: left;">2011 Q1/2</th>
     <th style="text-align: left;">2011 Q1 - Q2</th>
   </tr>
   </tr>


Line 34: Line 34:
     <th style="text-align: right;">Firefox</th>
     <th style="text-align: right;">Firefox</th>
     <td style="background-color: #9f9f9f;"></td>
     <td style="background-color: #9f9f9f;"></td>
     <td style="background-color: #cfcfcf;">Extension Manager no-restart API</td>
     <td style="background-color: #cfcfcf;"></td>
     <td>Transparent content iframes</td>
     <td>Extension Manager no-restart API, transparent content iframes</td>
     <td>Support for Jetpack-native packages, Jetpack library in core?</td>
     <td>Support for Jetpack-native packages, Jetpack library in core?</td>
   </tr>
   </tr>
Line 43: Line 43:
     <td style="background-color: #9f9f9f;"></td>
     <td style="background-color: #9f9f9f;"></td>
     <td style="background-color: #cfcfcf;"></td>
     <td style="background-color: #cfcfcf;"></td>
     <td>chrome object wrappers</td>
     <td>Chrome object wrappers</td>
     <td>ECMAScript 5?</td>
     <td>ECMAScript 5?</td>
   </tr>
   </tr>
Line 66: Line 66:
     <th style="text-align: right;">L10N</th>
     <th style="text-align: right;">L10N</th>
     <td style="background-color: #9f9f9f;"></td>
     <td style="background-color: #9f9f9f;"></td>
     <td style="background-color: #cfcfcf;">Jetpack-native APIs/tools, web service?</td>
     <td style="background-color: #cfcfcf;"></td>
    <td></td>
    <td>Jetpack-native APIs/tools, web service?</td>
     <td></td>
     <td></td>
   </tr>
   </tr>
Line 74: Line 74:
     <th style="text-align: right;">API</th>
     <th style="text-align: right;">API</th>
     <td style="background-color: #9f9f9f;">Prototypes and proposals of various APIs</td>
     <td style="background-color: #9f9f9f;">Prototypes and proposals of various APIs</td>
     <td style="background-color: #cfcfcf;">Implementation of high-level browser APIs</td>
     <td style="background-color: #cfcfcf;"></td>
     <td>Robust library satisfying common add-on use-cases</td>
     <td>Implementation of robust library satisfying common add-on use-cases</td>
     <td>Stable library</td>
     <td>Stable library</td>
   </tr>
   </tr>

Revision as of 00:08, 20 April 2010

Draft-template-image.png THIS PAGE IS A WORKING DRAFT Pencil-emoji U270F-gray.png
The page may be difficult to navigate, and some information on its subject might be incomplete and/or evolving rapidly.
If you have any questions or ideas, please add them as a new topic on the discussion page.


Jetpack High-Level Product Roadmap

Jetpack development comprises numerous releases of multiple products that achieve four major milestones, which this chart summarizes.

Milestone One Milestone Two Milestone Three Milestone Four
Jetpack Prototype Jetpack SDK 0.1 Jetpack SDK 0.2 - 0.n Jetpack SDK 1.0
ETA DONE, 2009 Q4 DONE, 2010 Q1 2010 Q2 - Q4 2011 Q1 - Q2
Firefox Extension Manager no-restart API, transparent content iframes Support for Jetpack-native packages, Jetpack library in core?
Platform Chrome object wrappers ECMAScript 5?
AMO Stats on Jetpack-built extensions Support for Jetpack-native packages
Security Reduced-privilege security model ES5-based API hardening?
L10N Jetpack-native APIs/tools, web service?
API Prototypes and proposals of various APIs Implementation of robust library satisfying common add-on use-cases Stable library
Dev Tools Bespin-based editor in extension Command line FlightDeck web-based IDE
Distribution Individual JS files XPIs w/embedded Jetpack runtime Jetpack-native packages (JPIs?)
Documentation bundled w/SDK MDC


SDK Release Roadmap

TBD. SDK versions 0.4 and 0.5 are currently targeting 2010 Q2. Once 0.3 is released, this space will fill in with the plan for those.

SDK Release History

The SDK releases so far are available at Labs/Jetpack/SDK.

SDK 1.0 Goals

NOTE: Some of these are already achieved by the move to the SDK approach, and some made obsolete/irrelevant. These goals need updating.

  • A seamless install process: It defeats the purpose of Jetpack to first require users to install Jetpack, then install a particular Jetpack, before using its features. Instead, we need a solution which allows a seamless install process.
  • Seamless debugging: No pointless error messages, and all relevant warnings, line numbers, and tracebacks, are displayed.
  • Enabling API: An API deep enough to support a large range of add-ons. It is a non-goal in 1.0 to support everything, instead it is to support 80% of the long-tail of add-ons. The exact feature set of the API will be determined by a set of target add-ons (TBD) and feedback from Jetpack authors.
    • Frozen API: Although the API may be versioned, we the API will be backwards compatible from 1.0 on.
  • Beautiful by default: A set of OS-specific icons, as well as a beautiful look for Jetpacks.
  • Security-sensitive Import mechanism: The strength of any API is measured in how easily 3rd parties can extend it. The 1.0 release will have a strong import mechanism, replete with security provisions.
  • Security: A functioning security system that mixes code with social protections.
    • An AMO-like service with social code-review
  • Localization story
  • Works on Fennec