diff --git a/changelog.md b/changelog.md index 1a996bcb4b..ace979182a 100644 --- a/changelog.md +++ b/changelog.md @@ -1,7 +1,97 @@ +## Roll protocol to r1302984 — _2024-05-18T04:26:58.000Z_ +###### Diff: [`82ed3df...962a801`](https://github.com/ChromeDevTools/devtools-protocol/compare/82ed3df...962a801) + +```diff +@@ browser_protocol.pdl:8710 @@ domain Page + # If set, the script will be injected into all frames of the inspected page after reload. + # Argument will be ignored if reloading dataURL origin. + optional string scriptToEvaluateOnLoad ++ # If set, an error will be thrown if the target page's main frame's ++ # loader id does not match the provided id. This prevents accidentally ++ # reloading an unintended target in case there's a racing navigation. ++ experimental optional Network.LoaderId loaderId + + # Deprecated, please use removeScriptToEvaluateOnNewDocument instead. + experimental deprecated command removeScriptToEvaluateOnLoad +diff --git a/pdl/js_protocol.pdl b/pdl/js_protocol.pdl +index ee14676..8dad9c9 100644 +--- a/pdl/js_protocol.pdl ++++ b/pdl/js_protocol.pdl +@@ -1297,10 +1297,6 @@ domain Runtime + # Id of an execution context. + type ExecutionContextId extends integer + +- # Id of an execution context that is unique across processes +- # (unlike ExecutionContextId). +- type ExecutionContextUniqueId extends string +- + # Description of an isolated world. + type ExecutionContextDescription extends object + properties +@@ -1314,7 +1310,7 @@ domain Runtime + # A system-unique execution context identifier. Unlike the id, this is unique across + # multiple processes, so can be reliably used to identify specific context while backend + # performs a cross-process navigation. +- experimental ExecutionContextUniqueId uniqueId ++ experimental string uniqueId + # Embedder-specific auxiliary data likely matching {isDefault: boolean, type: 'default'|'isolated'|'worker', frameId: string} + optional object auxData + +@@ -1675,8 +1671,7 @@ domain Runtime + # If specified, the binding would only be exposed to the specified + # execution context. If omitted and `executionContextName` is not set, + # the binding is exposed to all execution contexts of the target. +- # This parameter is mutually exclusive with `executionContextName` +- # and `executionContextUniqueId`. ++ # This parameter is mutually exclusive with `executionContextName`. + # Deprecated in favor of `executionContextName` due to an unclear use case + # and bugs in implementation (crbug.com/1169639). `executionContextId` will be + # removed in the future. +@@ -1685,12 +1680,8 @@ domain Runtime + # matching name, even for contexts created after the binding is added. + # See also `ExecutionContext.name` and `worldName` parameter to + # `Page.addScriptToEvaluateOnNewDocument`. +- # This parameter is mutually exclusive with `executionContextId` +- # and `executionContextUniqueId`. ++ # This parameter is mutually exclusive with `executionContextId`. + optional string executionContextName +- # This parameter is mutually exclusive with `executionContextId` +- # and `executionContextName`. +- experimental optional ExecutionContextUniqueId executionContextUniqueId + + # This method does not remove binding function from global object but + # unsubscribes current runtime agent from Runtime.bindingCalled notifications. +@@ -1717,7 +1708,6 @@ domain Runtime + string payload + # Identifier of the context where the call was made. + ExecutionContextId executionContextId +- experimental ExecutionContextUniqueId executionContextUniqueId + + # Issued when console API was called. + event consoleAPICalled +@@ -1746,7 +1736,6 @@ domain Runtime + array of RemoteObject args + # Identifier of the context where the call was made. + ExecutionContextId executionContextId +- experimental ExecutionContextUniqueId executionContextUniqueId + # Call timestamp. + Timestamp timestamp + # Stack trace captured when the call was made. The async stack chain is automatically reported for +@@ -1785,7 +1774,7 @@ domain Runtime + # Id of the destroyed context + deprecated ExecutionContextId executionContextId + # Unique Id of the destroyed context +- experimental ExecutionContextUniqueId executionContextUniqueId ++ experimental string executionContextUniqueId + + # Issued when all executionContexts were cleared in browser + event executionContextsCleared +``` + ## Roll protocol to r1302401 — _2024-05-17T04:26:51.000Z_ -###### Diff: [`f8def09...c379fdb`](https://github.com/ChromeDevTools/devtools-protocol/compare/f8def09...c379fdb) +###### Diff: [`f8def09...82ed3df`](https://github.com/ChromeDevTools/devtools-protocol/compare/f8def09...82ed3df) ```diff @@ browser_protocol.pdl:849 @@ experimental domain Audits @@ -11853,27 +11943,4 @@ index 09c420e..bd277eb 100644 BackForwardCacheDisabled RelatedActiveContentsExist HTTPStatusNotOK -``` - -## Roll protocol to r963043 — _2022-01-25T17:15:34.000Z_ -###### Diff: [`398dc33...4d3be9f`](https://github.com/ChromeDevTools/devtools-protocol/compare/398dc33...4d3be9f) - -```diff -@@ browser_protocol.pdl:8658 @@ experimental domain Storage - properties - string ownerOrigin - string name -- number expirationTime -+ Network.TimeSinceEpoch expirationTime - string joiningOrigin - optional string biddingUrl - optional string biddingWasmHelperUrl -@@ -8814,6 +8814,7 @@ experimental domain Storage - # One of the interest groups was accessed by the associated page. - event interestGroupAccessed - parameters -+ Network.TimeSinceEpoch accessTime - InterestGroupAccessType type - string ownerOrigin - string name ``` \ No newline at end of file diff --git a/json/browser_protocol.json b/json/browser_protocol.json index 59bb47c5cc..10f72fd8c7 100644 --- a/json/browser_protocol.json +++ b/json/browser_protocol.json @@ -18893,6 +18893,13 @@ "description": "If set, the script will be injected into all frames of the inspected page after reload.\nArgument will be ignored if reloading dataURL origin.", "optional": true, "type": "string" + }, + { + "name": "loaderId", + "description": "If set, an error will be thrown if the target page's main frame's\nloader id does not match the provided id. This prevents accidentally\nreloading an unintended target in case there's a racing navigation.", + "experimental": true, + "optional": true, + "$ref": "Network.LoaderId" } ] }, diff --git a/json/js_protocol.json b/json/js_protocol.json index 2f9f49eece..d2207ea53f 100644 --- a/json/js_protocol.json +++ b/json/js_protocol.json @@ -2675,11 +2675,6 @@ "description": "Id of an execution context.", "type": "integer" }, - { - "id": "ExecutionContextUniqueId", - "description": "Id of an execution context that is unique across processes\n(unlike ExecutionContextId).", - "type": "string" - }, { "id": "ExecutionContextDescription", "description": "Description of an isolated world.", @@ -2704,7 +2699,7 @@ "name": "uniqueId", "description": "A system-unique execution context identifier. Unlike the id, this is unique across\nmultiple processes, so can be reliably used to identify specific context while backend\nperforms a cross-process navigation.", "experimental": true, - "$ref": "ExecutionContextUniqueId" + "type": "string" }, { "name": "auxData", @@ -3478,7 +3473,7 @@ }, { "name": "executionContextId", - "description": "If specified, the binding would only be exposed to the specified\nexecution context. If omitted and `executionContextName` is not set,\nthe binding is exposed to all execution contexts of the target.\nThis parameter is mutually exclusive with `executionContextName`\nand `executionContextUniqueId`.\nDeprecated in favor of `executionContextName` due to an unclear use case\nand bugs in implementation (crbug.com/1169639). `executionContextId` will be\nremoved in the future.", + "description": "If specified, the binding would only be exposed to the specified\nexecution context. If omitted and `executionContextName` is not set,\nthe binding is exposed to all execution contexts of the target.\nThis parameter is mutually exclusive with `executionContextName`.\nDeprecated in favor of `executionContextName` due to an unclear use case\nand bugs in implementation (crbug.com/1169639). `executionContextId` will be\nremoved in the future.", "experimental": true, "deprecated": true, "optional": true, @@ -3486,16 +3481,9 @@ }, { "name": "executionContextName", - "description": "If specified, the binding is exposed to the executionContext with\nmatching name, even for contexts created after the binding is added.\nSee also `ExecutionContext.name` and `worldName` parameter to\n`Page.addScriptToEvaluateOnNewDocument`.\nThis parameter is mutually exclusive with `executionContextId`\nand `executionContextUniqueId`.", + "description": "If specified, the binding is exposed to the executionContext with\nmatching name, even for contexts created after the binding is added.\nSee also `ExecutionContext.name` and `worldName` parameter to\n`Page.addScriptToEvaluateOnNewDocument`.\nThis parameter is mutually exclusive with `executionContextId`.", "optional": true, "type": "string" - }, - { - "name": "executionContextUniqueId", - "description": "This parameter is mutually exclusive with `executionContextId`\nand `executionContextName`.", - "experimental": true, - "optional": true, - "$ref": "ExecutionContextUniqueId" } ] }, @@ -3547,11 +3535,6 @@ "name": "executionContextId", "description": "Identifier of the context where the call was made.", "$ref": "ExecutionContextId" - }, - { - "name": "executionContextUniqueId", - "experimental": true, - "$ref": "ExecutionContextUniqueId" } ] }, @@ -3597,11 +3580,6 @@ "description": "Identifier of the context where the call was made.", "$ref": "ExecutionContextId" }, - { - "name": "executionContextUniqueId", - "experimental": true, - "$ref": "ExecutionContextUniqueId" - }, { "name": "timestamp", "description": "Call timestamp.", @@ -3678,7 +3656,7 @@ "name": "executionContextUniqueId", "description": "Unique Id of the destroyed context", "experimental": true, - "$ref": "ExecutionContextUniqueId" + "type": "string" } ] }, diff --git a/package.json b/package.json index eee6a77c2f..5ee439e5d4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "devtools-protocol", - "version": "0.0.1302401", + "version": "0.0.1302984", "description": "The Chrome DevTools Protocol JSON", "repository": "https://github.com/ChromeDevTools/devtools-protocol", "author": "The Chromium Authors", diff --git a/pdl/browser_protocol.pdl b/pdl/browser_protocol.pdl index 99e588cb0d..25db146fe1 100644 --- a/pdl/browser_protocol.pdl +++ b/pdl/browser_protocol.pdl @@ -8710,6 +8710,10 @@ domain Page # If set, the script will be injected into all frames of the inspected page after reload. # Argument will be ignored if reloading dataURL origin. optional string scriptToEvaluateOnLoad + # If set, an error will be thrown if the target page's main frame's + # loader id does not match the provided id. This prevents accidentally + # reloading an unintended target in case there's a racing navigation. + experimental optional Network.LoaderId loaderId # Deprecated, please use removeScriptToEvaluateOnNewDocument instead. experimental deprecated command removeScriptToEvaluateOnLoad diff --git a/pdl/js_protocol.pdl b/pdl/js_protocol.pdl index ee14676c78..8dad9c98de 100644 --- a/pdl/js_protocol.pdl +++ b/pdl/js_protocol.pdl @@ -1297,10 +1297,6 @@ domain Runtime # Id of an execution context. type ExecutionContextId extends integer - # Id of an execution context that is unique across processes - # (unlike ExecutionContextId). - type ExecutionContextUniqueId extends string - # Description of an isolated world. type ExecutionContextDescription extends object properties @@ -1314,7 +1310,7 @@ domain Runtime # A system-unique execution context identifier. Unlike the id, this is unique across # multiple processes, so can be reliably used to identify specific context while backend # performs a cross-process navigation. - experimental ExecutionContextUniqueId uniqueId + experimental string uniqueId # Embedder-specific auxiliary data likely matching {isDefault: boolean, type: 'default'|'isolated'|'worker', frameId: string} optional object auxData @@ -1675,8 +1671,7 @@ domain Runtime # If specified, the binding would only be exposed to the specified # execution context. If omitted and `executionContextName` is not set, # the binding is exposed to all execution contexts of the target. - # This parameter is mutually exclusive with `executionContextName` - # and `executionContextUniqueId`. + # This parameter is mutually exclusive with `executionContextName`. # Deprecated in favor of `executionContextName` due to an unclear use case # and bugs in implementation (crbug.com/1169639). `executionContextId` will be # removed in the future. @@ -1685,12 +1680,8 @@ domain Runtime # matching name, even for contexts created after the binding is added. # See also `ExecutionContext.name` and `worldName` parameter to # `Page.addScriptToEvaluateOnNewDocument`. - # This parameter is mutually exclusive with `executionContextId` - # and `executionContextUniqueId`. + # This parameter is mutually exclusive with `executionContextId`. optional string executionContextName - # This parameter is mutually exclusive with `executionContextId` - # and `executionContextName`. - experimental optional ExecutionContextUniqueId executionContextUniqueId # This method does not remove binding function from global object but # unsubscribes current runtime agent from Runtime.bindingCalled notifications. @@ -1717,7 +1708,6 @@ domain Runtime string payload # Identifier of the context where the call was made. ExecutionContextId executionContextId - experimental ExecutionContextUniqueId executionContextUniqueId # Issued when console API was called. event consoleAPICalled @@ -1746,7 +1736,6 @@ domain Runtime array of RemoteObject args # Identifier of the context where the call was made. ExecutionContextId executionContextId - experimental ExecutionContextUniqueId executionContextUniqueId # Call timestamp. Timestamp timestamp # Stack trace captured when the call was made. The async stack chain is automatically reported for @@ -1785,7 +1774,7 @@ domain Runtime # Id of the destroyed context deprecated ExecutionContextId executionContextId # Unique Id of the destroyed context - experimental ExecutionContextUniqueId executionContextUniqueId + experimental string executionContextUniqueId # Issued when all executionContexts were cleared in browser event executionContextsCleared diff --git a/types/protocol.d.ts b/types/protocol.d.ts index 4ca969eb23..631e62f653 100644 --- a/types/protocol.d.ts +++ b/types/protocol.d.ts @@ -1908,12 +1908,6 @@ export namespace Protocol { */ export type ExecutionContextId = integer; - /** - * Id of an execution context that is unique across processes - * (unlike ExecutionContextId). - */ - export type ExecutionContextUniqueId = string; - /** * Description of an isolated world. */ @@ -1936,7 +1930,7 @@ export namespace Protocol { * multiple processes, so can be reliably used to identify specific context while backend * performs a cross-process navigation. */ - uniqueId: ExecutionContextUniqueId; + uniqueId: string; /** * Embedder-specific auxiliary data likely matching {isDefault: boolean, type: 'default'|'isolated'|'worker', frameId: string} */ @@ -2473,8 +2467,7 @@ export namespace Protocol { * If specified, the binding would only be exposed to the specified * execution context. If omitted and `executionContextName` is not set, * the binding is exposed to all execution contexts of the target. - * This parameter is mutually exclusive with `executionContextName` - * and `executionContextUniqueId`. + * This parameter is mutually exclusive with `executionContextName`. * Deprecated in favor of `executionContextName` due to an unclear use case * and bugs in implementation (crbug.com/1169639). `executionContextId` will be * removed in the future. @@ -2485,15 +2478,9 @@ export namespace Protocol { * matching name, even for contexts created after the binding is added. * See also `ExecutionContext.name` and `worldName` parameter to * `Page.addScriptToEvaluateOnNewDocument`. - * This parameter is mutually exclusive with `executionContextId` - * and `executionContextUniqueId`. + * This parameter is mutually exclusive with `executionContextId`. */ executionContextName?: string; - /** - * This parameter is mutually exclusive with `executionContextId` - * and `executionContextName`. - */ - executionContextUniqueId?: ExecutionContextUniqueId; } export interface RemoveBindingRequest { @@ -2521,7 +2508,6 @@ export namespace Protocol { * Identifier of the context where the call was made. */ executionContextId: ExecutionContextId; - executionContextUniqueId: ExecutionContextUniqueId; } export const enum ConsoleAPICalledEventType { @@ -2561,7 +2547,6 @@ export namespace Protocol { * Identifier of the context where the call was made. */ executionContextId: ExecutionContextId; - executionContextUniqueId: ExecutionContextUniqueId; /** * Call timestamp. */ @@ -2626,7 +2611,7 @@ export namespace Protocol { /** * Unique Id of the destroyed context */ - executionContextUniqueId: ExecutionContextUniqueId; + executionContextUniqueId: string; } /** @@ -14334,6 +14319,12 @@ export namespace Protocol { * Argument will be ignored if reloading dataURL origin. */ scriptToEvaluateOnLoad?: string; + /** + * If set, an error will be thrown if the target page's main frame's + * loader id does not match the provided id. This prevents accidentally + * reloading an unintended target in case there's a racing navigation. + */ + loaderId?: Network.LoaderId; } export interface RemoveScriptToEvaluateOnLoadRequest {