From 73a4b0c5ddfbecfb3a27405fccfc3476cea3720c Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Thu, 22 May 2025 10:16:12 +0000 Subject: [PATCH 01/18] update pinned browser versions --- common/repositories.bzl | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/common/repositories.bzl b/common/repositories.bzl index c412d76966761..094a5597d9ed0 100644 --- a/common/repositories.bzl +++ b/common/repositories.bzl @@ -199,8 +199,8 @@ js_library( http_archive( name = "linux_chrome", - url = "https://storage.googleapis.com/chrome-for-testing-public/136.0.7103.113/linux64/chrome-linux64.zip", - sha256 = "a9ec3b5f654745360095f4e066b6b78442e56fe4124831051449813e5c4e0f95", + url = "https://storage.googleapis.com/chrome-for-testing-public/137.0.7151.40/linux64/chrome-linux64.zip", + sha256 = "1a17f1d70a085188eb78365b90b435d83350fcec1040a9383eea80ed97963204", build_file_content = """ load("@aspect_rules_js//js:defs.bzl", "js_library") package(default_visibility = ["//visibility:public"]) @@ -221,8 +221,8 @@ js_library( http_archive( name = "mac_chrome", - url = "https://storage.googleapis.com/chrome-for-testing-public/136.0.7103.113/mac-x64/chrome-mac-x64.zip", - sha256 = "4c7f9dc303fb16e028ed5430406ec2ff10664da15fedc5757c5672fbea58dd22", + url = "https://storage.googleapis.com/chrome-for-testing-public/137.0.7151.40/mac-x64/chrome-mac-x64.zip", + sha256 = "65fb0ae59177d2196eb62fdeb88c455f8965af2e0e9ee6640d66765c7df75450", strip_prefix = "chrome-mac-x64", patch_cmds = [ "mv 'Google Chrome for Testing.app' Chrome.app", @@ -243,8 +243,8 @@ js_library( http_archive( name = "linux_chromedriver", - url = "https://storage.googleapis.com/chrome-for-testing-public/136.0.7103.113/linux64/chromedriver-linux64.zip", - sha256 = "121e7af496671aec492ac910d192446c3038d565f8be93e1eaaef7b113f4ce8c", + url = "https://storage.googleapis.com/chrome-for-testing-public/137.0.7151.40/linux64/chromedriver-linux64.zip", + sha256 = "09246c6eaa804a39b8c54467bf4d62233577f67a9df11a33d8b27dd1b30a168c", strip_prefix = "chromedriver-linux64", build_file_content = """ load("@aspect_rules_js//js:defs.bzl", "js_library") @@ -261,8 +261,8 @@ js_library( http_archive( name = "mac_chromedriver", - url = "https://storage.googleapis.com/chrome-for-testing-public/136.0.7103.113/mac-x64/chromedriver-mac-x64.zip", - sha256 = "171e8df024bb23c9078d971d5f6302a7946b1f53400368b934b1ba1de0074eaa", + url = "https://storage.googleapis.com/chrome-for-testing-public/137.0.7151.40/mac-x64/chromedriver-mac-x64.zip", + sha256 = "c3c7cd781b217694ce35b9b7e2f3c3d214982a023a0c1a21dae4af320e409928", strip_prefix = "chromedriver-mac-x64", build_file_content = """ load("@aspect_rules_js//js:defs.bzl", "js_library") From f02d030c626c1eb3bd071c0b90abf00b7a4bb76b Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Thu, 22 May 2025 10:17:09 +0000 Subject: [PATCH 02/18] update devtools versions --- Rakefile | 2 +- .../chromium/{v134 => v137}/BUILD.bazel | 0 .../{v134 => v137}/browser_protocol.pdl | 630 ++++++++++++++++-- .../chromium/{v134 => v137}/js_protocol.pdl | 4 +- dotnet/selenium-dotnet-version.bzl | 2 +- .../src/webdriver/DevTools/DevToolsDomains.cs | 4 +- .../V134Domains.cs => v137/V137Domains.cs} | 22 +- .../V137JavaScript.cs} | 18 +- .../{v134/V134Log.cs => v137/V137Log.cs} | 14 +- .../V134Network.cs => v137/V137Network.cs} | 24 +- .../V134Target.cs => v137/V137Target.cs} | 14 +- .../StableChannelChromeDriver.cs | 2 +- .../common/DevTools/DevToolsConsoleTest.cs | 2 +- .../test/common/DevTools/DevToolsLogTest.cs | 2 +- .../common/DevTools/DevToolsNetworkTest.cs | 2 +- .../DevTools/DevToolsPerformanceTest.cs | 2 +- .../common/DevTools/DevToolsProfilerTest.cs | 2 +- .../common/DevTools/DevToolsSecurityTest.cs | 2 +- .../test/common/DevTools/DevToolsTabsTest.cs | 2 +- .../common/DevTools/DevToolsTargetTest.cs | 4 +- .../devtools/{v134 => v137}/BUILD.bazel | 2 +- .../v137CdpInfo.java} | 8 +- .../v137Domains.java} | 26 +- .../v134Events.java => v137/v137Events.java} | 18 +- .../v137Javascript.java} | 16 +- .../{v134/v134Log.java => v137/v137Log.java} | 10 +- .../v137Network.java} | 20 +- .../v134Target.java => v137/v137Target.java} | 24 +- .../org/openqa/selenium/devtools/versions.bzl | 2 +- javascript/selenium-webdriver/BUILD.bazel | 2 +- py/BUILD.bazel | 2 +- rb/Gemfile.lock | 2 +- rb/lib/selenium/devtools/BUILD.bazel | 2 +- rb/lib/selenium/devtools/version.rb | 2 +- 34 files changed, 695 insertions(+), 195 deletions(-) rename common/devtools/chromium/{v134 => v137}/BUILD.bazel (100%) rename common/devtools/chromium/{v134 => v137}/browser_protocol.pdl (95%) rename common/devtools/chromium/{v134 => v137}/js_protocol.pdl (99%) rename dotnet/src/webdriver/DevTools/{v134/V134Domains.cs => v137/V137Domains.cs} (78%) rename dotnet/src/webdriver/DevTools/{v134/V134JavaScript.cs => v137/V137JavaScript.cs} (93%) rename dotnet/src/webdriver/DevTools/{v134/V134Log.cs => v137/V137Log.cs} (88%) rename dotnet/src/webdriver/DevTools/{v134/V134Network.cs => v137/V137Network.cs} (95%) rename dotnet/src/webdriver/DevTools/{v134/V134Target.cs => v137/V137Target.cs} (94%) rename java/src/org/openqa/selenium/devtools/{v134 => v137}/BUILD.bazel (98%) rename java/src/org/openqa/selenium/devtools/{v134/v134CdpInfo.java => v137/v137CdpInfo.java} (86%) rename java/src/org/openqa/selenium/devtools/{v134/v134Domains.java => v137/v137Domains.java} (77%) rename java/src/org/openqa/selenium/devtools/{v134/v134Events.java => v137/v137Events.java} (86%) rename java/src/org/openqa/selenium/devtools/{v134/v134Javascript.java => v137/v137Javascript.java} (84%) rename java/src/org/openqa/selenium/devtools/{v134/v134Log.java => v137/v137Log.java} (89%) rename java/src/org/openqa/selenium/devtools/{v134/v134Network.java => v137/v137Network.java} (92%) rename java/src/org/openqa/selenium/devtools/{v134/v134Target.java => v137/v137Target.java} (83%) diff --git a/Rakefile b/Rakefile index b852a2b813a49..0746b9f06b583 100644 --- a/Rakefile +++ b/Rakefile @@ -96,7 +96,7 @@ task '//java/test/org/openqa/selenium/environment/webserver:webserver:uber' => [ JAVA_RELEASE_TARGETS = %w[ //java/src/org/openqa/selenium/chrome:chrome.publish //java/src/org/openqa/selenium/chromium:chromium.publish - //java/src/org/openqa/selenium/devtools/v134:v134.publish + //java/src/org/openqa/selenium/devtools/v137:v137.publish //java/src/org/openqa/selenium/devtools/v135:v135.publish //java/src/org/openqa/selenium/devtools/v136:v136.publish //java/src/org/openqa/selenium/edge:edge.publish diff --git a/common/devtools/chromium/v134/BUILD.bazel b/common/devtools/chromium/v137/BUILD.bazel similarity index 100% rename from common/devtools/chromium/v134/BUILD.bazel rename to common/devtools/chromium/v137/BUILD.bazel diff --git a/common/devtools/chromium/v134/browser_protocol.pdl b/common/devtools/chromium/v137/browser_protocol.pdl similarity index 95% rename from common/devtools/chromium/v134/browser_protocol.pdl rename to common/devtools/chromium/v137/browser_protocol.pdl index b4a8eae76a3f7..db00f32e16afa 100644 --- a/common/devtools/chromium/v134/browser_protocol.pdl +++ b/common/devtools/chromium/v137/browser_protocol.pdl @@ -691,6 +691,7 @@ experimental domain Audits kInlineViolation kEvalViolation kURLViolation + kSRIViolation kTrustedTypesSinkViolation kTrustedTypesPolicyViolation kWasmEvalViolation @@ -800,6 +801,30 @@ experimental domain Audits WriteErrorTooLongIdField WriteErrorUnsupportedType + type SRIMessageSignatureError extends string + enum + MissingSignatureHeader + MissingSignatureInputHeader + InvalidSignatureHeader + InvalidSignatureInputHeader + SignatureHeaderValueIsNotByteSequence + SignatureHeaderValueIsParameterized + SignatureHeaderValueIsIncorrectLength + SignatureInputHeaderMissingLabel + SignatureInputHeaderValueNotInnerList + SignatureInputHeaderValueMissingComponents + SignatureInputHeaderInvalidComponentType + SignatureInputHeaderInvalidComponentName + SignatureInputHeaderInvalidHeaderComponentParameter + SignatureInputHeaderInvalidDerivedComponentParameter + SignatureInputHeaderKeyIdLength + SignatureInputHeaderInvalidParameter + SignatureInputHeaderMissingRequiredParameters + ValidationFailedSignatureExpired + ValidationFailedInvalidLength + ValidationFailedSignatureMismatch + ValidationFailedIntegrityMismatch + # Details for issues around "Attribution Reporting API" usage. # Explainer: https://github.com/WICG/attribution-reporting-api type AttributionReportingIssueDetails extends object @@ -831,6 +856,13 @@ experimental domain Audits SharedDictionaryError sharedDictionaryError AffectedRequest request + type SRIMessageSignatureIssueDetails extends object + properties + SRIMessageSignatureError error + string signatureBase + array of string integrityAssertions + AffectedRequest request + type GenericIssueErrorType extends string enum FormLabelForNameError @@ -950,6 +982,8 @@ experimental domain Audits RelyingPartyOriginIsOpaque TypeNotMatching UiDismissedNoEmbargo + CorsError + SuppressedBySegmentationPlatform type FederatedAuthUserInfoRequestIssueDetails extends object properties @@ -985,6 +1019,18 @@ experimental domain Audits string failureMessage optional Network.RequestId requestId + type PartitioningBlobURLInfo extends string + enum + BlockedCrossPartitionFetching + EnforceNoopenerForNavigation + + type PartitioningBlobURLIssueDetails extends object + properties + # The BlobURL that failed to load. + string url + # Additional information about the Partitioning Blob URL issue. + PartitioningBlobURLInfo partitioningBlobURLInfo + type SelectElementAccessibilityIssueReason extends string enum DisallowedSelectChild @@ -1048,6 +1094,7 @@ experimental domain Audits CorsIssue AttributionReportingIssue QuirksModeIssue + PartitioningBlobURLIssue # Deprecated NavigatorUserAgentIssue GenericIssue @@ -1061,6 +1108,7 @@ experimental domain Audits PropertyRuleIssue SharedDictionaryIssue SelectElementAccessibilityIssue + SRIMessageSignatureIssue # This struct holds a list of optional fields with additional information # specific to the kind of issue. When adding a new issue code, please also @@ -1077,6 +1125,7 @@ experimental domain Audits optional CorsIssueDetails corsIssueDetails optional AttributionReportingIssueDetails attributionReportingIssueDetails optional QuirksModeIssueDetails quirksModeIssueDetails + optional PartitioningBlobURLIssueDetails partitioningBlobURLIssueDetails deprecated optional NavigatorUserAgentIssueDetails navigatorUserAgentIssueDetails optional GenericIssueDetails genericIssueDetails optional DeprecationIssueDetails deprecationIssueDetails @@ -1089,6 +1138,7 @@ experimental domain Audits optional FederatedAuthUserInfoRequestIssueDetails federatedAuthUserInfoRequestIssueDetails optional SharedDictionaryIssueDetails sharedDictionaryIssueDetails optional SelectElementAccessibilityIssueDetails selectElementAccessibilityIssueDetails + optional SRIMessageSignatureIssueDetails sriMessageSignatureIssueDetails # A unique id for a DevTools inspector issue. Allows other entities (e.g. # exceptions, CDP message, console messages, etc.) to reference an issue. @@ -1435,6 +1485,7 @@ domain Browser idleDetection keyboardLock localFonts + localNetworkAccess midi midiSysex nfc @@ -1486,6 +1537,7 @@ domain Browser enum openTabSearch closeTabSearch + openGlic # Set permission settings for given origin. experimental command setPermission @@ -1694,6 +1746,25 @@ domain Browser parameters string url + experimental type PrivacySandboxAPI extends string + enum + BiddingAndAuctionServices + TrustedKeyValue + + # Configures encryption keys used with a given privacy sandbox API to talk + # to a trusted coordinator. Since this is intended for test automation only, + # coordinatorOrigin must be a .test domain. No existing coordinator + # configuration for the origin may exist. + command addPrivacySandboxCoordinatorKeyConfig + parameters + PrivacySandboxAPI api + string coordinatorOrigin + string keyConfig + # BrowserContext to perform the action in. When omitted, default browser + # context is used. + optional BrowserContextID browserContextId + + # This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) # have an associated `id` used in subsequent operations on the related object. Each object type has # a specific `id` structure, and those are not interchangeable between objects of different kinds. @@ -2206,6 +2277,51 @@ experimental domain CSS # Associated style declaration. CSSStyle style + # CSS function argument representation. + type CSSFunctionParameter extends object + properties + # The parameter name. + string name + # The parameter type. + string type + + # CSS function conditional block representation. + type CSSFunctionConditionNode extends object + properties + # Media query for this conditional block. Only one type of condition should be set. + optional CSSMedia media + # Container query for this conditional block. Only one type of condition should be set. + optional CSSContainerQuery containerQueries + # @supports CSS at-rule condition. Only one type of condition should be set. + optional CSSSupports supports + # Block body. + array of CSSFunctionNode children + # The condition text. + string conditionText + + # Section of the body of a CSS function rule. + type CSSFunctionNode extends object + properties + # A conditional block. If set, style should not be set. + optional CSSFunctionConditionNode condition + # Values set by this node. If set, condition should not be set. + optional CSSStyle style + + # CSS function at-rule representation. + type CSSFunctionRule extends object + properties + # Name of the function. + Value name + # The css style sheet identifier (absent for user agent stylesheet and user-specified + # stylesheet rules) this rule came from. + optional StyleSheetId styleSheetId + # Parent stylesheet's origin. + StyleSheetOrigin origin + # List of parameters. + array of CSSFunctionParameter parameters + # Function body. + array of CSSFunctionNode children + # CSS keyframe rule representation. type CSSKeyframeRule extends object properties @@ -2322,7 +2438,12 @@ experimental domain CSS # For example, a value of '1em' is evaluated according to the computed # 'font-size' of the element and a value 'calc(1px + 2px)' will be # resolved to '3px'. - command resolveValues + # If the `propertyName` was specified the `values` are resolved as if + # they were property's declaration. If a value cannot be parsed according + # to the provided property syntax, the value is parsed using combined + # syntax as if null `propertyName` was provided. If the value cannot be + # resolved even then, return the provided value without any changes. + experimental command resolveValues parameters # Substitution functions (var()/env()/attr()) and cascade-dependent # keywords (revert/revert-layer) do not work. @@ -2333,9 +2454,9 @@ experimental domain CSS optional string propertyName # Pseudo element type, only works for pseudo elements that generate # elements in the tree, such as ::before and ::after. - experimental optional DOM.PseudoType pseudoType + optional DOM.PseudoType pseudoType # Pseudo element custom ident. - experimental optional string pseudoIdentifier + optional string pseudoIdentifier returns array of string results @@ -2403,6 +2524,8 @@ experimental domain CSS optional CSSFontPaletteValuesRule cssFontPaletteValuesRule # Id of the first parent element that does not have display: contents. experimental optional DOM.NodeId parentLayoutNodeId + # A list of CSS at-function rules referenced by styles of this node. + experimental optional array of CSSFunctionRule cssFunctionRules # Returns all media queries parsed by the rendering engine. command getMediaQueries @@ -3373,6 +3496,8 @@ domain DOM # Get the popover target for a given element. In this case, this given # element can only be an HTMLFormControlElement (,