On Friday, November 15, 2024 at 9:14:09 AM UTC+9 Chromestatus wrote:

Contact emails yyanagis...@google.com 

Explainer None 

Specification https://w3c.github.io/ServiceWorker/#control-and-
use-worker-client 

Summary 

According to https://w3c.github.io/ServiceWorker/#control-and-
use-worker-client, workers should inherit controllers for the blob URL. 
However, existing code allows only dedicated workers to inherit the 
controller, and shared workers do not inherit the controller. This is the 
fix to make Chromium behavior adjust to the specification. An enterprise 
policy SharedWorkerBlobURLFixEnabled is available to control this feature.


Blink component Blink>Workers 
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWorkers> 

TAG review None 

TAG review status Not applicable 

Risks 


Interoperability and Compatibility 

This is a change to make the Chromium behavior aligned with the 
specification, there should not be an interoperability issue. However, 
there is a compatibility issue from the past Chromium. If a blob URL is 
used for a SharedWorker script and a controller for the URL is mattered, 
there is a behavior change because this change makes a controller 
inherited. An enterprise policy was added to allow enterprise customers to 
preserve the past Chromium behavior.

Do you have any metrics on how many page loads this change might impact? An 
enterprise policy seems like a good idea, but if the number of page loads 
is high, we might want to consider a deprecation trial or similar mechanism.
 



*Gecko*: No signal


Can you ask Gecko for signals? I am especially curious why they haven't 
updated to match the specification.
 



*WebKit*: Shipped/Shipping 

*Web developers*: No signals 

*Other signals*: 

Ergonomics 

n/a


Security 

Since this is adjusting Chromium behavior to specification, there should 
not be a security risk from a specification perspective. From the 
implementation perspective, this change simply inherits existing 
controller. There should not be any additional security risks with this 
change.


WebView application risks 

Does this intent deprecate or change behavior of existing APIs, such that 
it has potentially high risk for Android WebView-based applications?

Since SharedWorker is not supported on Android yet, there is no risk on 
Android WebView.


Debuggability 

n/a


Will this feature be supported on all six Blink platforms (Windows, Mac, 
Linux, ChromeOS, Android, and Android WebView)? No 

Since SharedWorker is not supported in Android yet, the feature also does 
not affect to Android.


Is this feature fully tested by web-platform-tests 
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
? Yes 

https://wpt.fyi/results/service-workers/service-worker/local-url-inherit-
controller.https.html Same-origin blob URL sharedworker should inherit 
service worker controller. Same-origin blob URL sharedworker should 
intercept fetch(). The tests ensure a ServiceWorkerController is inherited. 
Due to crbug.com/40364838, Chromium does not pass the former test.


Flag name on about://flags None 

Finch feature name SharedWorkerBlobURLFix 

Requires code in //chrome? False 

Tracking bug https://crbug.com/324939068 

Estimated milestones Shipping on desktop 133 

Anticipated spec changes 

Open questions about a feature may be a source of future web compat or 
interop issues. Please list open issues (e.g. links to known github issues 
in the project for the feature specification) whose resolution may 
introduce web compat/interop risk (e.g., changing to naming or structure of 
the API in a non-backward-compatible way).
None 

Link to entry on the Chrome Platform Status https://chromestatus.com/
feature/5137897664806912?gate=5147843735322624 

This intent message was generated by Chrome Platform Status 
<https://chromestatus.com>. 

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/bbe4d87d-5461-4bd3-ade9-4d916ad5fc99n%40chromium.org.

Reply via email to