Missing tasks in parallel steps in Service Workers Nightly
Open
@monica-ch is already working on this.
Since Feb 11, 2025.
- Dominant language
- Bikeshed
- Stars
- 3.6k
- Forks
- 324
- Avg merge
- 14d 22h
- Merged PRs (30d)
- 1
Description
While crawling Service Workers Nightly, the following algorithms fire an event, or resolve or reject a Promise, within a step that runs in parallel without first queuing a task:
- The navigator-service-worker-getRegistration algorithm resolves/rejects a promise directly in a step that runs in parallel
- The navigation-preload-manager-enable algorithm resolves/rejects a promise directly in a step that runs in parallel
- The navigation-preload-manager-disable algorithm resolves/rejects a promise directly in a step that runs in parallel
- The navigation-preload-manager-setheadervalue algorithm resolves/rejects a promise directly in a step that runs in parallel
- The navigation-preload-manager-getstate algorithm resolves/rejects a promise directly in a step that runs in parallel
- The service-worker-global-scope-skipwaiting algorithm resolves/rejects a promise directly in a step that runs in parallel
- The client-postmessage-options algorithm fires an event directly in a step that runs in parallel
- The clients-get algorithm resolves/rejects a promise directly in a step that runs in parallel
- The clients-claim algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-match algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-matchall algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-storage-match algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-storage-has algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-storage-open algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-storage-delete algorithm resolves/rejects a promise directly in a step that runs in parallel
- The cache-storage-keys algorithm resolves/rejects a promise directly in a step that runs in parallel
- The Handle Fetch algorithm resolves/rejects a promise directly in a step that runs in parallel
See Dealing with the event loop in the HTML specification for guidance on how to deal with algorithm sections that run in parallel.
Cc @dontcallmedom @tidoust
This issue was detected and reported semi-automatically by Strudy based on data collected in webref.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.