Good point Daniel! I'll go update the chrome status entry.
Here's how we'll proceed:
1. We'll deprecate the method with `DeprecateAs` in the IDL file
2. Then we'll add a blink runtime feature off by default that hides the
method with `RuntimeEnabled` to remove it
3. And finally we can remove it completely in the IDL file.

On Wed, Sep 11, 2024 at 4:56 PM Daniel Bratell <bratel...@gmail.com> wrote:

> It's a bit scary, but given the analysis, the risk seems contained. You
> listed None as Finch flag though. I think it's policy, and prudent, to make
> changes like this protected by a flag so that it can be undone if we're
> wrong.
>
> /Daniel
> On 2024-09-10 14:09, Yoav Weiss (@Shopify) wrote:
>
> OK, LGTM1 then :D
>
> On Tue, Sep 10, 2024 at 2:01 PM François Beaufort <fbeauf...@google.com>
> wrote:
>
>> I've checked with a Chromium build that removes the requestAdapterInfo()
>> method and the websites I've tried are not broken.
>> The content of the string sent for analytics is simply different but the
>> POST request still happens properly.
>>
>> On Tue, Sep 10, 2024 at 12:32 PM Yoav Weiss (@Shopify) <
>> yoavwe...@chromium.org> wrote:
>>
>>> Wait, I was a bit quick on that LGTM (excited about the removal in
>>> WebKit, I guess).
>>> You're saying that our latest data is that this API is used in 0.41% of
>>> requests. What happens to that usage (which seems concentrated to a few 3P
>>> scripts) when the API is removed? What does breakage in practice look like?
>>>
>>> On Tuesday, September 10, 2024 at 12:29:16 PM UTC+2 Yoav Weiss wrote:
>>>
>>>> LGTM1
>>>>
>>>> On Tuesday, September 10, 2024 at 8:55:36 AM UTC+2 François Beaufort
>>>> wrote:
>>>>
>>>>> https://github.com/gpuweb/gpuweb/pull/4662#issuecomment-2338982367
>>>>> indicates they have just removed it in WebKit as expected.
>>>>>
>>>>>
>>>>> On Mon, Sep 9, 2024 at 5:48 PM François Beaufort <fbeauf...@google.com>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Sep 9, 2024 at 5:47 PM Mike Taylor <miketa...@chromium.org>
>>>>>> wrote:
>>>>>>
>>>>>>> On 9/9/24 11:45 AM, François Beaufort wrote:
>>>>>>>
>>>>>>> On Mon, Sep 9, 2024 at 5:39 PM Mike Taylor <miketa...@chromium.org>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> On 9/9/24 10:38 AM, 'François Beaufort' via blink-dev wrote:
>>>>>>>>
>>>>>>>> Contact emails fbeauf...@google.com
>>>>>>>>
>>>>>>>> Explainer None
>>>>>>>>
>>>>>>>> Specification https://gpuweb.github.io/gpuweb/#dom-gpuadapter-info
>>>>>>>>
>>>>>>>> Summary
>>>>>>>>
>>>>>>>> The WebGPU WG decided it was impractical for requestAdapterInfo()
>>>>>>>> to trigger a permission prompt so they’ve removed that option and 
>>>>>>>> replaced
>>>>>>>> it with the GPUAdapter info attribute so that web developers can get 
>>>>>>>> the
>>>>>>>> same GPUAdapterInfo value synchronously this time. See the previous 
>>>>>>>> intent
>>>>>>>> to ship at
>>>>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/eZqMmX7q_bA/m/euMLVMpxAgAJ
>>>>>>>>
>>>>>>>>
>>>>>>>> Blink component Blink>WebGPU
>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU>
>>>>>>>>
>>>>>>>> Motivation
>>>>>>>>
>>>>>>>> The requestAdapterInfo() asynchronous method in WebGPU is redundant
>>>>>>>> because developers can already get GPUAdapterInfo synchronously using 
>>>>>>>> the
>>>>>>>> GPUAdapter info attribute. Hence, it should be removed.
>>>>>>>>
>>>>>>>> A search for the string "requestAdapterInfo" in HTTPArchive yielded
>>>>>>>> no results.
>>>>>>>>
>>>>>>>> According to
>>>>>>>> https://chromestatus.com/metrics/feature/timeline/popularity/4977,
>>>>>>>> the requestAdapterInfo() method accounted for approximately 0.41% of 
>>>>>>>> page
>>>>>>>> loads in September 2024.
>>>>>>>>
>>>>>>>> Chrome UKMs helped us in identifying the most popular websites
>>>>>>>> using the WebGPU requestAdapterInfo() method: - Twitch: The team has 
>>>>>>>> been
>>>>>>>> contacted and has indicated that they will update their code. - 
>>>>>>>> Dynatrace:
>>>>>>>> Used by the vast majority of those websites for analytics, they have 
>>>>>>>> been
>>>>>>>> made aware of this deprecation.
>>>>>>>>
>>>>>>>>
>>>>>>>> Initial public proposal None
>>>>>>>>
>>>>>>>> TAG review None
>>>>>>>>
>>>>>>>> TAG review status Not applicable
>>>>>>>>
>>>>>>>> Risks
>>>>>>>>
>>>>>>>>
>>>>>>>> Interoperability and Compatibility
>>>>>>>>
>>>>>>>> When WebGPU eventually launches in Safari and Firefox, websites
>>>>>>>> will be able to get GPUAdapterInfo values exclusively through the
>>>>>>>> standardized GPUAdapter info attribute. We anticipate Safari and 
>>>>>>>> Firefox
>>>>>>>> will soon support WebGPU, but won't include this non-standard method.
>>>>>>>> Therefore, the sooner Chromium implements the Deprecate and Remove 
>>>>>>>> process,
>>>>>>>> the less likely it is that content will work in Chromium but not in 
>>>>>>>> other
>>>>>>>> browsers. In Chromium-based browsers, as the requestAdapterInfo()
>>>>>>>> asynchronous method returned a promise, websites that followed best
>>>>>>>> practices were already catching rejected promises. Web developers have 
>>>>>>>> been
>>>>>>>> made aware of this change in July 2024 at
>>>>>>>> https://developer.chrome.com/blog/new-in-webgpu-127?hl=en#gpuadapter_info_attribute.
>>>>>>>> They can use the following one-line code during the transition period:
>>>>>>>> const info = adapter.info || await adapter.requestAdapterInfo();
>>>>>>>>
>>>>>>>> I know that WebKit !== Safari, but I do see they have
>>>>>>>> requestAdapterInfo
>>>>>>>> <https://github.com/WebKit/WebKit/blob/e5b033ce5afcc666cf85ec75d53179dbd75006df/Source/WebCore/Modules/WebGPU/GPUAdapter.idl#L41>
>>>>>>>> today. Do we have any sense of what their plans are there (maybe a
>>>>>>>> standards position could clarify that)?
>>>>>>>>
>>>>>>>
>>>>>>> As you can see in
>>>>>>> https://github.com/gpuweb/gpuweb/pull/4662#issuecomment-2141279713,
>>>>>>> they re-added temporarily requestAdapterInfo() at the time to avoid
>>>>>>> breaking websites that didn't make the move yet.
>>>>>>> FYI, I've updated Apache TVM used by WebLLM to use adapter.info in
>>>>>>> apache/tvm#17051 <https://github.com/apache/tvm/pull/17051>.
>>>>>>>
>>>>>>> Cool - does that mean WebKit is willing to remove it now (or shortly
>>>>>>> after we do)?
>>>>>>>
>>>>>>
>>>>>> I believe they do but I'll let them respond to that:
>>>>>> https://github.com/gpuweb/gpuweb/pull/4662#issuecomment-2338474559
>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> *Gecko*: No signal
>>>>>>>>
>>>>>>>> *WebKit*: No signal
>>>>>>>>
>>>>>>>> *Web developers*: No signals
>>>>>>>>
>>>>>>>> *Other signals*:
>>>>>>>>
>>>>>>>> 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?
>>>>>>>>
>>>>>>>> None
>>>>>>>>
>>>>>>>>
>>>>>>>> Debuggability
>>>>>>>>
>>>>>>>> None
>>>>>>>>
>>>>>>>>
>>>>>>>> Is this feature fully tested by web-platform-tests
>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>>>> ? No
>>>>>>>>
>>>>>>>> Flag name on chrome://flags None
>>>>>>>>
>>>>>>>> Finch feature name None
>>>>>>>>
>>>>>>>> Non-finch justification None
>>>>>>>>
>>>>>>>> Requires code in //chrome? False
>>>>>>>>
>>>>>>>> Estimated milestones
>>>>>>>>
>>>>>>>> No milestones specified
>>>>>>>>
>>>>>>>>
>>>>>>>> Link to entry on the Chrome Platform Status
>>>>>>>> https://chromestatus.com/feature/5140787340509184?gate=5110989125844992
>>>>>>>>
>>>>>>>> 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 on the web visit
>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KohE-NU%2B0bAsWzgaNLUCPGCqBr%2BH3jpoY58yGK-frwOg%40mail.gmail.com
>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KohE-NU%2B0bAsWzgaNLUCPGCqBr%2BH3jpoY58yGK-frwOg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>>
>>>>>>>> --
> 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 on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohS%2Bor7cp5TfwDyo2F1TkwMyyDacvnL9jFv%2Bsq4xpZhy5cg%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohS%2Bor7cp5TfwDyo2F1TkwMyyDacvnL9jFv%2Bsq4xpZhy5cg%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
>

-- 
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 on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KwcC5ysArPY5fw-1Z%2BTOGw460BiunJBL9f9pG6aSQCUQ%40mail.gmail.com.

Reply via email to