[Bug 14702] appcache: always up-to-date applications

https://www.w3.org/Bugs/Public/show_bug.cgi?id=14702

--- Comment #27 from Ian 'Hixie' Hickson <ian@hixie.ch> 2011-12-14 00:10:25 UTC ---
Obviously anything we do here is subject to further development.

(In reply to comment #25)
> > Here's what I propose:
> >  - add a new section to manifests which works like the CACHE section, but
> > also flags the resources with a new flag.
> 
> I don't understand this. Could you elaborate.

Cache manifests have sections. CACHE:, FALLBACK:, NETWORK:. The above proposes
a new section that works basically like CACHE:, but with resources flagged for
the special processing during navigation.


(In reply to comment #26)
> 
> That behavior sounds somewhat similar to the 'useManifest' or
> 'dontCacheMasters' behavior that i have in mind, but has the downside of having
> only applying to specific urls that are listed in the new manifest section.
> Listings like that are tedious and error prone to produce.

Hmm, I guess it's true that this feature would often be used with a whole bunch
of resources at once, since the whole point here is that the data is mixed in
with the structure rather than having one URL for the app structure and the
data fetched separately.


Ok. New proposal:
 - add a flag at the top of the manifest that flags it for this new processing.
 - when you fetch a file during navigation and it's in an appcache that has
been flagged, and the resource is not marked foreign, fetch it from the network
and immediately kick off a cache update.
 - if the file comes back 200, then act as if you were not associated with an
appcache (same as the first time you fetch a file that later is found to have a
manifest), except use the existing appcache as an HTTP cache. Once the appcache
update is complete, treat the appcache as if it was guaranteed to hold the
latest copies of everything it has, so you never have to hit the network for
cached resources. If the file is found to not have a manifest="", then mark the
entry as foreign, just like for master resources now. Normal master resource
caching works as now, which is how we get these pages into the cache for
offline support:
 - if the file comes back with any other code, load it from the appcache as
normal.

-- 
Configure bugmail: https://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.

Received on Wednesday, 14 December 2011 00:10:27 UTC