CloudServices/Sync/FxSync/ClientPriorities
From MozillaWiki
< CloudServices | Sync | FxSync
[STALE] Client Priorities
This is supserseded by the FxSync Roadmap.
Feature Reqs from Product
- [P1] Improve discoverability
- [P1] Instant Sync (engine specific sync heuristics)
- "Instant" may be misleading, but essentially this is much more aggressive syncing of certain data types (i.e. bookmarks, passwords) and smarter sync-on-return-from-idle behaviour.
- [P1] Deauthorize device from syncing (e.g. lost phone) from Account Portal
- Needs a spec, hard to revoke access to just a device, since it has all creds.
- May morph to "remote wipe" trigger that isn't tied to user/pass auth (token-based auth + polling/push?)
- [P1] Improve Sync setup process
- Waiting on user study, as yet unscoped
- [P2] Push to mobile
- UX TBD, but fairly simple to implement (new data type, likely)
- new data type? I'm not so sure... Would rather use push notifications --philikon
- UX TBD, but fairly simple to implement (new data type, likely)
- [P2] Sync add-ons
- Add/update/remove automatically across computers
- Does this apply to cross-app syncing, or is this like prefs?
- Should be like prefs (only sync add-ons between Firefoxes, Fennecs, Thunderbirds, etc.) --philikon
- [P2] Sync favicons
- This is less painful than we think, should be able to sync the moz_favicons table in some reasonable way.
- [P2] Sync web apps
- Waiting on web app evolution
- [P2] Sync localStorage
- Need to figure out space reqs, this will likely push us into "omg" levels of quota for some users
- Also highly non-trivial to do conflict resolution. localStorage is essentially a flat object, afaik no timestamps. Easy to get web app's data into inconsistent state --philikon
- [P2] Snippet view in about:home
- Need more details here.
Platform-level improvements
- [P1] War On Sync
- Don't spin the event loop bug 600059
- Introduce async APIs across SyncEngine, Store, Tracker
- also see /Services/Sync/WEP/116
- Avoid synchronous I/O *everywhere*. Needs async bulk APIs in platform:
- forms
- passwords
- bookmarks
- Don't spin the event loop bug 600059
- [P2] TPS, formerly known as Crossweave 2.0
- lives in services/sync/tests/...
- maintained by us, run by tinderboxes
- mochitests? mozmill?
- JSON test file format (avoid custom format + parser), possibly even JS
- moar end-to-end tests
- tests the hell out of bookmark dupe detection
- test all obscure bookmark types (queries, etc.)
- need to test errors and edge cases as well
- run on fennec
- [P2] Get rid of 3.5/3.6 compat code
- use Services, XPCOMUtils where possible
- use NetUtil.BadCertHandler?
- implement + use toolkit generic async resource bug 581560
- [P3] Automatic Profiling
- are we JITing everywhere?
- main thread blocking (UI responsiveness)
- memory leaks