Devtools protocol for DirectSocket #3 [chromium/src : main]

2 views
Skip to first unread message

Vlad Krot (Gerrit)

unread,
Apr 25, 2025, 12:41:19 PM4/25/25
to Andrey Kosyakov, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
Attention needed from Andrey Kosyakov and Dmitry Gozman

Vlad Krot voted Commit-Queue+1

Commit-Queue+1
Open in Gerrit

Related details

Attention is currently required from:
  • Andrey Kosyakov
  • Dmitry Gozman
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Review
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
Gerrit-Change-Number: 6490229
Gerrit-PatchSet: 2
Gerrit-Owner: Vlad Krot <vk...@google.com>
Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
Gerrit-Reviewer: Vlad Krot <vk...@google.com>
Gerrit-CC: Andrew Rayskiy <green...@google.com>
Gerrit-CC: Simon Hangl <sim...@google.com>
Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
Gerrit-Comment-Date: Fri, 25 Apr 2025 16:41:10 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Andrey Kosyakov (Gerrit)

unread,
Apr 28, 2025, 2:41:06 PM4/28/25
to Vlad Krot, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
Attention needed from Dmitry Gozman and Vlad Krot

Andrey Kosyakov added 10 comments

File third_party/blink/renderer/core/inspector/inspector_network_agent.cc
Line 2249, Patchset 2 (Latest): GetFrontend()->directUDPSocketChunkReceived(
Andrey Kosyakov . unresolved

Let's make sure actual chunk sent/received messages are opt-in (ditto for TCP) -- just add an experimental `optional boolean reportDirectSocketTraffic` to `Network.enable`.

File third_party/blink/renderer/modules/direct_sockets/udp_readable_stream_wrapper.cc
Line 188, Patchset 2 (Latest): std::unique_ptr<protocol::Network::DirectUDPMessage> probe_message =
Andrey Kosyakov . unresolved

Let's avoid non-trivial conversions that are performed solely for instrumentation in case no devtools are present -- you probably don't need extra overhead for the majority of users here. As a minimum, we should pass data to the probe as span and convert to binary in the agent. Or you can avoid other conversions as well by making it conditional on `CoreProbeSink::HasInspectorNetworkAgents()`, [like this](https://source.chromium.org/search?q=-f:gen%2F%20hasinspector&sq=&ss=chromium%2Fchromium%2Fsrc).

The latter is not without downsides, as it incorporates some knowledge of how probes are routed into your code, whereas it really belongs to `core_probes.json5`, but given these are mostly single-purpose probes this would be fine, and you already are passing protocol domain specific types there.

Ideally we just want to pass a bunch of simple types to probes and let agents build protocol messages, so there's little overhead in case no instrumentation is enabled.

File third_party/blink/renderer/modules/direct_sockets/udp_writable_stream_wrapper.cc
Line 192, Patchset 2 (Latest): probe::DirectUDPSocketChunkError(*GetScriptState(), inspector_id_, message);
Andrey Kosyakov . unresolved

There are just local API errors that are appropriately reported to user as JS exceptions (which in turn are [also reported via Runtime domain in v8](https://source.chromium.org/chromium/chromium/src/+/main:third_party/devtools-frontend/src/node_modules/devtools-protocol/pdl/js_protocol.pdl;l=1768?)) -- is there additional value in reporting this via a domain-specific event? We don't usually do this for other APIs.

File third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/resources/udp-socket-success.php
Line 39, Patchset 2 (Latest): let bytesEchoed = 0;
Andrey Kosyakov . unresolved

unused?

Line 53, Patchset 2 (Latest): const connectedSendLoop = (async () => {
Andrey Kosyakov . unresolved

`connectedSendLoop` unused?

Line 71, Patchset 2 (Latest): for (let index = 0; index < data.length; index++) {
Andrey Kosyakov . unresolved

Ahem...

Line 79, Patchset 2 (Latest): await connectedReadLoop;
Andrey Kosyakov . unresolved

Let's ditch this and just inline the function.

File third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/udp-socket-success.js
Line 12, Patchset 2 (Latest): ' options:' + JSON.stringify(createdEvent.params.options, null, 3))
Andrey Kosyakov . unresolved

Just `testRunner.log(createdEvent.params.options, "options: ")`, please, it's usually preferred to JSON.stringify() since it knows how to stabilize output.

Line 62, Patchset 2 (Latest): url = url.match(/\/[^\/]+$/);
Andrey Kosyakov . unresolved

nit: `const match = url.match(...)` (avoid redefining input parameters)

Line 65, Patchset 2 (Latest): return url;
Andrey Kosyakov . unresolved

So what exactly are we returning here?

Open in Gerrit

Related details

Attention is currently required from:
  • Dmitry Gozman
  • Vlad Krot
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 2
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Vlad Krot <vk...@google.com>
    Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Comment-Date: Mon, 28 Apr 2025 18:40:57 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vlad Krot (Gerrit)

    unread,
    Apr 29, 2025, 6:28:22 AM4/29/25
    to Andrey Kosyakov, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
    Attention needed from Dmitry Gozman and Vlad Krot

    Vlad Krot added 10 comments

    File third_party/blink/renderer/core/inspector/inspector_network_agent.cc
    Line 2249, Patchset 2: GetFrontend()->directUDPSocketChunkReceived(
    Andrey Kosyakov . unresolved

    Let's make sure actual chunk sent/received messages are opt-in (ditto for TCP) -- just add an experimental `optional boolean reportDirectSocketTraffic` to `Network.enable`.

    Vlad Krot

    How will it be different from just checking enabled variable in InspectorNetworkAgent?
    When reportDirectSocketTraffic will be true?

    File third_party/blink/renderer/modules/direct_sockets/udp_readable_stream_wrapper.cc
    Line 188, Patchset 2: std::unique_ptr<protocol::Network::DirectUDPMessage> probe_message =
    Andrey Kosyakov . resolved

    Let's avoid non-trivial conversions that are performed solely for instrumentation in case no devtools are present -- you probably don't need extra overhead for the majority of users here. As a minimum, we should pass data to the probe as span and convert to binary in the agent. Or you can avoid other conversions as well by making it conditional on `CoreProbeSink::HasInspectorNetworkAgents()`, [like this](https://source.chromium.org/search?q=-f:gen%2F%20hasinspector&sq=&ss=chromium%2Fchromium%2Fsrc).

    The latter is not without downsides, as it incorporates some knowledge of how probes are routed into your code, whereas it really belongs to `core_probes.json5`, but given these are mostly single-purpose probes this would be fine, and you already are passing protocol domain specific types there.

    Ideally we just want to pass a bunch of simple types to probes and let agents build protocol messages, so there's little overhead in case no instrumentation is enabled.

    Vlad Krot

    Done

    File third_party/blink/renderer/modules/direct_sockets/udp_writable_stream_wrapper.cc
    Line 192, Patchset 2: probe::DirectUDPSocketChunkError(*GetScriptState(), inspector_id_, message);
    Andrey Kosyakov . resolved

    There are just local API errors that are appropriately reported to user as JS exceptions (which in turn are [also reported via Runtime domain in v8](https://source.chromium.org/chromium/chromium/src/+/main:third_party/devtools-frontend/src/node_modules/devtools-protocol/pdl/js_protocol.pdl;l=1768?)) -- is there additional value in reporting this via a domain-specific event? We don't usually do this for other APIs.

    Vlad Krot

    Yes, they are also reported as js exceptions. Good catch, removing it.

    File third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/resources/udp-socket-success.php
    Line 39, Patchset 2: let bytesEchoed = 0;
    Andrey Kosyakov . resolved

    unused?

    Vlad Krot

    Yes, thanks for spotting.

    Line 53, Patchset 2: const connectedSendLoop = (async () => {
    Andrey Kosyakov . resolved

    `connectedSendLoop` unused?

    Vlad Krot

    Done

    Line 71, Patchset 2: for (let index = 0; index < data.length; index++) {
    Andrey Kosyakov . resolved

    Ahem...

    Vlad Krot

    Done

    Line 79, Patchset 2: await connectedReadLoop;
    Andrey Kosyakov . resolved

    Let's ditch this and just inline the function.

    Vlad Krot

    Done

    File third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/udp-socket-success.js
    Line 12, Patchset 2: ' options:' + JSON.stringify(createdEvent.params.options, null, 3))
    Andrey Kosyakov . resolved

    Just `testRunner.log(createdEvent.params.options, "options: ")`, please, it's usually preferred to JSON.stringify() since it knows how to stabilize output.

    Vlad Krot

    Done

    Line 62, Patchset 2: url = url.match(/\/[^\/]+$/);
    Andrey Kosyakov . resolved

    nit: `const match = url.match(...)` (avoid redefining input parameters)

    Vlad Krot

    Done

    Line 65, Patchset 2: return url;
    Andrey Kosyakov . resolved

    So what exactly are we returning here?

    Vlad Krot

    I think it was a mistake. Renamed the variable and return original at the end.

    Gerrit-Comment-Date: Tue, 29 Apr 2025 10:28:09 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Andrey Kosyakov (Gerrit)

    unread,
    Apr 29, 2025, 5:55:19 PM4/29/25
    to Vlad Krot, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
    Attention needed from Dmitry Gozman and Vlad Krot

    Andrey Kosyakov added 1 comment

    File third_party/blink/renderer/core/inspector/inspector_network_agent.cc
    Line 2249, Patchset 2: GetFrontend()->directUDPSocketChunkReceived(
    Andrey Kosyakov . unresolved

    Let's make sure actual chunk sent/received messages are opt-in (ditto for TCP) -- just add an experimental `optional boolean reportDirectSocketTraffic` to `Network.enable`.

    Vlad Krot

    How will it be different from just checking enabled variable in InspectorNetworkAgent?
    When reportDirectSocketTraffic will be true?

    Andrey Kosyakov

    We just want an explicit opt-in for clients (devtools front-end is not the only one). Most other clients won't care about the traffic and would probably not like the overhead. So this would be an additional parameter to `Network.enable` CDP command, and the traffic would only be reported to clients that expressed their interest by setting it to true.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Dmitry Gozman
    • Vlad Krot
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 5
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Vlad Krot <vk...@google.com>
    Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Comment-Date: Tue, 29 Apr 2025 21:55:09 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Vlad Krot <vk...@google.com>
    Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vlad Krot (Gerrit)

    unread,
    Apr 30, 2025, 6:20:30 AM4/30/25
    to Andrey Kosyakov, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
    Attention needed from Andrey Kosyakov and Dmitry Gozman

    Vlad Krot added 1 comment

    File third_party/blink/renderer/core/inspector/inspector_network_agent.cc
    Line 2249, Patchset 2: GetFrontend()->directUDPSocketChunkReceived(
    Andrey Kosyakov . resolved

    Let's make sure actual chunk sent/received messages are opt-in (ditto for TCP) -- just add an experimental `optional boolean reportDirectSocketTraffic` to `Network.enable`.

    Vlad Krot

    How will it be different from just checking enabled variable in InspectorNetworkAgent?
    When reportDirectSocketTraffic will be true?

    Andrey Kosyakov

    We just want an explicit opt-in for clients (devtools front-end is not the only one). Most other clients won't care about the traffic and would probably not like the overhead. So this would be an additional parameter to `Network.enable` CDP command, and the traffic would only be reported to clients that expressed their interest by setting it to true.

    Vlad Krot

    Thanks for explanation. Done.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Andrey Kosyakov
    • Dmitry Gozman
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Review
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 5
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Attention: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Comment-Date: Wed, 30 Apr 2025 10:20:16 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Andrey Kosyakov (Gerrit)

    unread,
    Apr 30, 2025, 12:30:39 PM4/30/25
    to Vlad Krot, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
    Attention needed from Dmitry Gozman and Vlad Krot

    Andrey Kosyakov voted and added 2 comments

    Votes added by Andrey Kosyakov

    Code-Review+1

    2 comments

    Patchset-level comments
    File-level comment, Patchset 6 (Latest):
    Andrey Kosyakov . resolved

    Thanks, lgtm!

    File third_party/blink/public/devtools_protocol/browser_protocol.pdl
    Line 7007, Patchset 6 (Latest): optional boolean reportDirectSocketTraffic
    Andrey Kosyakov . unresolved

    `experimental`, please!

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Dmitry Gozman
    • Vlad Krot
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 6
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Vlad Krot <vk...@google.com>
    Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Comment-Date: Wed, 30 Apr 2025 16:30:26 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vlad Krot (Gerrit)

    unread,
    May 5, 2025, 5:42:16 AM5/5/25
    to Andrey Kosyakov, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
    Attention needed from Dmitry Gozman

    Vlad Krot added 1 comment

    File third_party/blink/public/devtools_protocol/browser_protocol.pdl
    Line 7007, Patchset 6: optional boolean reportDirectSocketTraffic
    Andrey Kosyakov . resolved

    `experimental`, please!

    Vlad Krot

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Dmitry Gozman
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 6
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Comment-Date: Mon, 05 May 2025 09:42:05 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Andrey Kosyakov <ca...@chromium.org>
    satisfied_requirement
    open
    diffy

    Vlad Krot (Gerrit)

    unread,
    May 5, 2025, 5:43:22 AM5/5/25
    to Andrey Kosyakov, Dmitry Gozman, Chromium LUCI CQ, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org
    Attention needed from Dmitry Gozman

    Vlad Krot voted Commit-Queue+2

    Commit-Queue+2
    Open in Gerrit

    Related details

    Attention is currently required from:
    • Dmitry Gozman
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement satisfiedCode-Review
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 7
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    Gerrit-CC: Simon Hangl <sim...@google.com>
    Gerrit-Attention: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Comment-Date: Mon, 05 May 2025 09:43:11 +0000
    Gerrit-HasComments: No
    Gerrit-Has-Labels: Yes
    satisfied_requirement
    open
    diffy

    Chromium LUCI CQ (Gerrit)

    unread,
    May 5, 2025, 6:33:45 AM5/5/25
    to Vlad Krot, Andrey Kosyakov, Dmitry Gozman, chromium...@chromium.org, devtools...@chromium.org, Andrew Rayskiy, Simon Hangl, pwa-com...@google.com, blink-re...@chromium.org, blink-...@chromium.org, devtools-re...@chromium.org, rmcelra...@chromium.org

    Chromium LUCI CQ submitted the change with unreviewed changes

    Unreviewed changes

    6 is the latest approved patch-set.
    The change was submitted with unreviewed changes in the following files:

    ```
    The name of the file: third_party/blink/public/devtools_protocol/browser_protocol.pdl
    Insertions: 1, Deletions: 1.

    @@ -7004,7 +7004,7 @@
    # Longest post body size (in bytes) that would be included in requestWillBeSent notification
    optional integer maxPostDataSize
    # Whether DirectSocket chunk send/receive events should be reported.
    - optional boolean reportDirectSocketTraffic
    + experimental optional boolean reportDirectSocketTraffic

    # Returns all browser cookies. Depending on the backend support, will return detailed cookie
    # information in the `cookies` field.
    ```

    Change information

    Commit message:
    Devtools  protocol for DirectSocket #3

    Send direct socket UDP events to Chrome Devtools Protocol. Later, the UI
    will be added to devtools-frontend repository.

    The previous 2 CL's:
    https://chromium-review.googlesource.com/c/chromium/src/+/6308994
    https://chromium-review.googlesource.com/c/chromium/src/+/6434437

    The previous CL for tests:
    https://chromium-review.googlesource.com/c/chromium/src/+/6458767
    Bug: 358327120
    Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Low-Coverage-Reason: COVERAGE_UNDERREPORTED
    Reviewed-by: Andrey Kosyakov <ca...@chromium.org>
    Commit-Queue: Vlad Krot <vk...@google.com>
    Cr-Commit-Position: refs/heads/main@{#1455602}
    Files:
    • M content/browser/devtools/protocol/network_handler.cc
    • M content/browser/devtools/protocol/network_handler.h
    • M third_party/blink/public/devtools_protocol/browser_protocol.pdl
    • M third_party/blink/renderer/core/inspector/inspector_network_agent.cc
    • M third_party/blink/renderer/core/inspector/inspector_network_agent.h
    • M third_party/blink/renderer/core/probe/core_probes.h
    • M third_party/blink/renderer/core/probe/core_probes.json5
    • M third_party/blink/renderer/core/probe/core_probes.pidl
    • M third_party/blink/renderer/modules/direct_sockets/socket.cc
    • M third_party/blink/renderer/modules/direct_sockets/socket.h
    • M third_party/blink/renderer/modules/direct_sockets/tcp_socket.cc
    • M third_party/blink/renderer/modules/direct_sockets/tcp_writable_stream_wrapper.cc
    • M third_party/blink/renderer/modules/direct_sockets/tcp_writable_stream_wrapper.h
    • M third_party/blink/renderer/modules/direct_sockets/udp_readable_stream_wrapper.cc
    • M third_party/blink/renderer/modules/direct_sockets/udp_readable_stream_wrapper.h
    • M third_party/blink/renderer/modules/direct_sockets/udp_readable_stream_wrapper_unittest.cc
    • M third_party/blink/renderer/modules/direct_sockets/udp_socket.cc
    • M third_party/blink/renderer/modules/direct_sockets/udp_socket.h
    • M third_party/blink/renderer/modules/direct_sockets/udp_writable_stream_wrapper.cc
    • M third_party/blink/renderer/modules/direct_sockets/udp_writable_stream_wrapper.h
    • M third_party/blink/renderer/modules/direct_sockets/udp_writable_stream_wrapper_unittest.cc
    • R third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/resources/socket-default.php
    • M third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/resources/tcp-socket-success.php
    • A third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/resources/udp-socket-success.php
    • M third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/tcp-socket-abort.js
    • D third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/tcp-socket-chunk-error-expected.txt
    • D third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/tcp-socket-chunk-error.js
    • M third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/tcp-socket-success-expected.txt
    • M third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/tcp-socket-success.js
    • A third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/udp-socket-abort-expected.txt
    • A third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/udp-socket-abort.js
    • A third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/udp-socket-success-expected.txt
    • A third_party/blink/web_tests/http/tests/inspector-protocol/network/direct-sockets/udp-socket-success.js
    Change size: L
    Delta: 33 files changed, 611 insertions(+), 140 deletions(-)
    Branch: refs/heads/main
    Submit Requirements:
    • requirement satisfiedCode-Review: +1 by Andrey Kosyakov
    Open in Gerrit
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: merged
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: I664e57d4258c60a8b975c1c769df7ff74dc74d8d
    Gerrit-Change-Number: 6490229
    Gerrit-PatchSet: 8
    Gerrit-Owner: Vlad Krot <vk...@google.com>
    Gerrit-Reviewer: Andrey Kosyakov <ca...@chromium.org>
    Gerrit-Reviewer: Chromium LUCI CQ <chromiu...@luci-project-accounts.iam.gserviceaccount.com>
    Gerrit-Reviewer: Dmitry Gozman <dgo...@chromium.org>
    Gerrit-Reviewer: Vlad Krot <vk...@google.com>
    Gerrit-CC: Andrew Rayskiy <green...@google.com>
    open
    diffy
    satisfied_requirement
    Reply all
    Reply to author
    Forward
    0 new messages