Firefox/Projects/Jetpack: Difference between revisions
Jump to navigation
Jump to search
Line 35: | Line 35: | ||
* [https://bugzilla.mozilla.org/buglist.cgi?quicksearch=sw%3A%5Bjetpack%5D List of Jetpack-related Firefox/Platform bugs] (quicksearch [jetpack]) | * [https://bugzilla.mozilla.org/buglist.cgi?quicksearch=sw%3A%5Bjetpack%5D List of Jetpack-related Firefox/Platform bugs] (quicksearch [jetpack]) | ||
* Integration of runtime into Firefox/Platform: | * Integration of runtime into Firefox/Platform: | ||
** {{bug|542385}}, the | ** {{bug|542385}}, the (re)loadable mechanism on trunk. {{bug|544021}} tracks the same work on branch. | ||
* Enabling Jetpack APIs: | * Enabling Jetpack APIs: | ||
** Layout bugs related to sticking iframes with arbitrary content into XUL panels: {{bug|130078}}, {{bug|532569}}. | ** Layout bugs related to sticking iframes with arbitrary content into XUL panels: {{bug|130078}}, {{bug|532569}}. |
Revision as of 01:25, 6 February 2010
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:
- "Jetpacks" produced under the reboot are actually XPIs. They're real extensions. Under the prototype they were single JS files.
- Since jetpacks are now extensions, it no longer makes sense to say "I made a jetpack." It's more like, "I made an extension using Jetpack."
- Jetpack itself is no longer an extension. It no longer makes sense to say, "I installed Jetpack."
- The reboot is basically a toolchain, runtime, and API -- a framework.
- "Cuddlefish" is what Atul has coined this framework.
- The reboot is very loosely integrated with Firefox. The runtime is bundled in each XPI. The only significant hook that these XPIs require is a (re)loadable extension mechanism.
- The reboot has a security model, the prototype didn't.
- Roughly speaking, there are two layers of APIs under the reboot. There's a low-level, chrome-privileged layer that wraps the platform. And there's a high-level, secure, low surface area, and friendly layer that builds on the lower. It's the higher layer that might be thought of as "the Jetpack API," but it's entirely possible to use the lower to build an extension.
- The Bespin IDE of the prototype will be replaced with a contracted-out in-browser IDE called "FlightDeck." FlightDeck provides a nice UI to Cuddlefish's toolchain.
Current Status
- Firefox team
- adw, mossop, ddahl, zpao attending weekly Jetpack meetings.
- Jetpack team
- Determining the set of APIs to expose under the reboot.
- Published a roadmap.
Next Steps
- Continue to iterate on the API we want under the Jetpack reboot.
- Find any Firefox/Platform blockers or larger concerns arising from that API.
- Separately, mossop will be working on bug 542385, (re)loadable extensions.
Related Bugs
- List of Jetpack-related Firefox/Platform bugs (quicksearch [jetpack])
- Integration of runtime into Firefox/Platform:
- bug 542385, the (re)loadable mechanism on trunk. bug 544021 tracks the same work on branch.
- Enabling Jetpack APIs:
- Layout bugs related to sticking iframes with arbitrary content into XUL panels: bug 130078, bug 532569.
Related Links
- Jetpack reboot wiki
- Jetpack team weekly meetings wiki
- #jetpack
- There's a Jetpack drivers mailing list. Ping adw or Daniel Buchner if interested.
Team
- Lead: adw
- Members: 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 or dictate the Jetpack APIs.