Thunderbird/JQuery

From MozillaWiki
Jump to: navigation, search

This page is about tracking the decisions & discussions needed before we land JQuery in tree.

  • determine who "maintains" jQuery in the tree. (That means: be aware of important changes in jquery, be willing to help upstream issues, and bridge between the two projects). --> ???
  • Sort out licensing issues.
    • See the license policy
    • This includes emailing the license team (step 6) to get their ok.
    • Do we need to get about:license updated?
  • determine what version to use --> latest stable 1.3 version by the time RC1 is built, talk to jresig to confirm
  • decide where to land the file. Proposed: mail/base/content/jquery-1.3.2-min.js, mapped to chrome://mail/base/content/jquery-1.3.min.js (note last version number removed by jar.mn)
    • how does this loss of the last digit relate to the API backward compatibility promises that jQuery does or doesn't make? (dmose)
    • Standard8: I expect this would be best in other-licenses to keep it separate from our tri-licensed code (See "Third Party Code" here).
  • understand the jquery security profile
    • jquery is not currently loaded in html chrome by thunderbird core features.
    • Note: jquery is intended for "content", but is used in chrome. Does that matter?
      • does jQuery have any implicit dependencies on content-space features (eg cross-domain restrictions)?
    • possible TODOs:
      • figure out if there are any obvious security concerns (use of eval() on input vars)
      • talk to someone in security about it, get their 2c.
        • are there likely to be unintended consequences of using jQuery with
          • XUL
          • XBL
          • XPConnect and the various wrapper objects
      • talk to jquery, see what they have to say about security implications & chrome in particular.
  • understand the upgrade/maintenance policies around jquery
    • how long do they expect version 1.3 to be maintained?
    • we will decide when new versions are released whether to include them in trunk, and whether to include them in branch, based on the specific changes in each release.
  • do the jquery authors have concerns about jquery inclusion in tb3?
  • decide what the level of support for jquery is from Mozilla's POV. Draft:
JQuery is included in Thunderbird for two reasons -- one, because it makes it possible for us to deliver specific features, and two, because we feel it can be useful to add-on authors. Mozilla are not the primary authors of JQuery, however, and we will endeavor not to fork the version of JQuery in Thunderbird if at all possible -- instead, we will work to fix the library up-stream, and when it updates (with fixes from us or from others), then we'll consider updating it in later releases of Thunderbird (whether minor or major version upgrades). If you encounter problems with JQuery in your add-on development, we encourage you to engage with its community at <url>.