New issue
Advanced search Search tips
Starred by 34 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug


Sign in to add a comment

Implement ES Modules for dedicated workers

Project Member Reported by nhiroki@chromium.org, Jan 11 2017

Issue description

Specs of Dedicated/Shared/ServiceWorkers define "module" type.

  let worker = new Worker("worker.js", { type: "module" });

In this type, worker scripts are loaded as ES6 modules and import statement is available on the worker contexts. If the second parameter is omitted, worker scripts are loaded as plain scripts as usual ("classic" type).

Spec of Dedicated/SharedWorkers:
https://html.spec.whatwg.org/multipage/workers.html#module-worker-example

Spec of ServiceWorkers (see "type" in the section):
https://w3c.github.io/ServiceWorker/#service-worker-concept
 
 issue 627945  is for worklets.

Comment 2 by neis@chromium.org, May 26 2017

Cc: neis@chromium.org
 Issue 739764  has been merged into this issue.
Cc: tzik@chromium.org
Relevant spec discussion:
"How can we use SW module link in backward-compatible manner?"
https://github.com/w3c/ServiceWorker/issues/1186
Project Member

Comment 5 by bugdroid1@chromium.org, Oct 4 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/251d15052fedb579c071e9fe9b3d971b35c52214

commit 251d15052fedb579c071e9fe9b3d971b35c52214
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Oct 04 08:46:29 2017

Worker: Clean up DedicatedWorker initialization

This is just a cleanup and doesn't change behavior.

The main change is to resolve a script URL before creating a DedicatedWorker
instance so that the instance doesn't take care of the case where the URL
resolution fails and the code path becomes simpler.

Bug: 680046
Change-Id: I439716e7cf562a1e71aafd453a76071179c9194c
Reviewed-on: https://chromium-review.googlesource.com/700094
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#506339}
[modify] https://crrev.com/251d15052fedb579c071e9fe9b3d971b35c52214/third_party/WebKit/Source/core/workers/AbstractWorker.cpp
[modify] https://crrev.com/251d15052fedb579c071e9fe9b3d971b35c52214/third_party/WebKit/Source/core/workers/AbstractWorker.h
[modify] https://crrev.com/251d15052fedb579c071e9fe9b3d971b35c52214/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/251d15052fedb579c071e9fe9b3d971b35c52214/third_party/WebKit/Source/core/workers/DedicatedWorker.h
[modify] https://crrev.com/251d15052fedb579c071e9fe9b3d971b35c52214/third_party/WebKit/Source/core/workers/SharedWorker.cpp

Owner: nhiroki@chromium.org
Status: Started (was: Available)
Project Member

Comment 7 by bugdroid1@chromium.org, Oct 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e4404c2f93e2d2ccacf15b07c834bff8051ddb63

commit e4404c2f93e2d2ccacf15b07c834bff8051ddb63
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Thu Oct 05 07:08:46 2017

ServiceWorker: Move InstalledScriptsManager access from WorkerThread to SWGlobalScope

For cleanup, this CL moves InstalledScriptsManager access from
WorkerThread::InitializeOnWorkerThread() to
ServiceWorkerGlobalScope::EvaluateClassicScript() because only ServiceWorker
needs to access the manager and placing it in EvaluateClassicScript() looks more
natural like importScripts().

<Motivation>

My final goal is to remove script evaluation code from WorkerThread and leave it
up to each owner of WorkerThread so that WorkerThead is no longer concerned with
how to evaluate scripts (i.e., "classic", "module", lazy eval for worklets).

For example, for DedicatedWorker, DedicatedWorkerMessagingProxy may post a task
to call WorkerGlobalScope::EvaluateClassicScript() or
WorkerGlobalScope::ImportModuleScript() (to be added later) based on
"WorkerType"[1] after initializing DedicatedWorkerThread.

[1] https://html.spec.whatwg.org/multipage/workers.html#workertype

Bug: 680046,  753350 ,  755054 
Change-Id: I546cbda16f09da66c3f94c319e498055e1f9d05b
Reviewed-on: https://chromium-review.googlesource.com/701854
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#506670}
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.cpp
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.h
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.cpp
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerThread.cpp
[modify] https://crrev.com/e4404c2f93e2d2ccacf15b07c834bff8051ddb63/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerThread.h

Blocking: 788593
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e7ea91203b8c29c7327355f8289107026fb63418

commit e7ea91203b8c29c7327355f8289107026fb63418
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Fri Dec 01 08:01:11 2017

Worker: Reject dynamic import() on WorkerGlobalScope with informative message

This CL makes dynamic import() on (Dedicated/Shared/Service)WorkerGlobalScope
reject the promise with an informative message for developers.

Notes:
- ES6 Modules for workers are now being implemented, and dynamic import() will
  be available on WorkerGlobaScope once the implementation is completed.
- The promise was rejected even before this CL but its error message was not
  useful.

Bug: 680046,  788593 
Change-Id: I270ed9d1d5a9dedaff5dc777ccf78ed99cf887f2
Reviewed-on: https://chromium-review.googlesource.com/799536
Reviewed-by: Hayato Ito <hayato@chromium.org>
Reviewed-by: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#520882}
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/LayoutTests/fast/workers/resources/shared-worker-dynamic-import.js
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/LayoutTests/fast/workers/resources/worker-dynamic-import.js
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/LayoutTests/fast/workers/shared-worker-dynamic-import.html
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/LayoutTests/fast/workers/worker-dynamic-import.html
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium/dynamic-import.html
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium/resources/dynamic-import-worker.js
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/dom/BUILD.gn
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/dom/Modulator.cpp
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/dom/ModulatorImplBase.h
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/dom/WorkerModulatorImpl.cpp
[add] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/dom/WorkerModulatorImpl.h
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.cpp
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.h
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/workers/WorkletGlobalScope.cpp
[modify] https://crrev.com/e7ea91203b8c29c7327355f8289107026fb63418/third_party/WebKit/Source/core/workers/WorkletGlobalScope.h

ES6 Modules for workers are now being implemented?

according to https://bugs.chromium.org/p/chromium/issues/detail?id=788593#c8

I test on chromium 65.0.3285.0(x86) failed.

Console display error: "Uncaught SyntaxError: Unexpected identifier"
c#10: It's now under development and not ready to test it.
Project Member

Comment 12 by bugdroid1@chromium.org, Dec 6 2017

Labels: merge-merged-3282
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/64bba80353f39bcb14adabfb75c60cca56b2758d

commit 64bba80353f39bcb14adabfb75c60cca56b2758d
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Dec 06 01:36:47 2017

[Merge to M64] Worker: Reject dynamic import() on WorkerGlobalScope with informative message

This CL makes dynamic import() on (Dedicated/Shared/Service)WorkerGlobalScope
reject the promise with an informative message for developers.

Notes:
- ES6 Modules for workers are now being implemented, and dynamic import() will
  be available on WorkerGlobaScope once the implementation is completed.
- The promise was rejected even before this CL but its error message was not
  useful.

Bug: 680046,  788593 
Change-Id: I270ed9d1d5a9dedaff5dc777ccf78ed99cf887f2
Reviewed-on: https://chromium-review.googlesource.com/799536
Reviewed-by: Hayato Ito <hayato@chromium.org>
Reviewed-by: Hiroshige Hayashizaki <hiroshige@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#520882}(cherry picked from commit e7ea91203b8c29c7327355f8289107026fb63418)
Reviewed-on: https://chromium-review.googlesource.com/809990
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/branch-heads/3282@{#48}
Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840}
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/LayoutTests/fast/workers/resources/shared-worker-dynamic-import.js
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/LayoutTests/fast/workers/resources/worker-dynamic-import.js
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/LayoutTests/fast/workers/shared-worker-dynamic-import.html
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/LayoutTests/fast/workers/worker-dynamic-import.html
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium/dynamic-import.html
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/LayoutTests/http/tests/serviceworker/chromium/resources/dynamic-import-worker.js
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/dom/BUILD.gn
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/dom/Modulator.cpp
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/dom/ModulatorImplBase.h
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/dom/WorkerModulatorImpl.cpp
[add] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/dom/WorkerModulatorImpl.h
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.cpp
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.h
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/workers/WorkletGlobalScope.cpp
[modify] https://crrev.com/64bba80353f39bcb14adabfb75c60cca56b2758d/third_party/WebKit/Source/core/workers/WorkletGlobalScope.h

Project Member

Comment 13 by bugdroid1@chromium.org, Dec 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6eba64719f5e950ff9ef335e0392f2b6f7c45adc

commit 6eba64719f5e950ff9ef335e0392f2b6f7c45adc
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Fri Dec 08 03:09:36 2017

Worker: Exclude source_code from GlobalScopeCreationParams for cleanup

For cleanup, this CL excludes |source_code| and |cached_meta_data| from
GlobalScopeCreationParams and passes them as separate arguments to functions.
This is because these fields are not used for creating a global scope but for
evaluating a worker script.

Also, this change simplifies worklets implementation and helps to implement
module worker because they don't need to pass |source_code| and
|cached_meta_data| from the main thread.

Bug: 680046,  710364 
Change-Id: Icdf978ec136cb316c391a47e8306ba454e9b9876
Reviewed-on: https://chromium-review.googlesource.com/813454
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522692}
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/exported/WebSharedWorkerImpl.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/loader/modulescript/ModuleScriptLoaderTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/DedicatedWorkerTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/GlobalScopeCreationParams.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/GlobalScopeCreationParams.h
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/MainThreadWorkletTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/ThreadedWorkletTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/WorkerThread.h
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/WorkerThreadTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/core/workers/WorkerThreadTestHelper.h
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletGlobalScopeTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletThreadTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/modules/csspaint/PaintWorkletGlobalScopeProxy.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScopeTest.cpp
[modify] https://crrev.com/6eba64719f5e950ff9ef335e0392f2b6f7c45adc/third_party/WebKit/Source/modules/webaudio/AudioWorkletThreadTest.cpp

Project Member

Comment 14 by bugdroid1@chromium.org, Dec 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6d17e158c4ddc0259e32fa13ad9c5a67876d50fd

commit 6d17e158c4ddc0259e32fa13ad9c5a67876d50fd
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Dec 13 08:34:20 2017

Worker: Remove ThreadedMessagingProxyBase::WorkerThreadCreated() for cleanup

ThreadedMessagingProxyBase::WorkerThreadCreated() is provided as a virtual
function for DedicatedWorkerMessagingProxy to post queued tasks to the worker
after thread creation. However, DedicatedWorkerMessagingProxy itself initiates
the thread creation in StartWorkerGlobalScope() and can know when it's
available, so such the virtual function is not necessary.

For cleanup, this CL removes WorkerThreadCreated() and inlines posting the
queued tasks in StartWorkerGlobalScope().

Bug: 680046
Change-Id: I5248c78d381e0820461e167249ce89bac93e44a5
Reviewed-on: https://chromium-review.googlesource.com/823052
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#523719}
[modify] https://crrev.com/6d17e158c4ddc0259e32fa13ad9c5a67876d50fd/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/6d17e158c4ddc0259e32fa13ad9c5a67876d50fd/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.h
[modify] https://crrev.com/6d17e158c4ddc0259e32fa13ad9c5a67876d50fd/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.cpp
[modify] https://crrev.com/6d17e158c4ddc0259e32fa13ad9c5a67876d50fd/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h

Project Member

Comment 15 by bugdroid1@chromium.org, Dec 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/90a9b1a33ff4056792f6c3d3100b97ba5d52f080

commit 90a9b1a33ff4056792f6c3d3100b97ba5d52f080
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Fri Dec 15 14:30:55 2017

Worker: Introduce WorkerOptions for module workers

This CL introduces WorkerOptions for module workers. This is not exposed on the
ctor of any workers yet to avoid making developers confused about unimplemented
features.

This also passes the option from DedicatedWorker::Create() to
DedicatedWorkerMessagingProxy::StartWorkerGlobalScope(). Following CLs will
implement the remaining parts and add tests.

This CL doesn't change the existing behavior.

Rough design doc about module workers:
https://docs.google.com/a/chromium.org/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit?usp=sharing

Bug: 680046
Change-Id: I571e8f540d842bb06878e13d4b383eddc2df42f1
Reviewed-on: https://chromium-review.googlesource.com/813314
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524377}
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/core_idl_files.gni
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/DedicatedWorker.h
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.h
[add] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/RequestCredentials.idl
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/Worker.idl
[add] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/WorkerOptions.idl
[modify] https://crrev.com/90a9b1a33ff4056792f6c3d3100b97ba5d52f080/third_party/WebKit/Source/core/workers/WorkletOptions.idl

Project Member

Comment 16 by bugdroid1@chromium.org, Dec 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c219b34aa1bd13aee61fb7c168c006406961b0d5

commit c219b34aa1bd13aee61fb7c168c006406961b0d5
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Mon Dec 18 02:36:22 2017

Worker: Move implementation of the "fetch a module worker script graph" algorithm

This CL moves implementation of the "fetch a module worker script graph"
algorithm from WorkletGlobalScope to WorkerOrWorkletGlobalScope so that it can
be reused for module workers.

There is no behavioral change.

Bug: 680046
Change-Id: I7eba8ec1e1dc65396ec2aea8486b22fd1d829fa2
Reviewed-on: https://chromium-review.googlesource.com/826206
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524641}
[modify] https://crrev.com/c219b34aa1bd13aee61fb7c168c006406961b0d5/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.cpp
[modify] https://crrev.com/c219b34aa1bd13aee61fb7c168c006406961b0d5/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.h
[modify] https://crrev.com/c219b34aa1bd13aee61fb7c168c006406961b0d5/third_party/WebKit/Source/core/workers/WorkletGlobalScope.cpp

Project Member

Comment 17 by bugdroid1@chromium.org, Dec 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/83f4deb951699e8ef8c1f7432ede75ac5074139b

commit 83f4deb951699e8ef8c1f7432ede75ac5074139b
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Mon Dec 18 03:23:36 2017

Worker: Separate classic script evaluation from worker thread initialization

Before this CL, classic script evaluation is tied with worker thread
initialization. This is cumbersome for module scripts because module scripts are
fetched after a global scope is created and not ready during the initialization.
As a quickfix, it's bypassed for WorkletGlobalScope that is only the client of
module scripts on the worker thread for now (See the end of
WorkerThread::InitializeOnWorkerThread()).

For cleanup, this CL separates classic script evaluation from worker thread
initialization. If you want to evaluate classic scripts, you need to explictly
post a task after the worker thread initialization. This makes it easier to
switch classic script loading and module script loading in following CLs: if
you want to evaluate module scripts, you can just post a task for module script
evaluation.

Rough design doc of module scripts for Dedicated Worker:
https://docs.google.com/a/chromium.org/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit?usp=sharing

Bug: 680046
Change-Id: I7bf32051a8e423de65bb6b0d76164cb1540d3aa4
Reviewed-on: https://chromium-review.googlesource.com/822320
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524646}
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/exported/WebSharedWorkerImpl.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/DedicatedWorkerTest.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/ThreadedWorkletTest.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.h
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/WorkerThread.h
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/WorkerThreadTest.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/core/workers/WorkerThreadTestHelper.h
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletGlobalScopeTest.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletThreadTest.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScopeTest.cpp
[modify] https://crrev.com/83f4deb951699e8ef8c1f7432ede75ac5074139b/third_party/WebKit/Source/modules/webaudio/AudioWorkletThreadTest.cpp

Project Member

Comment 18 by bugdroid1@chromium.org, Dec 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/715a1c5f5b3dd2e40219c5457c15e62f4726a503

commit 715a1c5f5b3dd2e40219c5457c15e62f4726a503
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Dec 20 05:11:59 2017

Worker: Implement WorkerGlobalScope::ImportModuleScript()

This CL implements WorkerGlobalScope::ImportModuleScript() that imports module
scripts using WorkerModulatorImpl, and wires up DedicatedWorkerMessagingProxy
via WorkerThread.

Note that module workers are still not available because WorkerOptions is not
exposed on the ctor of Worker and WorkerModulatorImpl is not fully implemented
yet.

Design doc: https://docs.google.com/a/chromium.org/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit?usp=sharing

Bug: 680046
Change-Id: I0c616b7a1b79abb02c1085be356293510dd4c04b
Reviewed-on: https://chromium-review.googlesource.com/807675
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525270}
[modify] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[add] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.cpp
[add] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.h
[modify] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/715a1c5f5b3dd2e40219c5457c15e62f4726a503/third_party/WebKit/Source/core/workers/WorkerThread.h

Project Member

Comment 19 by bugdroid1@chromium.org, Dec 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/97725cce21f96a452be83861663af09f5315c45a

commit 97725cce21f96a452be83861663af09f5315c45a
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Dec 20 05:36:21 2017

Revert "Worker: Implement WorkerGlobalScope::ImportModuleScript()"

This reverts commit 715a1c5f5b3dd2e40219c5457c15e62f4726a503.

Reason for revert:
This causes compile failures on some bots.

Original change's description:
> Worker: Implement WorkerGlobalScope::ImportModuleScript()
> 
> This CL implements WorkerGlobalScope::ImportModuleScript() that imports module
> scripts using WorkerModulatorImpl, and wires up DedicatedWorkerMessagingProxy
> via WorkerThread.
> 
> Note that module workers are still not available because WorkerOptions is not
> exposed on the ctor of Worker and WorkerModulatorImpl is not fully implemented
> yet.
> 
> Design doc: https://docs.google.com/a/chromium.org/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit?usp=sharing
> 
> Bug: 680046
> Change-Id: I0c616b7a1b79abb02c1085be356293510dd4c04b
> Reviewed-on: https://chromium-review.googlesource.com/807675
> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
> Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
> Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#525270}

TBR=kinuko@chromium.org,kouhei@chromium.org,nhiroki@chromium.org

Change-Id: I253df9d13bbb8bc63cae7bb018fd10c4ee311d25
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 680046
Reviewed-on: https://chromium-review.googlesource.com/836187
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525273}
[modify] https://crrev.com/97725cce21f96a452be83861663af09f5315c45a/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/97725cce21f96a452be83861663af09f5315c45a/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/97725cce21f96a452be83861663af09f5315c45a/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/97725cce21f96a452be83861663af09f5315c45a/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[delete] https://crrev.com/3877cff09fb6ea29b4f01c30e75f404ed75cf4d4/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.cpp
[delete] https://crrev.com/3877cff09fb6ea29b4f01c30e75f404ed75cf4d4/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.h
[modify] https://crrev.com/97725cce21f96a452be83861663af09f5315c45a/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/97725cce21f96a452be83861663af09f5315c45a/third_party/WebKit/Source/core/workers/WorkerThread.h

Project Member

Comment 20 by bugdroid1@chromium.org, Dec 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc

commit 0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Thu Dec 21 05:18:03 2017

(Retry) Worker: Implement WorkerGlobalScope::ImportModuleScript()

The original CL was reverted by a following CL because of compile failures on
bots:
https://chromium-review.googlesource.com/c/chromium/src/+/836187

This CL fixes the failures by rebase. Also, this moves
ParseCredentialsMode() from anonymous namespace to static member of
DedicatedWorkerMessagingProxy to fix jumbo build failures because of function
name collision with ParseCredentialsMode() in Worklet.cpp.

===== Original CL description =====

This CL implements WorkerGlobalScope::ImportModuleScript() that imports module
scripts using WorkerModulatorImpl, and wires up DedicatedWorkerMessagingProxy
via WorkerThread.

Note that module workers are still not available because WorkerOptions is not
exposed on the ctor of Worker and WorkerModulatorImpl is not fully implemented
yet.

Design doc: https://docs.google.com/a/chromium.org/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit?usp=sharing

Bug: 680046
Change-Id: I2ec26bdeb526fa5925bb37adfa07fde0590b2a41
TBR: kouhei@chromium.org,kinuko@chromium.org
Reviewed-on: https://chromium-review.googlesource.com/836228
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#525619}
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.h
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[add] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.cpp
[add] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.h
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/0475cd4f157453ab3040e3dc5b7d1ceee73ad7fc/third_party/WebKit/Source/core/workers/WorkerThread.h

Project Member

Comment 21 by bugdroid1@chromium.org, Dec 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6909405cadf0750df9f7a1e57747dbfd38b7982b

commit 6909405cadf0750df9f7a1e57747dbfd38b7982b
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Dec 27 06:08:19 2017

Worker: Move EvaluateClassicScript() from WorkerOrWorkletGlobalScope to WorkerGlobalScope

For cleanup, this CL moves EvaluateClassicScript() used only by workers (not by
workelts) from WorkerOrWorkletGlobalScope to WorkerGlobalScope.

Bug: 680046
Change-Id: Ia4114bfd67c71462f8d8fe320c9c01361e59af26
Reviewed-on: https://chromium-review.googlesource.com/844402
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526211}
[modify] https://crrev.com/6909405cadf0750df9f7a1e57747dbfd38b7982b/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/6909405cadf0750df9f7a1e57747dbfd38b7982b/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[modify] https://crrev.com/6909405cadf0750df9f7a1e57747dbfd38b7982b/third_party/WebKit/Source/core/workers/WorkerOrWorkletGlobalScope.h
[modify] https://crrev.com/6909405cadf0750df9f7a1e57747dbfd38b7982b/third_party/WebKit/Source/core/workers/WorkerThread.cpp
[modify] https://crrev.com/6909405cadf0750df9f7a1e57747dbfd38b7982b/third_party/WebKit/Source/core/workers/WorkletGlobalScope.cpp
[modify] https://crrev.com/6909405cadf0750df9f7a1e57747dbfd38b7982b/third_party/WebKit/Source/core/workers/WorkletGlobalScope.h

Project Member

Comment 22 by bugdroid1@chromium.org, Dec 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8

commit e8b10a53a8c1cffc15853f75a96c0bbc50258bf8
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Thu Dec 28 03:54:20 2017

Worker: Clean up WorkerClients handling

Before this CL, WorkerClients is indirectly passed to GlobalScopeCreationParams
via MessagingProxy. For example, DedicatedWorker creates WorkerClients
and passes it to GlobalScopeCreationParams via DedicatedWorkerMessagingProxy.

This indirection is no longer necessary thanks to recent cleanups. This CL
makes DedicatedWorker etc directly pass WorkerClients to
GlobalScopeCreationParams and removes the indirection paths.

Bug: 680046
Change-Id: Ie20885f45961cb83503f041b68a2229f4c832f10
Reviewed-on: https://chromium-review.googlesource.com/832603
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#526269}
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/DedicatedWorker.h
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.h
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/DedicatedWorkerTest.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/ThreadedMessagingProxyBase.h
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.h
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/core/workers/ThreadedWorkletTest.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/modules/animationworklet/AnimationWorklet.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletMessagingProxy.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletMessagingProxy.h
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/modules/webaudio/AudioWorklet.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.cpp
[modify] https://crrev.com/e8b10a53a8c1cffc15853f75a96c0bbc50258bf8/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.h

Project Member

Comment 23 by bugdroid1@chromium.org, Mar 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3e01be57981803353b642197bc7ad5c276b8395f

commit 3e01be57981803353b642197bc7ad5c276b8395f
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed Mar 14 07:43:46 2018

Worker: Make worklets' module loading classes reusable for workers

As a preparation for module loading support for workers, this CL does mainly 2
things:

- This renames WorkletModuleScriptFetcher to WorkerOrWorkletModuleScriptFetcher,
  and WorkletModuleResponsesMapProxy to
  WorkerOrWorkletModuleFetchCoordinatorProxy. This enables workers can reuse
  worklets' module loading classes.

- This introduces WorkerOrWorkletModuleFetchCoordinator interface.
  Implementation of the interface is expected to fetch module scripts via
  DocumentModuleScriptFetcher, to manage inflight requests, and to notify
  completions of the requests to WorkerOrWorkletModuleScriptFetcher on the
  worker thread. For worklets, WorkletModuleResponsesMap inherits the interface.
  For workers, following CLs introduce a new class,
  WorkerModuleFetchCoordinator, because WorkletModuleResponsesMap have custom
  fetch logic for caching and it's not reusable for workers.

See the design doc for details:
https://docs.google.com/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit#heading=h.637avx8i5qtn

Bug: 680046
Change-Id: Iba7916bb9b5aefbc8c695ff9865bcbe756801412
Reviewed-on: https://chromium-review.googlesource.com/958801
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543026}
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/loader/BUILD.gn
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/loader/modulescript/ModuleScriptLoader.cpp
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/loader/modulescript/ModuleScriptLoaderTest.cpp
[add] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/loader/modulescript/WorkerOrWorkletModuleScriptFetcher.cpp
[add] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/loader/modulescript/WorkerOrWorkletModuleScriptFetcher.h
[delete] https://crrev.com/883ad990be2af1bc0e2111906d1d16b9cb7c6280/third_party/WebKit/Source/core/loader/modulescript/WorkletModuleScriptFetcher.cpp
[delete] https://crrev.com/883ad990be2af1bc0e2111906d1d16b9cb7c6280/third_party/WebKit/Source/core/loader/modulescript/WorkletModuleScriptFetcher.h
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/script/WorkletModulatorImpl.cpp
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[add] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkerOrWorkletModuleFetchCoordinator.h
[add] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkerOrWorkletModuleFetchCoordinatorProxy.cpp
[add] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkerOrWorkletModuleFetchCoordinatorProxy.h
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkletGlobalScope.cpp
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkletGlobalScope.h
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkletModuleResponsesMap.cpp
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkletModuleResponsesMap.h
[delete] https://crrev.com/883ad990be2af1bc0e2111906d1d16b9cb7c6280/third_party/WebKit/Source/core/workers/WorkletModuleResponsesMapProxy.cpp
[delete] https://crrev.com/883ad990be2af1bc0e2111906d1d16b9cb7c6280/third_party/WebKit/Source/core/workers/WorkletModuleResponsesMapProxy.h
[modify] https://crrev.com/3e01be57981803353b642197bc7ad5c276b8395f/third_party/WebKit/Source/core/workers/WorkletModuleResponsesMapTest.cpp

Project Member

Comment 24 by bugdroid1@chromium.org, Mar 15

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d48c836981d25b93de02a5117c07bebd67e3cdcf

commit d48c836981d25b93de02a5117c07bebd67e3cdcf
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Thu Mar 15 10:44:56 2018

Worklet: Pass WorkerOrWorkletModuleFetchCoordinator via GlobalScopeCreationParams

This is a preparation CL for implementing module loading on workers.

WorkerOrWorkletModuleFetchCoordinator (strictly speaking,
WorkletModuleResponsesMap) is a key class for module loading on worklets. It's
primarily owned by Worklet class on the main thread, and its reference is passed
to the WorkletGlobalScope on the worklet context thread before module loading
happens.

Before this CL, the reference is passed from Worklet to WorkletGlobalScope when
worklet.addModule() is called in the JS context. This path is specific for
worklets and not called for workers.

To pass the reference in a common way, this CL passes the reference with
GlobalScopeCreationParams struct that is commonly used for creating a new global
scope.

Design doc:
https://docs.google.com/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit#heading=h.637avx8i5qtn

Bug: 680046
Change-Id: I6dde98ef83c5fb6ae7898c63bdbecd3ebfbd36dd
Reviewed-on: https://chromium-review.googlesource.com/961747
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543340}
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/exported/WebSharedWorkerImpl.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/layout/custom/LayoutWorklet.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/layout/custom/LayoutWorkletGlobalScopeProxy.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/layout/custom/LayoutWorkletGlobalScopeProxy.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/loader/modulescript/ModuleScriptLoaderTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/DedicatedWorkerTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/GlobalScopeCreationParams.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/GlobalScopeCreationParams.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/MainThreadWorkletGlobalScope.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/MainThreadWorkletTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/ThreadedWorkletGlobalScope.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/ThreadedWorkletObjectProxy.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/ThreadedWorkletObjectProxy.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/ThreadedWorkletTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/WorkerThreadTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/WorkerThreadTestHelper.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/Worklet.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/Worklet.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/WorkletGlobalScope.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/WorkletGlobalScope.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/core/workers/WorkletGlobalScopeProxy.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/animationworklet/AnimationWorklet.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletGlobalScopeTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/animationworklet/AnimationWorkletThreadTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/csspaint/PaintWorklet.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/csspaint/PaintWorkletGlobalScopeProxy.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/csspaint/PaintWorkletGlobalScopeProxy.h
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/webaudio/AudioWorklet.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScopeTest.cpp
[modify] https://crrev.com/d48c836981d25b93de02a5117c07bebd67e3cdcf/third_party/WebKit/Source/modules/webaudio/AudioWorkletThreadTest.cpp

Project Member

Comment 25 by bugdroid1@chromium.org, Mar 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b305873b18b1598e6f557d0d94e9a3fd3ca113d8

commit b305873b18b1598e6f557d0d94e9a3fd3ca113d8
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Fri Mar 16 08:43:49 2018

Worker: Rename WorkerScriptLoader to WorkerClassicScriptLoader

This CL renames WorkerScriptLoader to WorkerClassicScriptLoader for clarifying
the loader is used for classic scripts, not for module scripts.

Bug: 680046
Change-Id: I037de4772e8323e4176989427fa6c2529c7fdab0
Reviewed-on: https://chromium-review.googlesource.com/965662
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543651}
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/content/renderer/shared_worker/embedded_shared_worker_stub.cc
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/exported/WebSharedWorkerImpl.cpp
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/exported/WebSharedWorkerImpl.h
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/DedicatedWorker.h
[rename] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/WorkerClassicScriptLoader.cpp
[rename] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/WorkerClassicScriptLoader.h
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.cpp
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/modules/exported/WebEmbeddedWorkerImpl.h
[modify] https://crrev.com/b305873b18b1598e6f557d0d94e9a3fd3ca113d8/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp

Project Member

Comment 26 by bugdroid1@chromium.org, Mar 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/347092291b208b8e4e1d70ca0079931817c94736

commit 347092291b208b8e4e1d70ca0079931817c94736
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Mon Mar 19 09:16:46 2018

Worker: Make sure to post messages after dedicated worker script evaluation

This is a preparation CL for module scripts on workers.

Before this CL, postMessage() requests during dedicated worker startup are
queued until a worker thread is created and a thread initialization task is
posted to the worker thread. This works for classic scripts because classic
script evaluation happens synchronously after thread initialization and there is
no timing to interleave the message tasks. However, this is not applicable for
module scripts because module script evaluation happens asynchronously on the
worker thread. This allows posted tasks run before script evaluation and results
in dropouts of the Message events.

This CL makes sure to post message tasks after script evaluation. ObjectProxy on
the worker thread notifies MessagingProxy on the main thread of the completion
of script evaluation, and then MessagingProxy posts queued messages.

Bug: 680046
Change-Id: I7cb32cc8911a7bbe9e5d83e5f7fceb333bb3125a
Reviewed-on: https://chromium-review.googlesource.com/967914
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543996}
[modify] https://crrev.com/347092291b208b8e4e1d70ca0079931817c94736/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.cpp
[modify] https://crrev.com/347092291b208b8e4e1d70ca0079931817c94736/third_party/WebKit/Source/core/workers/DedicatedWorkerMessagingProxy.h
[modify] https://crrev.com/347092291b208b8e4e1d70ca0079931817c94736/third_party/WebKit/Source/core/workers/DedicatedWorkerObjectProxy.cpp
[modify] https://crrev.com/347092291b208b8e4e1d70ca0079931817c94736/third_party/WebKit/Source/core/workers/DedicatedWorkerObjectProxy.h

Project Member

Comment 27 by bugdroid1@chromium.org, Mar 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1

commit efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Mon Mar 19 10:09:40 2018

Worker: Implement WorkerModuleFetchCoordinator

This CL implements WorkerModuleFetchCoordinator that actually initiates module
loading on the main thread in response to requests from
WorkerOrWorkletModuleFetcher on the worker thread.

Design doc:
https://docs.google.com/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit#heading=h.637avx8i5qtn

Bug: 680046
Change-Id: Ib845662436356b2966ed987a88be33ed5dc970f8
Reviewed-on: https://chromium-review.googlesource.com/963874
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544002}
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/BUILD.gn
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/script/WorkerModulatorImpl.cpp
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/BUILD.gn
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/DedicatedWorker.h
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/ThreadedWorkletGlobalScope.cpp
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h
[add] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerModuleFetchCoordinator.cpp
[add] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerModuleFetchCoordinator.h
[add] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerModuleFetchCoordinatorTest.cpp
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerOrWorkletModuleFetchCoordinator.h
[modify] https://crrev.com/efd26e7d0f2fb3e4e37fb79770a8b2c0fd10fed1/third_party/WebKit/Source/core/workers/WorkerOrWorkletModuleFetchCoordinatorProxy.cpp

Project Member

Comment 28 by bugdroid1@chromium.org, Mar 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f

commit 4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Mon Mar 19 15:53:51 2018

Worker: Rename WorkerReportingProxy::*WorkerScript to ClassicScript for cleanup

For consistency with ModuleScript, this CL renames...
- WillEvaluateWorkerScript to WillEvaluateClassicScript,
- DidEvaluateWorkerScript to DidEvaluateClassicScript, and
- WillEvaluateImportedScript to WillEvaluateImportedClassicScript.


Bug: 680046
Change-Id: I9120f1ed9d3923d901f32801d551a61bafba04ee
Reviewed-on: https://chromium-review.googlesource.com/967627
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544049}
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/content/renderer/service_worker/service_worker_context_client.cc
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/content/renderer/service_worker/service_worker_context_client.h
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/content/renderer/service_worker/service_worker_context_client_unittest.cc
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/DedicatedWorkerObjectProxy.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/DedicatedWorkerObjectProxy.h
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/SharedWorkerReportingProxy.h
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/WorkerModuleTreeClient.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/WorkerReportingProxy.h
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/WorkerThreadTest.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/core/workers/WorkletModuleTreeClient.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.h
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScopeProxy.h
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/Source/modules/serviceworkers/WebEmbeddedWorkerImplTest.cpp
[modify] https://crrev.com/4e0010a51f8b14f2ddd6b93b355718eb8bc1df6f/third_party/WebKit/public/web/modules/serviceworker/WebServiceWorkerContextClient.h

Project Member

Comment 29 by bugdroid1@chromium.org, Mar 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/22234d1d82f8a98f1a55abbd70d4a8098fbd63ce

commit 22234d1d82f8a98f1a55abbd70d4a8098fbd63ce
Author: Daniel Bratell <bratell@opera.com>
Date: Mon Mar 19 18:40:40 2018

Followup WorkerModuleFetchCoordinater, move test code to shared file

Both the new and old code use an identical ClientImpl test class.
In jumbo builds those end up in the same translation unit and
it won't compile. This patch moves the class to a shared file
WorkerFetchTestHelper.h

Bug: 680046
Change-Id: Iabe58f2f2c93e4d77fb36c8c454952af994d302c
Reviewed-on: https://chromium-review.googlesource.com/968363
Commit-Queue: Daniel Bratell <bratell@opera.com>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544077}
[modify] https://crrev.com/22234d1d82f8a98f1a55abbd70d4a8098fbd63ce/third_party/WebKit/Source/core/BUILD.gn
[add] https://crrev.com/22234d1d82f8a98f1a55abbd70d4a8098fbd63ce/third_party/WebKit/Source/core/workers/WorkerFetchTestHelper.h
[modify] https://crrev.com/22234d1d82f8a98f1a55abbd70d4a8098fbd63ce/third_party/WebKit/Source/core/workers/WorkerModuleFetchCoordinatorTest.cpp
[modify] https://crrev.com/22234d1d82f8a98f1a55abbd70d4a8098fbd63ce/third_party/WebKit/Source/core/workers/WorkletModuleResponsesMapTest.cpp

Project Member

Comment 30 by bugdroid1@chromium.org, Mar 22

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/03594010f2c5ab22f4408198222e1bb615a439d4

commit 03594010f2c5ab22f4408198222e1bb615a439d4
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Thu Mar 22 05:45:27 2018

Worker: Support ES Modules on DedicatedWorker behind the runtime flag

This CL supports ES Modules on DedicatedWorker behind the ModuleDedicatedWorker
flag and adds WPT tests.

With the flag, you can specify 'type' option on the constructor of
DedicatedWorker (i.e., new Worker) to start a dedicated worker as a module
script. On DedicatedWorkerGlobalScope, static import is available, but dynamic
import() hasn't been implemented yet.

Bug: 680046
Change-Id: I3aca350228ec07be7884c7a2eb8cd351e7fd6b6e
Reviewed-on: https://chromium-review.googlesource.com/967908
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#544983}
[add] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-options-type.html
[add] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-static-import.html
[add] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/nested-static-import-worker.js
[add] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/post-message-on-load-worker.js
[add] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/static-import-worker.js
[modify] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp
[modify] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/Source/core/workers/DedicatedWorker.h
[modify] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/Source/core/workers/Worker.idl
[modify] https://crrev.com/03594010f2c5ab22f4408198222e1bb615a439d4/third_party/WebKit/Source/platform/runtime_enabled_features.json5

Labels: -Pri-3 Pri-2
Summary: Implement ES Modules for dedicated workers (was: Implement "module" workers)
Let me narrow down the scope of this issue to dedicated workers. I'll file separate issues for shared workers and service workers.
After the commit on c#30, you can try ES Modules on dedicated workers with the '--enable-experimental-web-platform-features' flag. Note that this feature is still under development and hasn't been tested well yet :)
Re c#31:

issue 824646 for shared workers
issue 824647 for service workers
Project Member

Comment 34 by bugdroid1@chromium.org, Mar 26

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/80ffb027f5ce6de5e7494cceb7e00298e67d7b65

commit 80ffb027f5ce6de5e7494cceb7e00298e67d7b65
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Mon Mar 26 09:20:12 2018

Worker: Allow dynamic import() on DedicatedWorkerGlobalScope

This CL allows dynamic import() on DedicatedWorkerGlobalScope and adds WPT
tests. Note that ES Modules on DedicatedWorker is an experimental feature behind
the runtime flag.

Design doc:
https://docs.google.com/document/d/1IMGWAK7Wq37mLehwkbysNRBBnhQBo3z2MbYyMkViEnY/edit#heading=h.637avx8i5qtn

Bug: 680046
Change-Id: I1f8fed5c319aab634f96bcfabeb3c95f5dc7d9a7
Reviewed-on: https://chromium-review.googlesource.com/970127
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Makoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#545748}
[add] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import.html
[delete] https://crrev.com/9ceadee11c6644629d54ef346fea694cbe882184/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-static-import.html
[add] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/dynamic-import-and-then-static-import-worker.js
[add] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/dynamic-import-worker.js
[add] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/nested-dynamic-import-worker.js
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/nested-static-import-worker.js
[add] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/static-import-and-then-dynamic-import-worker.js
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/static-import-worker.js
[delete] https://crrev.com/9ceadee11c6644629d54ef346fea694cbe882184/third_party/WebKit/LayoutTests/fast/workers/chromium/worker-dynamic-import.html
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/DocumentModulatorImpl.cpp
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/DocumentModulatorImpl.h
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/ModulatorImplBase.cpp
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/ModulatorImplBase.h
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/WorkerModulatorImpl.cpp
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/WorkerModulatorImpl.h
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/WorkletModulatorImpl.cpp
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/script/WorkletModulatorImpl.h
[modify] https://crrev.com/80ffb027f5ce6de5e7494cceb7e00298e67d7b65/third_party/WebKit/Source/core/workers/DedicatedWorker.cpp

Blockedon: 831420
Project Member

Comment 37 by bugdroid1@chromium.org, May 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d55e4f5d286fd91812cfff5b09f1f57d88aee307

commit d55e4f5d286fd91812cfff5b09f1f57d88aee307
Author: Nate Chapin <japhet@chromium.org>
Date: Thu May 10 22:41:01 2018

Load modules off-main-thread from workers (but not worklets)

Bug: 680046
Change-Id: I46ffe62d8bb9982a717b49b31ed6be7ae62e4baf

TBR=kinuko@chromium.org

Change-Id: I46ffe62d8bb9982a717b49b31ed6be7ae62e4baf
Reviewed-on: https://chromium-review.googlesource.com/1035618
Commit-Queue: Nate Chapin <japhet@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Tsuyoshi Horo <horo@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#557707}
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/chrome/renderer/content_settings_observer.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/chrome/renderer/content_settings_observer.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/chrome/renderer/worker_content_settings_client.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/chrome/renderer/worker_content_settings_client.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/BUILD.gn
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/exported/web_shared_worker_impl.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/loader/modulescript/document_module_script_fetcher.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/loader/modulescript/worker_or_worklet_module_script_fetcher.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/loader/worker_fetch_context.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/script/worker_modulator_impl.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/BUILD.gn
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/dedicated_worker.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/dedicated_worker.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/dedicated_worker_test.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/global_scope_creation_params.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/global_scope_creation_params.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_content_settings_client.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_content_settings_client.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_fetch_test_helper.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_global_scope.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_global_scope.h
[delete] https://crrev.com/47ac4d8bbf2bffd53c00cbb7e683b9dd5084f4e4/third_party/blink/renderer/core/workers/worker_module_fetch_coordinator.cc
[delete] https://crrev.com/47ac4d8bbf2bffd53c00cbb7e683b9dd5084f4e4/third_party/blink/renderer/core/workers/worker_module_fetch_coordinator.h
[delete] https://crrev.com/47ac4d8bbf2bffd53c00cbb7e683b9dd5084f4e4/third_party/blink/renderer/core/workers/worker_module_fetch_coordinator_test.cc
[delete] https://crrev.com/47ac4d8bbf2bffd53c00cbb7e683b9dd5084f4e4/third_party/blink/renderer/core/workers/worker_or_worklet_module_fetch_coordinator.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_or_worklet_module_fetch_coordinator_proxy.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_or_worklet_module_fetch_coordinator_proxy.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_thread_test.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worker_thread_test_helper.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worklet_global_scope.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worklet_module_responses_map.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/core/workers/worklet_module_responses_map.h
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/modules/exported/web_embedded_worker_impl.cc
[modify] https://crrev.com/d55e4f5d286fd91812cfff5b09f1f57d88aee307/third_party/blink/renderer/platform/loader/fetch/resource_fetcher.cc

Cc: hirosh...@chromium.org japhet@chromium.org
Interestingly, after the off-the-main-thread module loading patch is landed (see c#37), module workers start fetching the top-level module script with a referrer that is the same with the request's URL. Before the patch, the referrer was the parent document's URL. I'll investigate it next week.
Blockedon: 842553
Re c#38: Filed a separate  issue 842553 
Blockedon: 842566
Blockedon: 843031
Blockedon: 843875
Project Member

Comment 45 by bugdroid1@chromium.org, May 23

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515

commit eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Wed May 23 00:25:43 2018

Worker: Add service worker interception tests for module loading on dedicated workers

This CL adds both web-platform-tests and conventional layout tests because the
current Chrome implementation is not spec-compatible in terms of service worker
scope matcing with dedicated workers (see https://crbug.com/731599). The layout
tests will be removed after the issue is fixed.

Bug: 680046
Change-Id: If214bd2f647ee5e7257ae134a870cf1e4ddac608
Reviewed-on: https://chromium-review.googlesource.com/1059979
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#560851}
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/dedicated-worker-service-worker-interception.https-expected.txt
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/dedicated-worker-service-worker-interception.https.html
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/resources/service-worker-interception-dynamic-import-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/resources/service-worker-interception-network-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/resources/service-worker-interception-service-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/external/wpt/service-workers/service-worker/resources/service-worker-interception-static-import-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/http/tests/serviceworker/dedicated-worker-service-worker-interception.html
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/new-worker-window.html
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/service-worker-interception-dynamic-import-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/service-worker-interception-network-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/service-worker-interception-service-worker.js
[add] https://crrev.com/eb416fb7b43cf37b0657b9f12e2a4dfc65c9d515/third_party/WebKit/LayoutTests/http/tests/serviceworker/resources/service-worker-interception-static-import-worker.js

Project Member

Comment 47 by bugdroid1@chromium.org, May 29

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/610407096586f474c58dc05c7ed5c051384fcd27

commit 610407096586f474c58dc05c7ed5c051384fcd27
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Tue May 29 09:52:13 2018

Worker: Clean up tests for module imports on dedicated workers using "export"

This is a clean-up CL for existing tests, and doesn't add new tests.

Before this CL, the tests work as follows: the top-level script imports modules,
each module postMessage('LOADED') to the page on load, and the page waits for
them all. This pattern is easy to write but not easy to read because it's not
clear which modules are expected to be imported. Also, this pattern checks only
the number of imported modules, so a broken test, for example, importing a wrong
module can unexpectedly pass.

To improve the situation, this CL stops using the pattern and instead make tests
propagate the list of imported modules from child scripts to the top-level
script. The top-level script sends the list to the page as a representative.
This is less error-prone and clarifies which modules are expected to be
imported.

Change-Id: I08c4569b6dc69a1ecff6701df932e28dda6dc42a
Bug: 680046
Reviewed-on: https://chromium-review.googlesource.com/1075843
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562380}
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import-failure.html
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import.html
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/dynamic-import-and-then-static-import-worker.js
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/dynamic-import-worker.js
[add] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/export-on-dynamic-import-script.js
[add] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/export-on-load-script.js
[add] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/export-on-static-import-script.js
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/nested-dynamic-import-worker.js
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/nested-static-import-worker.js
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/static-import-and-then-dynamic-import-worker.js
[modify] https://crrev.com/610407096586f474c58dc05c7ed5c051384fcd27/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/static-import-worker.js

Project Member

Comment 48 by bugdroid1@chromium.org, May 29

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/729b3b5ad5bd17598a90fd32b710748894671a88

commit 729b3b5ad5bd17598a90fd32b710748894671a88
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Tue May 29 13:32:06 2018

Worker: Add a test for eval(import())

Bug: 680046
Change-Id: Ice3a4adcac4be7b255e263a57aa65609f45f30dd
Reviewed-on: https://chromium-review.googlesource.com/1072225
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Reviewed-by: Matt Falkenhagen <falken@chromium.org>
Cr-Commit-Position: refs/heads/master@{#562404}
[modify] https://crrev.com/729b3b5ad5bd17598a90fd32b710748894671a88/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import.html
[add] https://crrev.com/729b3b5ad5bd17598a90fd32b710748894671a88/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/eval-dynamic-import-worker.js

Project Member

Comment 49 by bugdroid1@chromium.org, Jun 1

Project Member

Comment 51 by bugdroid1@chromium.org, Jun 29

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43

commit b28d58921b305e9f92bb8b8944bfc9f6f8d49c43
Author: Hiroki Nakagawa <nhiroki@chromium.org>
Date: Fri Jun 29 03:54:58 2018

Worker: Add WPTs for module loading with blob, data, and file URLs

Bug: 680046
Change-Id: I8b3894bfbc8df999952fa82e8f2b3abb4088f434
Reviewed-on: https://chromium-review.googlesource.com/1114566
Reviewed-by: Kouhei Ueno <kouhei@chromium.org>
Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571378}
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import-blob-url.any.js
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import-blob-url.any.worker-expected.txt
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import-data-url.any.js
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import-data-url.any.worker-expected.txt
[modify] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import-failure.html
[modify] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/dedicated-worker-import.any.js
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/export-on-dynamic-import-script.js.headers
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/export-on-static-import-script.js.headers
[add] https://crrev.com/b28d58921b305e9f92bb8b8944bfc9f6f8d49c43/third_party/WebKit/LayoutTests/external/wpt/workers/modules/resources/import-test-cases.js

Comment 52 by falken@chromium.org, Today (23 hours ago)

Blockedon: 865432

Sign in to add a comment