Intent to ship: Cache API's addAll()

82 views
Skip to first unread message

Kenji Baheux

unread,
Jul 2, 2015, 2:55:09 AM7/2/15
to blin...@chromium.org

Contact emails

kenji...@chromium.org, jsb...@chromium.org


Spec

Editor’s draft (W3C First Public Working Draft)


Summary

This is a follow-up to the initial intent to ship for the Cache API (LGTM-ed).

We are adding addAll() taking us one step closer to remove the need for a polyfill altogether (remaining API surface to implement: matchAll).



Link to “Intent to Implement” blink-dev discussion

https://groups.google.com/a/chromium.org/d/msg/blink-dev/Du9lhfui1Mo/HxL_pS7Cl-AJ

The spec and project used to be called Navigation Controller, but the name was changed to Service Worker. See also the Service Worker intent to ship.



Is this feature supported on all five Blink platforms (Windows, Mac, Linux, Chrome OS and Android)?

Yes.


Demo link

This is essentially the same demo featured in our Service Worker intent to ship (the demo uses a polyfill and is being updated to let native Cache APIs take over when available).


Debuggability

Developers can check the existence of caches and peek inside manually by inspecting the relevant Service Worker and issuing commands via the console.


Compatibility Risk

Pluses and minuses:

+ The public working draft of the spec has a good heart beat.

+ Mozilla has implemented the Cache API in Firefox, see bug 940273 (from a quick read, their implementation covers the whole API surface)

+ We regularly reconcile the spec and our implementation. We have a defined process for that.

+ The team has been writing W3C testharness.js tests which we are working on upstreaming to W3C.

+ The Cache API part of the spec has been stable for a while.

? We will cross check our implementation with Firefox’s on our/their tests and report back our findings asap.



OWP launch tracking bug?

https://code.google.com/p/chromium/issues/detail?id=427652


Link to entry on the feature dashboard

https://www.chromestatus.com/feature/6461631328419840

Benjamin Kelly

unread,
Jul 2, 2015, 12:25:57 PM7/2/15
to Kenji Baheux, blink-dev
On Thu, Jul 2, 2015 at 2:55 AM, Kenji Baheux <kenji...@chromium.org> wrote:

+ The team has been writing W3C testharness.js tests which we are working on upstreaming to W3C. 

? We will cross check our implementation with Firefox’s on our/their tests and report back our findings asap.


I believe these have been upstreamed already.  In particular, there are some tests for addAll() in the WPT tests here:

  https://github.com/w3c/web-platform-tests/blob/master/service-workers/cache-storage/script-tests/cache-add.js

These have also been imported into the gecko tree and we're actively running them in automation.

So this looks good to me.  Thanks!

Ben

Philip Jägenstedt

unread,
Jul 6, 2015, 5:53:19 AM7/6/15
to Kenji Baheux, blink-dev
LGTM. It looks like add() is already implemented using an internal
addAll(), which is how the spec puts it, so I take it this is just a
matter of connecting the dots in bindings.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to blink-dev+...@chromium.org.

TAMURA, Kent

unread,
Jul 13, 2015, 9:56:16 PM7/13/15
to Philip Jägenstedt, Kenji Baheux, blink-dev
LGTM2.

--
TAMURA Kent
Software Engineer, Google


Chris Harrelson

unread,
Jul 14, 2015, 10:27:23 AM7/14/15
to TAMURA, Kent, Philip Jägenstedt, Kenji Baheux, blink-dev
LGTM3

Alex Russell

unread,
Jul 14, 2015, 10:41:19 AM7/14/15
to blin...@chromium.org, kenji...@chromium.org, chri...@chromium.org, phi...@opera.com, tk...@chromium.org
Can't LGTM, but glad this is going to pass!

Matt Falkenhagen

unread,
Jul 14, 2015, 9:08:05 PM7/14/15
to Alex Russell, blink-dev, Kenji Baheux, chri...@chromium.org, Philip Jägenstedt, Kent Tamura
> Link to entry on the feature dashboard
>
> https://www.chromestatus.com/feature/6461631328419840

Update: Cache.addAll() has its own entry now: https://www.chromestatus.com/feature/4922023562182656

The previous entry was for Cache API in SW, which has shipped since M40, so it seems useful to have a separate entry.

Reply all
Reply to author
Forward
0 new messages