diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 5ebd882fe9616..a308b6a649df9 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.yml +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -50,7 +50,7 @@ body: id: selenium-version attributes: label: What version of Selenium are you currently using? - description: Important! The latest released version of Selenium is 4.32 and we can't fix old versions. + description: Important! The latest released version of Selenium is 4.33 and we can't fix old versions. placeholder: e.g., 4.17.0 validations: required: true diff --git a/AUTHORS b/AUTHORS index 0515c6671e670..9c6f362fc95fb 100644 --- a/AUTHORS +++ b/AUTHORS @@ -104,6 +104,7 @@ Ben Congleton Ben Kucera <14625260+Bkucera@users.noreply.github.com> Ben Lamm Ben Sedat +Benjamin Benjamin Forehand Jr Benoit Pierre bgermann @@ -221,6 +222,7 @@ David Wang David Zhu Debanjan Choudhury deedy5 <65482418+deedy5@users.noreply.github.com> +DeflateAwning <11021263+DeflateAwning@users.noreply.github.com> Denis Demchenko Dennis Oelkers dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> @@ -863,6 +865,7 @@ Tobias Lidskog Tobias Smolka <37370256+tosmolka@users.noreply.github.com> Toda Hiroshi Toilal +Tom Hughes Tom Longhurst Tom Trumper tomaszn diff --git a/MODULE.bazel b/MODULE.bazel index 28f96daf91ee7..68994e475672f 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -180,7 +180,7 @@ maven.install( "com.google.auto:auto-common:1.2.2", "com.google.auto.service:auto-service:1.1.1", "com.google.auto.service:auto-service-annotations:1.1.1", - "com.google.googlejavaformat:google-java-format:1.26.0", + "com.google.googlejavaformat:google-java-format:1.27.0", "com.graphql-java:graphql-java:22.3", "dev.failsafe:failsafe:3.3.2", "io.grpc:grpc-context:1.72.0", @@ -203,7 +203,7 @@ maven.install( "io.opentelemetry:opentelemetry-sdk-trace", "it.ozimov:embedded-redis:0.7.3", "net.bytebuddy:byte-buddy:1.17.5", - "org.htmlunit:htmlunit-core-js:4.11.0", + "org.htmlunit:htmlunit-core-js:4.12.0", "org.apache.commons:commons-exec:1.4.0", "org.apache.logging.log4j:log4j-core:2.24.3", "org.assertj:assertj-core:3.27.3", @@ -218,15 +218,15 @@ maven.install( "org.junit.platform:junit-platform-reporting", "org.junit.platform:junit-platform-commons", "org.junit.platform:junit-platform-engine", - "org.mockito:mockito-core:5.17.0", - "org.redisson:redisson:3.46.0", + "org.mockito:mockito-core:5.18.0", + "org.redisson:redisson:3.47.0", "org.slf4j:slf4j-api:2.0.17", "org.slf4j:slf4j-jdk14:2.0.17", "org.tomlj:tomlj:1.1.1", "org.zeromq:jeromq:0.6.0", ], boms = [ - "io.opentelemetry:opentelemetry-bom:1.49.0", + "io.opentelemetry:opentelemetry-bom:1.50.0", "io.netty:netty-bom:4.1.121.Final", "org.junit:junit-bom:5.12.2", ], 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 (,