diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index 19b96209302c3..5ebd882fe9616 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.31 and we can't fix old versions. + description: Important! The latest released version of Selenium is 4.32 and we can't fix old versions. placeholder: e.g., 4.17.0 validations: required: true diff --git a/AUTHORS b/AUTHORS index 37f61a54c0833..0515c6671e670 100644 --- a/AUTHORS +++ b/AUTHORS @@ -281,6 +281,7 @@ Evan Sangaline Evgeniy Roldukhin EwaMarek Fan <1135611487@qq.com> +Federico Franco <81330093+FFederi@users.noreply.github.com> Felipe Knorr Kuhn Fenil Mehta <42742240+fenilgmehta@users.noreply.github.com> FloKNetcare diff --git a/MODULE.bazel b/MODULE.bazel index 222b639fd9d3d..d84dd3c0373b3 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -175,16 +175,16 @@ maven.install( "com.github.spotbugs:spotbugs:4.9.3", "com.github.stephenc.jcip:jcip-annotations:1.0-1", "com.google.code.findbugs:jsr305:3.0.2", - "com.google.code.gson:gson:2.12.1", - "com.google.guava:guava:33.4.6-jre", + "com.google.code.gson:gson:2.13.1", + "com.google.guava:guava:33.4.8-jre", "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.graphql-java:graphql-java:22.3", "dev.failsafe:failsafe:3.3.2", - "io.grpc:grpc-context:1.71.0", - "io.lettuce:lettuce-core:6.5.5.RELEASE", + "io.grpc:grpc-context:1.72.0", + "io.lettuce:lettuce-core:6.6.0.RELEASE", "io.netty:netty-buffer:4.2.0.Final", "io.netty:netty-codec-http:4.2.0.Final", "io.netty:netty-codec-http2:4.2.0.Final", @@ -192,15 +192,15 @@ maven.install( "io.netty:netty-handler:4.2.0.Final", "io.netty:netty-handler-proxy:4.2.0.Final", "io.netty:netty-transport:4.2.0.Final", - "io.opentelemetry:opentelemetry-api:1.48.0", - "io.opentelemetry:opentelemetry-context:1.48.0", - "io.opentelemetry:opentelemetry-exporter-logging:1.48.0", - "io.opentelemetry:opentelemetry-sdk:1.48.0", - "io.opentelemetry:opentelemetry-sdk-common:1.48.0", - "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:1.48.0", - "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:1.48.0", - "io.opentelemetry:opentelemetry-sdk-testing:1.48.0", - "io.opentelemetry:opentelemetry-sdk-trace:1.48.0", + "io.opentelemetry:opentelemetry-api:1.49.0", + "io.opentelemetry:opentelemetry-context:1.49.0", + "io.opentelemetry:opentelemetry-exporter-logging:1.49.0", + "io.opentelemetry:opentelemetry-sdk:1.49.0", + "io.opentelemetry:opentelemetry-sdk-common:1.49.0", + "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:1.49.0", + "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:1.49.0", + "io.opentelemetry:opentelemetry-sdk-testing:1.49.0", + "io.opentelemetry:opentelemetry-sdk-trace:1.49.0", "it.ozimov:embedded-redis:0.7.3", "net.bytebuddy:byte-buddy:1.17.5", "org.htmlunit:htmlunit-core-js:4.11.0", @@ -211,15 +211,15 @@ maven.install( "org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5", "org.hsqldb:hsqldb:2.7.4", "org.jspecify:jspecify:1.0.0", - "org.junit.jupiter:junit-jupiter-api:5.12.1", - "org.junit.jupiter:junit-jupiter-engine:5.12.1", - "org.junit.jupiter:junit-jupiter-params:5.12.1", - "org.junit.platform:junit-platform-launcher:1.12.1", - "org.junit.platform:junit-platform-reporting:1.12.1", - "org.junit.platform:junit-platform-commons:1.12.1", - "org.junit.platform:junit-platform-engine:1.12.1", - "org.mockito:mockito-core:5.16.1", - "org.redisson:redisson:3.45.1", + "org.junit.jupiter:junit-jupiter-api:5.12.2", + "org.junit.jupiter:junit-jupiter-engine:5.12.2", + "org.junit.jupiter:junit-jupiter-params:5.12.2", + "org.junit.platform:junit-platform-launcher:1.12.2", + "org.junit.platform:junit-platform-reporting:1.12.2", + "org.junit.platform:junit-platform-commons:1.12.2", + "org.junit.platform:junit-platform-engine:1.12.2", + "org.mockito:mockito-core:5.17.0", + "org.redisson:redisson:3.46.0", "org.slf4j:slf4j-api:2.0.17", "org.slf4j:slf4j-jdk14:2.0.17", "org.tomlj:tomlj:1.1.1", diff --git a/Rakefile b/Rakefile index 90ef7a1e7c875..98ffa3169f25d 100644 --- a/Rakefile +++ b/Rakefile @@ -98,7 +98,7 @@ JAVA_RELEASE_TARGETS = %w[ //java/src/org/openqa/selenium/chromium:chromium.publish //java/src/org/openqa/selenium/devtools/v134:v134.publish //java/src/org/openqa/selenium/devtools/v135:v135.publish - //java/src/org/openqa/selenium/devtools/v133:v133.publish + //java/src/org/openqa/selenium/devtools/v136:v136.publish //java/src/org/openqa/selenium/edge:edge.publish //java/src/org/openqa/selenium/firefox:firefox.publish //java/src/org/openqa/selenium/grid/sessionmap/jdbc:jdbc.publish @@ -892,7 +892,7 @@ namespace :dotnet do sh 'docfx dotnet/docs/docfx.json' rescue StandardError case $CHILD_STATUS.exitstatus - when 133 + when 136 raise 'Ensure the dotnet/tools directory is added to your PATH environment variable (e.g., `~/.dotnet/tools`)' when 255 puts '.NET documentation build failed, likely because of DevTools namespacing. This is ok; continuing' diff --git a/common/devtools/chromium/v133/BUILD.bazel b/common/devtools/chromium/v136/BUILD.bazel similarity index 100% rename from common/devtools/chromium/v133/BUILD.bazel rename to common/devtools/chromium/v136/BUILD.bazel diff --git a/common/devtools/chromium/v133/browser_protocol.pdl b/common/devtools/chromium/v136/browser_protocol.pdl similarity index 96% rename from common/devtools/chromium/v133/browser_protocol.pdl rename to common/devtools/chromium/v136/browser_protocol.pdl index 3d5f44cda9100..3f5cefd0f077f 100644 --- a/common/devtools/chromium/v133/browser_protocol.pdl +++ b/common/devtools/chromium/v136/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 @@ -949,6 +981,9 @@ experimental domain Audits InvalidFieldsSpecified RelyingPartyOriginIsOpaque TypeNotMatching + UiDismissedNoEmbargo + CorsError + SuppressedBySegmentationPlatform type FederatedAuthUserInfoRequestIssueDetails extends object properties @@ -984,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 @@ -992,14 +1039,13 @@ experimental domain Audits InteractiveContentOptionChild InteractiveContentLegendChild - # This isue warns about errors in the select element content model. + # This issue warns about errors in the select element content model. type SelectElementAccessibilityIssueDetails extends object properties DOM.BackendNodeId nodeId SelectElementAccessibilityIssueReason selectElementAccessibilityIssueReason boolean hasDisallowedAttributes - type StyleSheetLoadingIssueReason extends string enum LateImportRule @@ -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. @@ -1171,6 +1221,13 @@ experimental domain Extensions returns # Extension id. string id + # Uninstalls an unpacked extension (others not supported) from the profile. + # Available if the client is connected using the --remote-debugging-pipe flag + # and the --enable-unsafe-extension-debugging. + command uninstall + parameters + # Extension id. + string id # Gets data from extension storage in the given `storageArea`. If `keys` is # specified, these are used to filter the result. command getStorageItems @@ -1428,6 +1485,7 @@ domain Browser idleDetection keyboardLock localFonts + localNetworkAccess midi midiSysex nfc @@ -1687,6 +1745,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. @@ -2199,6 +2276,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 @@ -2253,6 +2375,11 @@ experimental domain CSS parameters # Identifier of the frame where "via-inspector" stylesheet should be created. Page.FrameId frameId + # If true, creates a new stylesheet for every call. If false, + # returns a stylesheet previously created by a call with force=false + # for the frame's document if it exists or creates a new stylesheet + # (default: false). + optional boolean force returns # Identifier of the created "via-inspector" stylesheet. StyleSheetId styleSheetId @@ -2391,6 +2518,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 @@ -3361,6 +3490,8 @@ domain DOM # Get the popover target for a given element. In this case, this given # element can only be an HTMLFormControlElement (,