Jetpack/SDK Apis In Firefox 21

From MozillaWiki
Jump to: navigation, search

Landing SDK Apis in Firefox 21

This plan outlines the various dates & dependencies involved with landing the SDK's apis in Firefox 21.

Checklist

  • [✓] have larch
  • [✓] have builds
  • [✓] confirm cfx/python packages addons correctly ( no changes )
  • [✓] loader in Firefox or in SDK should prefer in-browser apis to packaged ones if they are found.
  • [✓] Make automated tests work on tinderbox.
  • [✓] merge larch to m-c ( via m-i ) as early as January 15. If we don't back out, continue to merge to m-i once this merge has been made.
  • [✓] CFX testing: "CFX should recognize modules shipped with platform" https://bugzilla.mozilla.org/show_bug.cgi?id=793925
  • [ ] Builder will need to work with builds of Firefox that include the SDK apis

Timeline

  1. January 8: FX 18 released, 21 becomes nightly.
  2. January 29: SDK 1.13 release
  3. February 19/20: Aurora Uplift of FX 21. On this date the current state of the SDK becomes frozen and synced between Aurora and SDK/stabilization
  4. March 12: SDK 1.14 release. This is the final release of the SDK including APIs, will be identical to what is shipped in FX 21.
  5. April 2: Fx 20 released, 21 goes into Beta. Builder should now support Firefox Beta with embedded SDK apis.
  6. May 13: Firefox 21 released
  7. June 25th: Firefox 22 released. CFX no longer supports packaging xpis for releases < Firefox 21.

SDK 'Journey by train' compatibility policy

  • once Aurora 21 uplift happens, any changes to stabilization need to be cherry-picked over to Aurora or later Beta channels until Fx 21 is released.
  • until Fx 22 is released, cfx will continue to package module dependencies with the xpi and claim to be compatible with Firefox 20.
  • Fx 22 will be the first version of Firefox with changes to the SDK apis that are not included in a corresponding SDK release.
  • note: this implies a release of the cfx packaging tool as Add-on SDK 1.15, the first release of the SK that will *not* include the APIs.
  • Builder should be compatible with Fx 21 by no later than Beta. *shrug* it gives Piotr a hard date to shoot for.
  • bonus: most addon builder helper users are on release or beta channels.

Add-on Re-packing

Once we've shipped the SDK apis in Firefox and have implemented a packager that does not ship the loader and api dependencies by default, we can then look at re-packing existing add-ons on AMO to support Firefox 21+ only.

Pros:

  • all the add-ons will use new apis
  • xpi file size will be much smaller

Cons:

  • can't reliably re-pack add-ons that use lower-level apis, so we'll have some stragglers. May need to exhort them to upgrade or re-pack the add-ons for them if the user base is large.