Hi Anders, Thnx for the pointers to the tests. I hadn't seen them. Honestly I think the spec needs to be revisited on this thing. The manifest update/validation scheme in particular has some real problems around opportunistic caching and dynamically added resources imo. But that aside for the moment... * Is this stuff built into shipping Safari or iPhone browsers yet? * Are any apps, to your knowledge, relying on this stuff yet? * About the current implementation in the tree. I noticed all of the I/O was sync, everything including the cached responses are stored in an SQLite database. Also noticed that when a page that references an appcache is loaded, all of the resources contained in that appcache are loaded into memory at page load time. I'm glad you guys don't consider that as 'done' :) What would you think of separating response storage (headers and bodies) from the logical structure of an appcache (set of entries and categories, namespace definitions, etc). SQLite is a reasonable choice for the logical structure. That database could contain keys to response bodies contained in another repository from which ResourceHandles could be loaded asynchronously. Michael On Wed, Sep 10, 2008 at 11:46 PM, Anders Carlsson <andersca@apple.com>wrote:
9 sep 2008 kl. 20.42 skrev Michael Nordman:
What is the status of the work-in-progress around the HTML5 AppCache that
is in the repository? Is anybody actively working on that now? I'm interested in incorporating support for this feature into Chrome is why I'm asking.
Michael
Hey Michael!
As far as the specification goes, the two big parts that aren't implemented are opportunistic entries, and dynamic entries.
Also, all I/O is currently synchronous which is of course something that we'd like to avoid. The relevant code is (as you probably already know) in WebCore/loader/appcache, but also elsewhere in the loader, surrounded by #if ENABLE(OFFLINE_WEB_APPLICATIONS).
The code hasn't received a lot of testing (given that the spec is fairly new and in flux). Some regression tests are in LayoutTests/http/tests/appcache.
Any feedback/comments you have is of course much appreciated!
Anders