ServiceWorker: Update the install sequence as per the latest spec
This change...
(a) updates the install sequence based on the latest spec. Before this
patch, the installing version is set after resolving the register promise.
After this patch, the installing version is set before resolving the promise.
(b) fills registration's version attributes before resolving the register
promise. This should fix the problem mentioned c#5 in the issue and should
absorb the change of the timing to set the installing version due to (a).
(c) adds a separate IPC for updatefound event to adjust the timing to fire
the event. Before this patch, the event shares SetVersionAttributes message.
Blink: https://codereview.chromium.org/524193003/
[2] Chromium: THIS PATCH
Blink: https://codereview.chromium.org/517223002/
Spec: https://slightlyoff.github.io/ServiceWorker/spec/service_worker/index.html#installation-algorithm
BUG=406240
TEST=content_unittests --gtest_filter=ServiceWorker*
TEST=run_webkit_tests.py http/tests/serviceworker/
Review URL: https://codereview.chromium.org/
517493002
Cr-Commit-Position: refs/heads/master@{#292838}