Skip to content

Normative spec doesn't necessarily terminate service workers #54

@asakusuma

Description

@asakusuma

I don't think the normative behavior of the storage directive provides the guarantees stated in the non-normative language, specifically around service workers.

Service Workers registered for an origin are terminated and deregistered.

From what I can tell, the spec says to simply call unregister() on every service worker registration for the matching origin. unregister() doesn't actually take effect until no client is using the registration. Even if reloading() did create a point in time in which the client was not using the registration, I'm not sure that iterating over each client and calling reload() will guarantee that there was a point in time in which no client was using the registration. Perhaps the Clear Registration algorithm should be invoked directly?

Original discussion: w3c/ServiceWorker#614
Related ticket: #1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions