Issue metadata
Sign in to add a comment
|
Remove SWReadFromCacheJob and migrate them into SWInstalledScriptsManager |
||||||||||||||||||||||
Issue descriptionSWReadFromCacheJob is for reading installed scripts via ResourceLoader path, but we've already implemented InstalledScriptsManager. However, currently it can provide the same installed script only once and it falls back to the ResourceLoader path when the script has been taken from InstalledScriptsManager. For removing SWReadFromCacheJob, we need to implement 1) something which can replace the ResourceLoader path like ScriptURLLoader, or 2) additional InstalledScriptsManager path for it to ask to the browser for sending the script again.
,
Sep 15 2017
,
Sep 15 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c37741f3c09b7e8fbfd80b119165ac2ad883e0f2 commit c37741f3c09b7e8fbfd80b119165ac2ad883e0f2 Author: Hiroki Nakagawa <nhiroki@chromium.org> Date: Fri Sep 15 11:53:52 2017 S13nServiceWorker: Store fetched scripts into the service worker script storage This CL implements ServiceWorkerScriptURLLoader used for loading scripts for a new (installing) service worker. It fetches the script (the main script or imported script) from network, and forwards the response to a service worker in a renderer process, while also writing the response into the service worker script storage. See the class-level comments on ServiceWorkerScriptURLLoader for more detailed sequence. Some security checks and error handling will be implemented in following CLs (e.g., MIME check). This disables ServiceWorkerVersionBrowserV8CacheTest.Restart in content_browsertests and some layout tests. Regarding the browser test, it needs to read installed scripts, but the mechanism for that hasn't been implemented yet (see https://crbug.com/756312 ). Bug: 748415 , 756312 Change-Id: I388ea13083347eb276f168a9eef4efadcb069e59 Reviewed-on: https://chromium-review.googlesource.com/618434 Commit-Queue: Hiroki Nakagawa <nhiroki@chromium.org> Reviewed-by: Matt Falkenhagen <falken@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Reviewed-by: Makoto Shimazu <shimazu@chromium.org> Cr-Commit-Position: refs/heads/master@{#502227} [modify] https://crrev.com/c37741f3c09b7e8fbfd80b119165ac2ad883e0f2/content/browser/service_worker/service_worker_script_url_loader.cc [modify] https://crrev.com/c37741f3c09b7e8fbfd80b119165ac2ad883e0f2/content/browser/service_worker/service_worker_script_url_loader.h [modify] https://crrev.com/c37741f3c09b7e8fbfd80b119165ac2ad883e0f2/content/browser/service_worker/service_worker_script_url_loader_unittest.cc [modify] https://crrev.com/c37741f3c09b7e8fbfd80b119165ac2ad883e0f2/testing/buildbot/filters/mojo.fyi.network_content_browsertests.filter [modify] https://crrev.com/c37741f3c09b7e8fbfd80b119165ac2ad883e0f2/third_party/WebKit/LayoutTests/FlagExpectations/enable-features=NetworkService
,
Oct 4 2017
,
Oct 18 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/16e3475cf4b1bafbdaf905f188827df3ded45148 commit 16e3475cf4b1bafbdaf905f188827df3ded45148 Author: Makoto Shimazu <shimazu@chromium.org> Date: Wed Oct 18 07:33:32 2017 ServiceWorkerInstalledScriptsManager handles all installed scripts As a step of removing SWReadFromCacheJob, this patch adds a path to get the same installed scripts multiple times. WebServiceWorkerInstalledScriptsManager asks the browser if the script has already been taken, and the browser side counterpart (SWInstalledScriptsSender) sends the script after streaming all of scripts. This is not optimal for sites which importing the same script multiple times, but it simplifies the code. Bug: 756312 Change-Id: I8d8c03fe8488367b5aa1b8d2c02e13a5f25e676e Reviewed-on: https://chromium-review.googlesource.com/697165 Commit-Queue: Makoto Shimazu <shimazu@chromium.org> Reviewed-by: Matt Falkenhagen <falken@chromium.org> Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Cr-Commit-Position: refs/heads/master@{#509712} [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/browser/service_worker/embedded_worker_instance_unittest.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/browser/service_worker/service_worker_installed_scripts_sender.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/browser/service_worker/service_worker_installed_scripts_sender.h [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/browser/service_worker/service_worker_installed_scripts_sender_unittest.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/browser/service_worker/service_worker_version.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/common/service_worker/service_worker_installed_scripts_manager.mojom [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/renderer/service_worker/thread_safe_script_container.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/renderer/service_worker/thread_safe_script_container.h [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/renderer/service_worker/thread_safe_script_container_unittest.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl.h [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/content/renderer/service_worker/web_service_worker_installed_scripts_manager_impl_unittest.cc [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/third_party/WebKit/Source/core/workers/InstalledScriptsManager.h [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/third_party/WebKit/Source/core/workers/WorkerGlobalScope.cpp [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/third_party/WebKit/Source/core/workers/WorkerGlobalScope.h [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerGlobalScope.cpp [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerInstalledScriptsManager.cpp [modify] https://crrev.com/16e3475cf4b1bafbdaf905f188827df3ded45148/third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerInstalledScriptsManager.h
,
Oct 19 2017
Next step would be removing SWReadFromCacheJob. Before doing this, I need to remove ServiceWorkerScriptStreaming flag since it cannot be disabled after removing SWReadFromCacheJob. I'd like to do it in M65.
,
Oct 23 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/67b99c4778015fe0d1408e50f24ee8dbdcea68b6 commit 67b99c4778015fe0d1408e50f24ee8dbdcea68b6 Author: Makoto Shimazu <shimazu@chromium.org> Date: Mon Oct 23 10:27:04 2017 Replace std::queue by base::queue in ServiceWorkerInstalledScriptsSender This is a follow up patch of crrev.com/c/697165. This follows the guidance in https://chromium.googlesource.com/chromium/src/+/master/base/containers/README.md#deque Bug: 756312 Change-Id: I360bcc3019adcfc9656dc6df2f9a0f9764fc2724 Reviewed-on: https://chromium-review.googlesource.com/732809 Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org> Commit-Queue: Makoto Shimazu <shimazu@chromium.org> Cr-Commit-Position: refs/heads/master@{#510756} [modify] https://crrev.com/67b99c4778015fe0d1408e50f24ee8dbdcea68b6/content/browser/service_worker/service_worker_installed_scripts_sender.cc [modify] https://crrev.com/67b99c4778015fe0d1408e50f24ee8dbdcea68b6/content/browser/service_worker/service_worker_installed_scripts_sender.h
,
Dec 1 2017
The NextAction date has arrived: 2017-12-01
,
Dec 19 2017
I'd like to wait it until M64 goes to stable.
,
Jan 30 2018
,
Mar 8 2018
It seems to me this is about dupe importScripts, and the current status is: installed service worker: SWInstalledScriptsManager handles it non-installed service worker, S13nSW enabled: SWInstalledScriptLoader handles it non-installed service worker, S13nSW disabled: SWReadFromCacheJob is used So it seems to me SWReadFromCacheJob is only used in non-S13nSW case, and we can remove it after S13nSW ships? So maybe WontFix this?
,
May 28 2018
Thanks! You are right. Let's mark this as WONTFIX. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by shimazu@chromium.org
, Aug 17 2017