Calendar:Lightning:Integration Issues

From MozillaWiki
Revision as of 18:44, 30 March 2005 by Shaver (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This is a very rough doc; I use it to keep track of problems we need to address for Lightning and likely for other extension authors as well.

  • Little-to-no error reporting for overlay errors.
    • Put an incorrect URL in your chrome.manifest
    • Causes an empty buffer to be sent to expat
    • Which is an XML error, causing the XUL content sink to generate <parsererror> _and_ blow away the context stack.
    • You get an assertion from the context stack destruction, and future overlay processing is broken.
    • No useful error reported at _any_ point.
  • Some, but insufficient, for chrome.manifest/chromereg.
  • Also, extension manager stuff. (Some of that is because the RDF datasource stuff sucks, and doesn't report errors back up the chain.)
  • Reload-to-test cycle painful -- can't even use "reload chrome" extension in tbird for those cases, let alone where JS components change, etc.
  • DOMi and Venkman don't work well with Thunderbird -- DOMi was dropped in Tbird 0.8 for DL-size reasons, and people said it was available as an extension, but I can only find an old one from Chris Neale that I have to hack install.rdf for.
  • Need to participate in the folder/server/msgdbheader model to get into the Tbird search model.
    • Can't participate in server/folder model without security-risky, leak-prone, JS-incompatible RDF work.
    • Also need to implement large and baroque nsIMsgIncomingServer and nsIMsgFolder interfaces.
    • MsgDbHeader stuff looks very mork-centered, hard to use with other stores.
  • Overlaying new columns into tree widgets is hard.
  • Everyone seems to have to write their own "is a message selected?" sorts of command handlers, since we don't have any good ones to reuse.
  • Can't search addressbook
    • Have to retrieve all cards and enumerate (!)
  • hard to plug in new addressbook implementations (more RDF stuff, painful interfaces)
    • The GroupDAV guy is suffering under this, proposing new ifaces, stuck between a rock and a hard place!
  • Thunderbird skin/chrome build system very confusing, with classic and qute and mailnews and mail. Some docs or fixes there would be greatly helpful.
  • Venkman doesn't help at all for debugging with JS component issues for which we have well-isolated (xpcshell) test cases; have to choose between running easily in xpcshell and having venkman available (by loading it into tbird or such). Maybe xulrunner can help here?