|Support for Offline Apps|
|Status note||Many of these are in progress, some still need to be staffed or scoped.|
|Product manager||Chris Blizzard|
|Directly Responsible Individual||Jonas Sicking / Johnny Stenback|
|Product marketing lead||`|
Stage 1: Definition
1. Feature overview
This is actually a collection of bugs that we need to fix in order to effectively support a class of offline applications.
2. Users & use cases
We want to enable a developer to write an application that can:
1. Be used on airplanes. That is, the entire application is cached and can be used.
2. To be able to store and process large amounts of data. This includes both data that's the size of smallish jason blobs (measured in kilobytes) but also large images or even videos (megabytes.)
3. To give users decent feedback about progress and important state changes. This means guidance on app changes (when it's updated), excellent responsiveness and startup time.
4. To be able to use the network when required, with decent fallback.
Stage 2: Design
5. Functional specification
6. User experience design
Stage 3: Planning
7. Implementation plan
- HTML5 App Cache: We do not fire the onupdateready event - needs investigation & a test
- IndexedDB: Set Version API will change
- IndexedDB: Can't delete a database - do this with Set Version
- IndexedDB: Enable storing files See also: [Features/Platform/LargeFilesForIndexedDB feature page for this bug] - Jan is working on this
- App Cache: Clear Recent History should be able to clear offline cache - Who?
Waiting on specs from Jonas & Robert:
- Need an API for querying permission to make a Database
- Need an API for revoking permission to make a Database (shared computer use case.)
- Jonas will be working on a testing plan to test IndexedDB performance with Clint.
- AppCache: Remote @font-face fails when used with appcache
- IndexedDB: Can only create simple key types
- IndexedDB: Can only create indexes on the root object
- API to trigger asking for the data storage permission dialog (HTML5 App Cache) or stop asking
- There's no easy way to know if you're getting the offline/cached version of a file or the one off the network. (Nice to have for testing.)
- Support for LevelDB
Quality Assurance review
Stage 4: Development
Stage 5: Release
10. Landing criteria
|Theme / Goal||Experience|
Team status notes