Firefox/Projects/Jetpack

From MozillaWiki
< Firefox‎ | Projects
Revision as of 22:24, 2 February 2010 by Adw (talk | contribs)
Jump to navigation Jump to search

Summary

Make sure Jetpack's needs in Firefox and Platform are met. Facilitate communication between Firefox and Jetpack teams.

Background

Jetpack's architecture under versions 0.8 and earlier (now called the Jetpack "prototype") is being abandoned for a new architecture nicknamed the Jetpack "reboot". Check the Labs reboot wiki page for details, but briefly, the differences between the two:

  • Extensions produced under the reboot are actually XPIs. Under the prototype they were single JS files.
  • The reboot is very loosely integrated with Firefox. The Jetpack runtime is bundled in each XPI. The only significant hook that these XPIs require is a no-restart-needed mechanism.
  • The reboot has a security model, the prototype didn't.
  • There are two layers of APIs under the reboot. "Cuddlefish" is low-level, chrome-privileged, and wraps the platform. "Jetpack" is high-level, secure, builds on Cuddlefish, low surface area, and friendly. It's possible to use Cuddlefish without using Jetpack.

Current Status

Next Steps

  • Begin to hash out the API we want under the Jetpack reboot.
  • Determine the Firefox/Platform blockers needed by that API.
  • Separately, we need to work on bug 542385, the no-restart-needed mechanism.

Related Bugs

Related Links

Team

  • Lead: adw
  • Sprinter: mossop
  • Jetpack team contact: atul

Goals

  • Make sure Jetpack has what it needs for a smooth uplift into Firefox.
  • Keep an open communication channel between the Firefox and Jetpack teams.

Non Goals

  • Finalize the Jetpack API.