-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add service worker support #3419
Conversation
2d441f8
to
7b74efd
Compare
d4a925c
to
4641deb
Compare
6057e70
to
7a96c3c
Compare
@kainino0x After many efforts, I was able to get them working. /me happy! I'll appreciate your review as I had to take corners due to my unfamiliarity with the WebGPU CTS infrastructure. |
Nice!! Sorry, I ended up with a lot of code reviewing to do today. I will review soon. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks great so far, not too complex!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @kainino0x for the review!
4116482
to
0bb2ce0
Compare
This will be needed to launch Service Workers, which cannot be generated at runtime and cannot use dynamic import().
0bb2ce0
to
675f6ad
Compare
nit: Avoid force-pushing: https://github.com/gpuweb/cts/blob/main/docs/intro/developing.md#pull-requests |
I will be more vigilant in the future. Sorry for that. |
All good! Left one more comment. |
DedicatedWorker can be created from DedicatedWorker, but none of the other nested worker pairs are allowed.
@beaufortfrancois I pushed some commits polishing up some bits. Please review, then this should be ready to squash-and-merge! |
@kainino0x Everything but #3419 (comment) looks good to me. Thank you for polishing this PR! |
85d764a
to
97e378e
Compare
@kainino0x I think we're good to merge now. I'll let you do it. |
@kainino0x Thank you! |
* Generate Web Worker script for every test file This will be needed to launch Service Workers, which cannot be generated at runtime and cannot use dynamic import(). * Add service worker support * Update wpt.ts * Run tests * Address kainino0x feedback * Address feedback | part 2 * Address feedback | part 3 * Address feedback | part 4 * Address feedback | part 5 * Address feedback | part 6 * Address feedback | part 7 * Address feedback | part 8 * Apply suggestions from code review * use WorkerTestRunRequest in the postMessage/onmessage interface * Clean up resolvers map * Use express routing for .worker.js * Skip worker tests when run in a worker that can't support them DedicatedWorker can be created from DedicatedWorker, but none of the other nested worker pairs are allowed. * Clean up all service workers on startup and shutdown * Avoid reinitializing service workers for every single case * lint fixes * Catch errors in wrapTestGroupForWorker onMessage * Make sure the service worker has the correct URL --------- Co-authored-by: Kai Ninomiya <[email protected]>
* Generate Web Worker script for every test file This will be needed to launch Service Workers, which cannot be generated at runtime and cannot use dynamic import(). * Add service worker support * Update wpt.ts * Run tests * Address kainino0x feedback * Address feedback | part 2 * Address feedback | part 3 * Address feedback | part 4 * Address feedback | part 5 * Address feedback | part 6 * Address feedback | part 7 * Address feedback | part 8 * Apply suggestions from code review * use WorkerTestRunRequest in the postMessage/onmessage interface * Clean up resolvers map * Use express routing for .worker.js * Skip worker tests when run in a worker that can't support them DedicatedWorker can be created from DedicatedWorker, but none of the other nested worker pairs are allowed. * Clean up all service workers on startup and shutdown * Avoid reinitializing service workers for every single case * lint fixes * Catch errors in wrapTestGroupForWorker onMessage * Make sure the service worker has the correct URL --------- Co-authored-by: Kai Ninomiya <[email protected]>
* Generate Web Worker script for every test file This will be needed to launch Service Workers, which cannot be generated at runtime and cannot use dynamic import(). * Add service worker support * Update wpt.ts * Run tests * Address kainino0x feedback * Address feedback | part 2 * Address feedback | part 3 * Address feedback | part 4 * Address feedback | part 5 * Address feedback | part 6 * Address feedback | part 7 * Address feedback | part 8 * Apply suggestions from code review * use WorkerTestRunRequest in the postMessage/onmessage interface * Clean up resolvers map * Use express routing for .worker.js * Skip worker tests when run in a worker that can't support them DedicatedWorker can be created from DedicatedWorker, but none of the other nested worker pairs are allowed. * Clean up all service workers on startup and shutdown * Avoid reinitializing service workers for every single case * lint fixes * Catch errors in wrapTestGroupForWorker onMessage * Make sure the service worker has the correct URL --------- Co-authored-by: Kai Ninomiya <[email protected]>
Spec PR: gpuweb/gpuweb#4465
Requirements for PR author:
.unimplemented()
./** documented */
and new helper files are found inhelper_index.txt
.Requirements for reviewer sign-off:
When landing this PR, be sure to make any necessary issue status updates.