From b5902e849d7ec5f88c825ae194324fed09811a34 Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 25 Jun 2025 16:51:02 +0000 Subject: [PATCH 01/18] update pinned browser versions --- common/repositories.bzl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/common/repositories.bzl b/common/repositories.bzl index bae1307fd9fc1..80282f1e37df7 100644 --- a/common/repositories.bzl +++ b/common/repositories.bzl @@ -50,8 +50,8 @@ js_library( http_archive( name = "linux_beta_firefox", - url = "https://ftp.mozilla.org/pub/firefox/releases/141.0b1/linux-x86_64/en-US/firefox-141.0b1.tar.xz", - sha256 = "5693fd13fa3d214aaaf9ed1efb3462252cdb4e953bc3e03643181ec59b45e95f", + url = "https://ftp.mozilla.org/pub/firefox/releases/141.0b2/linux-x86_64/en-US/firefox-141.0b2.tar.xz", + sha256 = "0d60ea31ec38fed508fbfc6105af7cc86f564a8e21f464fd91e8bcc44c48e040", build_file_content = """ load("@aspect_rules_js//js:defs.bzl", "js_library") package(default_visibility = ["//visibility:public"]) @@ -72,8 +72,8 @@ js_library( dmg_archive( name = "mac_beta_firefox", - url = "https://ftp.mozilla.org/pub/firefox/releases/141.0b1/mac/en-US/Firefox%20141.0b1.dmg", - sha256 = "3f7c3c36ca8cfe2500043a9036bc5815bcb9c3dd6b887af2498b175353d0a983", + url = "https://ftp.mozilla.org/pub/firefox/releases/141.0b2/mac/en-US/Firefox%20141.0b2.dmg", + sha256 = "16ee4e04eae3db7e7f08fc8953b06f0cc4b55899da739608d9da4cd4750b1da6", build_file_content = """ load("@aspect_rules_js//js:defs.bzl", "js_library") package(default_visibility = ["//visibility:public"]) From cf4218bab8f387af1011bd7757b5b10551adc6ca Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 25 Jun 2025 16:51:59 +0000 Subject: [PATCH 02/18] update devtools versions --- Rakefile | 2 +- .../chromium/{v135 => v138}/BUILD.bazel | 0 .../{v135 => v138}/browser_protocol.pdl | 714 ++++++++++++++++-- .../chromium/{v135 => v138}/js_protocol.pdl | 4 +- dotnet/selenium-dotnet-version.bzl | 2 +- .../src/webdriver/DevTools/DevToolsDomains.cs | 4 +- .../V135Domains.cs => v138/V138Domains.cs} | 22 +- .../V138JavaScript.cs} | 16 +- .../{v135/V135Log.cs => v138/V138Log.cs} | 14 +- .../V135Network.cs => v138/V138Network.cs} | 24 +- .../V135Target.cs => v138/V138Target.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/{v135 => v138}/BUILD.bazel | 2 +- .../v138CdpInfo.java} | 8 +- .../v138Domains.java} | 26 +- .../v135Events.java => v138/v138Events.java} | 18 +- .../v138Javascript.java} | 14 +- .../{v135/v135Log.java => v138/v138Log.java} | 10 +- .../v138Network.java} | 20 +- .../v135Target.java => v138/v138Target.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, 768 insertions(+), 202 deletions(-) rename common/devtools/chromium/{v135 => v138}/BUILD.bazel (100%) rename common/devtools/chromium/{v135 => v138}/browser_protocol.pdl (95%) rename common/devtools/chromium/{v135 => v138}/js_protocol.pdl (99%) rename dotnet/src/webdriver/DevTools/{v135/V135Domains.cs => v138/V138Domains.cs} (78%) rename dotnet/src/webdriver/DevTools/{v135/V135JavaScript.cs => v138/V138JavaScript.cs} (94%) rename dotnet/src/webdriver/DevTools/{v135/V135Log.cs => v138/V138Log.cs} (88%) rename dotnet/src/webdriver/DevTools/{v135/V135Network.cs => v138/V138Network.cs} (95%) rename dotnet/src/webdriver/DevTools/{v135/V135Target.cs => v138/V138Target.cs} (94%) rename java/src/org/openqa/selenium/devtools/{v135 => v138}/BUILD.bazel (98%) rename java/src/org/openqa/selenium/devtools/{v135/v135CdpInfo.java => v138/v138CdpInfo.java} (86%) rename java/src/org/openqa/selenium/devtools/{v135/v135Domains.java => v138/v138Domains.java} (77%) rename java/src/org/openqa/selenium/devtools/{v135/v135Events.java => v138/v138Events.java} (86%) rename java/src/org/openqa/selenium/devtools/{v135/v135Javascript.java => v138/v138Javascript.java} (85%) rename java/src/org/openqa/selenium/devtools/{v135/v135Log.java => v138/v138Log.java} (89%) rename java/src/org/openqa/selenium/devtools/{v135/v135Network.java => v138/v138Network.java} (92%) rename java/src/org/openqa/selenium/devtools/{v135/v135Target.java => v138/v138Target.java} (83%) diff --git a/Rakefile b/Rakefile index 4dcaac4c32826..d872ee283a0cf 100644 --- a/Rakefile +++ b/Rakefile @@ -97,7 +97,7 @@ 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/v137:v137.publish - //java/src/org/openqa/selenium/devtools/v135:v135.publish + //java/src/org/openqa/selenium/devtools/v138:v138.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 diff --git a/common/devtools/chromium/v135/BUILD.bazel b/common/devtools/chromium/v138/BUILD.bazel similarity index 100% rename from common/devtools/chromium/v135/BUILD.bazel rename to common/devtools/chromium/v138/BUILD.bazel diff --git a/common/devtools/chromium/v135/browser_protocol.pdl b/common/devtools/chromium/v138/browser_protocol.pdl similarity index 95% rename from common/devtools/chromium/v135/browser_protocol.pdl rename to common/devtools/chromium/v138/browser_protocol.pdl index 46526d39dcbde..4dfad4def0eff 100644 --- a/common/devtools/chromium/v135/browser_protocol.pdl +++ b/common/devtools/chromium/v138/browser_protocol.pdl @@ -823,6 +823,7 @@ experimental domain Audits ValidationFailedSignatureExpired ValidationFailedInvalidLength ValidationFailedSignatureMismatch + ValidationFailedIntegrityMismatch # Details for issues around "Attribution Reporting API" usage. # Explainer: https://github.com/WICG/attribution-reporting-api @@ -858,6 +859,8 @@ experimental domain Audits type SRIMessageSignatureIssueDetails extends object properties SRIMessageSignatureError error + string signatureBase + array of string integrityAssertions AffectedRequest request type GenericIssueErrorType extends string @@ -980,6 +983,7 @@ experimental domain Audits TypeNotMatching UiDismissedNoEmbargo CorsError + SuppressedBySegmentationPlatform type FederatedAuthUserInfoRequestIssueDetails extends object properties @@ -1075,6 +1079,19 @@ experimental domain Audits # The value of the property rule property that failed to parse optional string propertyValue + type UserReidentificationIssueType extends string + enum + BlockedFrameNavigation + BlockedSubresource + + # This issue warns about uses of APIs that may be considered misuse to + # re-identify users. + type UserReidentificationIssueDetails extends object + properties + UserReidentificationIssueType type + # Applies to BlockedFrameNavigation and BlockedSubresource issue types. + optional AffectedRequest request + # A unique identifier for the type of issue. Each type may use one of the # optional fields in InspectorIssueDetails to convey more specific # information about the kind of issue. @@ -1105,6 +1122,7 @@ experimental domain Audits SharedDictionaryIssue SelectElementAccessibilityIssue SRIMessageSignatureIssue + UserReidentificationIssue # 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 @@ -1135,6 +1153,7 @@ experimental domain Audits optional SharedDictionaryIssueDetails sharedDictionaryIssueDetails optional SelectElementAccessibilityIssueDetails selectElementAccessibilityIssueDetails optional SRIMessageSignatureIssueDetails sriMessageSignatureIssueDetails + optional UserReidentificationIssueDetails userReidentificationIssueDetails # A unique id for a DevTools inspector issue. Allows other entities (e.g. # exceptions, CDP message, console messages, etc.) to reference an issue. @@ -1481,6 +1500,7 @@ domain Browser idleDetection keyboardLock localFonts + localNetworkAccess midi midiSysex nfc @@ -1532,6 +1552,7 @@ domain Browser enum openTabSearch closeTabSearch + openGlic # Set permission settings for given origin. experimental command setPermission @@ -1613,6 +1634,10 @@ domain Browser inProgress completed canceled + # If download is "completed", provides the path of the downloaded file. + # Depending on the platform, it is not guaranteed to be set, nor the file + # is guaranteed to exist. + experimental optional string filePath # Close browser gracefully. command close @@ -1740,6 +1765,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. @@ -2413,7 +2457,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. @@ -2424,9 +2473,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 @@ -2963,6 +3012,7 @@ domain DOM file-selector-button details-content picker + permission-icon # Shadow root type. type ShadowRootType extends string @@ -3468,6 +3518,9 @@ domain DOM PopoverTarget # Get the interest target for a given element. InterestTarget + # Get the commandfor target for a given element. In this case, this given + # element can only be an HTMLButtonElement. + CommandFor returns # NodeId of the element matching the queried relation. NodeId nodeId @@ -4346,6 +4399,25 @@ domain Emulation depends on Page depends on Runtime + experimental type SafeAreaInsets extends object + properties + # Overrides safe-area-inset-top. + optional integer top + # Overrides safe-area-max-inset-top. + optional integer topMax + # Overrides safe-area-inset-left. + optional integer left + # Overrides safe-area-max-inset-left. + optional integer leftMax + # Overrides safe-area-inset-bottom. + optional integer bottom + # Overrides safe-area-max-inset-bottom. + optional integer bottomMax + # Overrides safe-area-inset-right. + optional integer right + # Overrides safe-area-max-inset-right. + optional integer rightMax + # Screen orientation. type ScreenOrientation extends object properties @@ -4516,6 +4588,12 @@ domain Emulation # cleared. optional DOM.RGBA color + # Overrides the values for env(safe-area-inset-*) and env(safe-area-max-inset-*). Unset values will cause the + # respective variables to be undefined, even if previously overridden. + experimental command setSafeAreaInsetsOverride + parameters + SafeAreaInsets insets + # Overrides the values of device screen dimensions (window.screen.width, window.screen.height, # window.innerWidth, window.innerHeight, and "device-width"/"device-height"-related CSS media # query results). @@ -4549,7 +4627,8 @@ domain Emulation experimental optional Page.Viewport viewport # If set, the display feature of a multi-segment screen. If not set, multi-segment support # is turned-off. - experimental optional DisplayFeature displayFeature + # Deprecated, use Emulation.setDisplayFeaturesOverride. + experimental deprecated optional DisplayFeature displayFeature # If set, the posture of a foldable device. If not set the posture is set # to continuous. # Deprecated, use Emulation.setDevicePostureOverride. @@ -4567,6 +4646,18 @@ domain Emulation # Does nothing if no override is set. experimental command clearDevicePostureOverride + # Start using the given display features to pupulate the Viewport Segments API. + # This override can also be set in setDeviceMetricsOverride(). + experimental command setDisplayFeaturesOverride + parameters + array of DisplayFeature features + + # Clears the display features override set with either setDeviceMetricsOverride() + # or setDisplayFeaturesOverride() and starts using display features from the + # platform again. + # Does nothing if no override is set. + experimental command clearDisplayFeaturesOverride + experimental command setScrollbarsHidden parameters # Whether scrollbars should be always hidden. @@ -4608,8 +4699,8 @@ domain Emulation protanopia tritanopia - # Overrides the Geolocation Position or Error. Omitting any of the parameters emulates position - # unavailable. + # Overrides the Geolocation Position or Error. Omitting latitude, longitude or + # accuracy emulates position unavailable. command setGeolocationOverride parameters # Mock latitude @@ -4618,6 +4709,14 @@ domain Emulation optional number longitude # Mock accuracy optional number accuracy + # Mock altitude + optional number altitude + # Mock altitudeAccuracy + optional number altitudeAccuracy + # Mock heading + optional number heading + # Mock speed + optional number speed experimental command getOverriddenSensorInformation parameters @@ -4653,6 +4752,7 @@ domain Emulation PressureSource source optional PressureMetadata metadata + # TODO: OBSOLETE: To remove when setPressureDataOverride is merged. # Provides a given pressure state that will be processed and eventually be # delivered to PressureObserver users. |source| must have been previously # overridden by setPressureSourceOverrideEnabled. @@ -4661,6 +4761,15 @@ domain Emulation PressureSource source PressureState state + # Provides a given pressure data set that will be processed and eventually be + # delivered to PressureObserver users. |source| must have been previously + # overridden by setPressureSourceOverrideEnabled. + experimental command setPressureDataOverride + parameters + PressureSource source + PressureState state + optional number ownContributionEstimate + # Overrides the Idle state. command setIdleOverride parameters @@ -4778,6 +4887,14 @@ domain Emulation # Whether the override should be enabled. boolean enabled + # Allows overriding the difference between the small and large viewport sizes, which determine the + # value of the `svh` and `lvh` unit, respectively. Only supported for top-level frames. + experimental command setSmallViewportHeightDifferenceOverride + parameters + # This will cause an element of size 100svh to be `difference` pixels smaller than an element + # of size 100lvh. + integer difference + # This domain provides experimental commands only supported in headless mode. experimental domain HeadlessExperimental depends on Page @@ -5872,6 +5989,7 @@ domain Network Ping CSPViolationReport Preflight + FedCM Other # Unique loader identifier. @@ -6124,6 +6242,7 @@ domain Network mixed-content origin inspector + integrity subresource-filter content-type coep-frame-resource-needs-coep-header @@ -6266,6 +6385,7 @@ domain Network cache fetch-event race-network-and-fetch-handler + race-network-and-cache experimental type ServiceWorkerRouterInfo extends object properties @@ -6581,6 +6701,8 @@ domain Network PortMismatch # The cookie's source scheme value does not match the request origin's scheme. SchemeMismatch + # Unpartitioned cookie access from an anonymous context was blocked. + AnonymousContext # Types of reasons why a cookie should have been blocked by 3PCD but is exempted for the request. experimental type CookieExemptionReason extends string @@ -6916,6 +7038,8 @@ domain Network experimental optional integer maxResourceBufferSize # 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. + experimental optional boolean reportDirectSocketTraffic # Returns all browser cookies. Depending on the backend support, will return detailed cookie # information in the `cookies` field. @@ -7379,6 +7503,148 @@ domain Network # Timestamp. MonotonicTime timestamp + experimental type DirectSocketDnsQueryType extends string + enum + ipv4 + ipv6 + + experimental type DirectTCPSocketOptions extends object + properties + # TCP_NODELAY option + boolean noDelay + # Expected to be unsigned integer. + optional number keepAliveDelay + # Expected to be unsigned integer. + optional number sendBufferSize + # Expected to be unsigned integer. + optional number receiveBufferSize + optional DirectSocketDnsQueryType dnsQueryType + + + # Fired upon direct_socket.TCPSocket creation. + experimental event directTCPSocketCreated + parameters + RequestId identifier + string remoteAddr + # Unsigned int 16. + integer remotePort + DirectTCPSocketOptions options + MonotonicTime timestamp + optional Initiator initiator + + # Fired when direct_socket.TCPSocket connection is opened. + experimental event directTCPSocketOpened + parameters + RequestId identifier + string remoteAddr + # Expected to be unsigned integer. + integer remotePort + MonotonicTime timestamp + optional string localAddr + # Expected to be unsigned integer. + optional integer localPort + + # Fired when direct_socket.TCPSocket is aborted. + experimental event directTCPSocketAborted + parameters + RequestId identifier + string errorMessage + MonotonicTime timestamp + + # Fired when direct_socket.TCPSocket is closed. + experimental event directTCPSocketClosed + parameters + RequestId identifier + MonotonicTime timestamp + + # Fired when data is sent to tcp direct socket stream. + experimental event directTCPSocketChunkSent + parameters + RequestId identifier + binary data + MonotonicTime timestamp + + # Fired when data is received from tcp direct socket stream. + experimental event directTCPSocketChunkReceived + parameters + RequestId identifier + binary data + MonotonicTime timestamp + + experimental type DirectUDPSocketOptions extends object + properties + optional string remoteAddr + # Unsigned int 16. + optional integer remotePort + + optional string localAddr + # Unsigned int 16. + optional integer localPort + + optional DirectSocketDnsQueryType dnsQueryType + + # Expected to be unsigned integer. + optional number sendBufferSize + # Expected to be unsigned integer. + optional number receiveBufferSize + + + # Fired upon direct_socket.UDPSocket creation. + experimental event directUDPSocketCreated + parameters + RequestId identifier + DirectUDPSocketOptions options + MonotonicTime timestamp + optional Initiator initiator + + # Fired when direct_socket.UDPSocket connection is opened. + experimental event directUDPSocketOpened + parameters + RequestId identifier + string localAddr + # Expected to be unsigned integer. + integer localPort + MonotonicTime timestamp + optional string remoteAddr + # Expected to be unsigned integer. + optional integer remotePort + + # Fired when direct_socket.UDPSocket is aborted. + experimental event directUDPSocketAborted + parameters + RequestId identifier + string errorMessage + MonotonicTime timestamp + + # Fired when direct_socket.UDPSocket is closed. + experimental event directUDPSocketClosed + parameters + RequestId identifier + MonotonicTime timestamp + + experimental type DirectUDPMessage extends object + properties + binary data + # Null for connected mode. + optional string remoteAddr + # Null for connected mode. + # Expected to be unsigned integer. + optional integer remotePort + + # Fired when message is sent to udp direct socket stream. + experimental event directUDPSocketChunkSent + parameters + RequestId identifier + DirectUDPMessage message + MonotonicTime timestamp + + # Fired when message is received from udp direct socket stream. + experimental event directUDPSocketChunkReceived + parameters + RequestId identifier + DirectUDPMessage message + MonotonicTime timestamp + experimental type PrivateNetworkRequestPolicy extends string enum Allow @@ -7387,6 +7653,7 @@ domain Network PreflightBlock PreflightWarn PermissionBlock + PermissionWarn experimental type IPAddressSpace extends string enum @@ -7711,7 +7978,7 @@ domain Network LoadNetworkResourcePageResult resource # Sets Controls for third-party cookie access - # Page reload is required before the new cookie bahavior will be observed + # Page reload is required before the new cookie behavior will be observed experimental command setCookieControls parameters # Whether 3pc restriction is enabled. @@ -8287,6 +8554,7 @@ domain Page # All Permissions Policy features. This enum should match the one defined # in services/network/public/cpp/permissions_policy/permissions_policy_features.json5. + # LINT.IfChange(PermissionsPolicyFeature) experimental type PermissionsPolicyFeature extends string enum accelerometer @@ -8329,6 +8597,7 @@ domain Page cross-origin-isolated deferred-fetch deferred-fetch-minimal + device-attributes digital-credentials-get direct-sockets direct-sockets-private @@ -8350,11 +8619,14 @@ domain Page interest-cohort join-ad-interest-group keyboard-map + language-detector local-fonts + local-network-access magnetometer media-playback-while-not-visible microphone midi + on-device-speech-recognition otp-credentials payment picture-in-picture @@ -8364,6 +8636,8 @@ domain Page private-state-token-redemption publickey-credentials-create publickey-credentials-get + record-ad-auction-events + rewriter run-ad-auction screen-wake-lock serial @@ -8374,7 +8648,9 @@ domain Page speaker-selection storage-access sub-apps + summarizer sync-xhr + translator unload usb usb-unrestricted @@ -8383,7 +8659,9 @@ domain Page web-printing web-share window-management + writer xr-spatial-tracking + # LINT.ThenChange(//services/network/public/cpp/permissions_policy/permissions_policy_features.json5:PermissionsPolicy) # Reason for a permissions policy feature to be disabled. experimental type PermissionsPolicyBlockReason extends string @@ -9012,13 +9290,15 @@ domain Page # Recommendation for manifest's id attribute to match current id computed from start_url optional string recommendedId - experimental command getAdScriptId + experimental command getAdScriptAncestryIds parameters FrameId frameId returns - # Identifies the bottom-most script which caused the frame to be labelled - # as an ad. Only sent if frame is labelled as an ad and id is available. - optional AdScriptId adScriptId + # The ancestry chain of ad script identifiers leading to this frame's + # creation, ordered from the most immediate script (in the frame creation + # stack) to more distant ancestors (that created the immediately preceding + # script). Only sent if frame is labelled as an ad and ids are available. + array of AdScriptId adScriptAncestryIds # Returns present frame tree structure. command getFrameTree @@ -9419,7 +9699,7 @@ domain Page autoReject autoOptOut -# Sets the Secure Payment Confirmation transaction mode. + # Sets the Secure Payment Confirmation transaction mode. # https://w3c.github.io/secure-payment-confirmation/#sctn-automation-set-spc-transaction-mode experimental command setSPCTransactionMode parameters @@ -9448,6 +9728,10 @@ domain Page command setInterceptFileChooserDialog parameters boolean enabled + # If true, cancels the dialog by emitting relevant events (if any) + # in addition to not showing it if the interception is enabled + # (default: false). + experimental optional boolean cancel event domContentEventFired parameters @@ -9626,6 +9910,8 @@ domain Page # closed. event javascriptDialogClosed parameters + # Frame id. + experimental FrameId frameId # Whether dialog was confirmed. boolean result # User input in case of prompt. @@ -9637,6 +9923,8 @@ domain Page parameters # Frame url. string url + # Frame id. + experimental FrameId frameId # Message that will be displayed by the dialog. string message # Dialog type. @@ -9807,6 +10095,8 @@ domain Page RequestedByWebViewClient PostMessageByWebViewClient CacheControlNoStoreDeviceBoundSessionTerminated + CacheLimitPrunedOnModerateMemoryPressure + CacheLimitPrunedOnCriticalMemoryPressure # Types of not restored reasons for back-forward cache. experimental type BackForwardCacheNotRestoredReasonType extends string @@ -10430,30 +10720,32 @@ experimental domain Storage bidderTrustedSignals sellerTrustedSignals - # Enum of shared storage access types. - type SharedStorageAccessType extends string - enum - documentAddModule - documentSelectURL - documentRun - documentSet - documentAppend - documentDelete - documentClear - documentGet - workletSet - workletAppend - workletDelete - workletClear - workletGet - workletKeys - workletEntries - workletLength - workletRemainingBudget - headerSet - headerAppend - headerDelete - headerClear + # Enum of shared storage access scopes. + type SharedStorageAccessScope extends string + enum + window + sharedStorageWorklet + protectedAudienceWorklet + header + + # Enum of shared storage access methods. + type SharedStorageAccessMethod extends string + enum + addModule + createWorklet + selectURL + run + batchUpdate + set + append + delete + clear + get + keys + values + entries + length + remainingBudget # Struct for a single key-value pair in an origin's shared storage. type SharedStorageEntry extends object @@ -10474,6 +10766,19 @@ experimental domain Storage # storage. integer bytesUsed + # Represents a dictionary object passed in as privateAggregationConfig to + # run or selectURL. + type SharedStoragePrivateAggregationConfig extends object + properties + # The chosen aggregation service deployment. + optional string aggregationCoordinatorOrigin + # The context ID provided. + optional string contextId + # Configures the maximum size allowed for filtering IDs. + integer filteringIdMaxBytes + # The limit on the number of contributions in the final report. + optional integer maxContributions + # Pair of reporting metadata details for a candidate URL for `selectURL()`. type SharedStorageReportingMetadata extends object properties @@ -10493,44 +10798,74 @@ experimental domain Storage type SharedStorageAccessParams extends object properties # Spec of the module script URL. - # Present only for SharedStorageAccessType.documentAddModule. + # Present only for SharedStorageAccessMethods: addModule and + # createWorklet. optional string scriptSourceUrl + # String denoting "context-origin", "script-origin", or a custom + # origin to be used as the worklet's data origin. + # Present only for SharedStorageAccessMethod: createWorklet. + optional string dataOrigin # Name of the registered operation to be run. - # Present only for SharedStorageAccessType.documentRun and - # SharedStorageAccessType.documentSelectURL. + # Present only for SharedStorageAccessMethods: run and selectURL. optional string operationName + # ID of the operation call. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional string operationId + # Whether or not to keep the worket alive for future run or selectURL + # calls. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional boolean keepAlive + # Configures the private aggregation options. + # Present only for SharedStorageAccessMethods: run and selectURL. + optional SharedStoragePrivateAggregationConfig privateAggregationConfig # The operation's serialized data in bytes (converted to a string). - # Present only for SharedStorageAccessType.documentRun and - # SharedStorageAccessType.documentSelectURL. + # Present only for SharedStorageAccessMethods: run and selectURL. + # TODO(crbug.com/401011862): Consider updating this parameter to binary. optional string serializedData # Array of candidate URLs' specs, along with any associated metadata. - # Present only for SharedStorageAccessType.documentSelectURL. + # Present only for SharedStorageAccessMethod: selectURL. optional array of SharedStorageUrlWithMetadata urlsWithMetadata + # Spec of the URN:UUID generated for a selectURL call. + # Present only for SharedStorageAccessMethod: selectURL. + optional string urnUuid # Key for a specific entry in an origin's shared storage. - # Present only for SharedStorageAccessType.documentSet, - # SharedStorageAccessType.documentAppend, - # SharedStorageAccessType.documentDelete, - # SharedStorageAccessType.workletSet, - # SharedStorageAccessType.workletAppend, - # SharedStorageAccessType.workletDelete, - # SharedStorageAccessType.workletGet, - # SharedStorageAccessType.headerSet, - # SharedStorageAccessType.headerAppend, and - # SharedStorageAccessType.headerDelete. + # Present only for SharedStorageAccessMethods: set, append, delete, and + # get. optional string key # Value for a specific entry in an origin's shared storage. - # Present only for SharedStorageAccessType.documentSet, - # SharedStorageAccessType.documentAppend, - # SharedStorageAccessType.workletSet, - # SharedStorageAccessType.workletAppend, - # SharedStorageAccessType.headerSet, and - # SharedStorageAccessType.headerAppend. + # Present only for SharedStorageAccessMethods: set and append. optional string value # Whether or not to set an entry for a key if that key is already present. - # Present only for SharedStorageAccessType.documentSet, - # SharedStorageAccessType.workletSet, and - # SharedStorageAccessType.headerSet. + # Present only for SharedStorageAccessMethod: set. optional boolean ignoreIfPresent + # If the method is called on a shared storage worklet, or as part of + # a shared storage worklet script, it will have a number for the + # associated worklet, denoting the (0-indexed) order of the worklet's + # creation relative to all other shared storage worklets created by + # documents using the current storage partition. + # Present only for SharedStorageAccessMethods: addModule, createWorklet, + # run, selectURL, and any other SharedStorageAccessMethod when the + # SharedStorageAccessScope is sharedStorageWorklet. + # TODO(crbug.com/401011862): Pass this only for addModule & createWorklet. + optional integer workletOrdinal + # Hex representation of the DevTools token used as the TargetID for the + # associated shared storage worklet. + # Present only for SharedStorageAccessMethods: addModule, createWorklet, + # run, selectURL, and any other SharedStorageAccessMethod when the + # SharedStorageAccessScope is sharedStorageWorklet. + optional Target.TargetID workletTargetId + # Name of the lock to be acquired, if present. + # Optionally present only for SharedStorageAccessMethods: batchUpdate, + # set, append, delete, and clear. + optional string withLock + # If the method has been called as part of a batchUpdate, then this + # number identifies the batch to which it belongs. + # Optionally present only for SharedStorageAccessMethods: + # batchUpdate (required), set, append, delete, and clear. + optional string batchUpdateId + # Number of modifier methods sent in batch. + # Present only for SharedStorageAccessMethod: batchUpdate. + optional integer batchSize type StorageBucketsDurability extends string enum @@ -10869,16 +11204,41 @@ experimental domain Storage parameters # Time of the access. Network.TimeSinceEpoch accessTime + # Enum value indicating the access scope. + SharedStorageAccessScope scope # Enum value indicating the Shared Storage API method invoked. - SharedStorageAccessType type + SharedStorageAccessMethod method # DevTools Frame Token for the primary frame tree's root. Page.FrameId mainFrameId - # Serialized origin for the context that invoked the Shared Storage API. + # Serialization of the origin owning the Shared Storage data. string ownerOrigin + # Serialization of the site owning the Shared Storage data. + string ownerSite # The sub-parameters wrapped by `params` are all optional and their # presence/absence depends on `type`. SharedStorageAccessParams params + # A shared storage run or selectURL operation finished its execution. + # The following parameters are included in all events. + event sharedStorageWorkletOperationExecutionFinished + parameters + # Time that the operation finished. + Network.TimeSinceEpoch finishedTime + # Time, in microseconds, from start of shared storage JS API call until + # end of operation execution in the worklet. + integer executionTime + # Enum value indicating the Shared Storage API method invoked. + SharedStorageAccessMethod method + # ID of the operation call. + string operationId + # Hex representation of the DevTools token used as the TargetID for the + # associated shared storage worklet. + Target.TargetID workletTargetId + # DevTools Frame Token for the primary frame tree's root. + Page.FrameId mainFrameId + # Serialization of the origin owning the Shared Storage data. + string ownerOrigin + event storageBucketCreatedOrUpdated parameters StorageBucketInfo bucketInfo @@ -10942,13 +11302,6 @@ experimental domain Storage # duration in seconds array of integer ends - experimental type AttributionReportingTriggerSpec extends object - properties - # number instead of integer because not all uint32 can be represented by - # int - array of number triggerData - AttributionReportingEventReportWindows eventReportWindows - experimental type AttributionReportingTriggerDataMatching extends string enum exact @@ -10979,12 +11332,20 @@ experimental domain Storage number limit number maxEventStates + experimental type AttributionReportingNamedBudgetDef extends object + properties + string name + integer budget + experimental type AttributionReportingSourceRegistration extends object properties Network.TimeSinceEpoch time # duration in seconds integer expiry - array of AttributionReportingTriggerSpec triggerSpecs + # number instead of integer because not all uint32 can be represented by + # int + array of number triggerData + AttributionReportingEventReportWindows eventReportWindows # duration in seconds integer aggregatableReportWindow AttributionReportingSourceType type @@ -11001,6 +11362,9 @@ experimental domain Storage AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig optional AttributionScopesData scopesData integer maxEventLevelReports + array of AttributionReportingNamedBudgetDef namedBudgets + boolean debugReporting + number eventLevelEpsilon experimental type AttributionReportingSourceRegistrationResult extends string enum @@ -11063,6 +11427,11 @@ experimental domain Storage optional UnsignedInt64AsBase10 dedupKey AttributionReportingFilterPair filters + experimental type AttributionReportingNamedBudgetCandidate extends object + properties + optional string name + AttributionReportingFilterPair filters + experimental type AttributionReportingTriggerRegistration extends object properties AttributionReportingFilterPair filters @@ -11078,6 +11447,7 @@ experimental domain Storage optional string triggerContextId AttributionReportingAggregatableDebugReportingConfig aggregatableDebugReportingConfig array of string scopes + array of AttributionReportingNamedBudgetCandidate namedBudgets experimental type AttributionReportingEventLevelResult extends string enum @@ -11125,6 +11495,28 @@ experimental domain Storage AttributionReportingEventLevelResult eventLevel AttributionReportingAggregatableResult aggregatable + experimental type AttributionReportingReportResult extends string + enum + # A network request was attempted for the report. + sent + # No request was attempted because of browser policy. + prohibited + # No request was attempted because of an error in report assembly, + # e.g. the aggregation service was unavailable. + failedToAssemble + # No request was attempted because the report's expiry passed. + expired + + experimental event attributionReportingReportSent + parameters + string url + object body + AttributionReportingReportResult result + # If result is `sent`, populated with net/HTTP status. + optional integer netError + optional string netErrorName + optional integer httpStatusCode + # A single Related Website Set object. experimental type RelatedWebsiteSet extends object properties @@ -11156,6 +11548,12 @@ experimental domain Storage # party URL, only the first-party URL is returned in the array. array of string matchedUrls + command setProtectedAudienceKAnonymity + parameters + string owner + string name + array of binary hashes + # The SystemInfo domain defines methods and events for querying low-level system information. experimental domain SystemInfo @@ -11451,6 +11849,10 @@ domain Target optional boolean background # Whether to create the target of type "tab". experimental optional boolean forTab + # Whether to create a hidden target. The hidden target is observable via protocol, but not + # present in the tab UI strip. Cannot be created with `forTab: true`, `newWindow: true` or + # `background: false`. The life-time of the tab is limited to the life-time of the session. + experimental optional boolean hidden returns # The id of the page opened. TargetID targetId @@ -11498,11 +11900,14 @@ domain Target # Deprecated. deprecated optional TargetID targetId - # Controls whether to automatically attach to new targets which are considered to be related to - # this one. When turned on, attaches to all existing related targets as well. When turned off, + # Controls whether to automatically attach to new targets which are considered + # to be directly related to this one (for example, iframes or workers). + # When turned on, attaches to all existing related targets as well. When turned off, # automatically detaches from all currently attached targets. # This also clears all targets added by `autoAttachRelated` from the list of targets to watch # for creation of related targets. + # You might want to call this recursively for auto-attached targets to attach + # to all available targets. command setAutoAttach parameters # Whether to auto-attach to related targets. @@ -12697,7 +13102,6 @@ experimental domain Preload InvalidSchemeRedirect InvalidSchemeNavigation NavigationRequestBlockedByCsp - MainFrameNavigation MojoBinderPolicy RendererProcessCrashed RendererProcessKilled @@ -12798,6 +13202,7 @@ experimental domain Preload PrefetchFailedMIMENotSupported PrefetchFailedNetError PrefetchFailedNon2XX + PrefetchEvictedAfterBrowsingDataRemoved PrefetchEvictedAfterCandidateRemoved PrefetchEvictedForNewerPrefetch PrefetchHeldback @@ -12815,6 +13220,9 @@ experimental domain Preload PrefetchNotEligibleSchemeIsNotHttps PrefetchNotEligibleUserHasCookies PrefetchNotEligibleUserHasServiceWorker + PrefetchNotEligibleUserHasServiceWorkerNoFetchHandler + PrefetchNotEligibleRedirectFromServiceWorker + PrefetchNotEligibleRedirectToServiceWorker PrefetchNotEligibleBatterySaverEnabled PrefetchNotEligiblePreloadingDisabled PrefetchNotFinishedInTime @@ -13092,6 +13500,33 @@ experimental domain BluetoothEmulation powered-off powered-on + # Indicates the various types of GATT event. + type GATTOperationType extends string + enum + connection + discovery + + # Indicates the various types of characteristic write. + type CharacteristicWriteType extends string + enum + write-default-deprecated + write-with-response + write-without-response + + # Indicates the various types of characteristic operation. + type CharacteristicOperationType extends string + enum + read + write + subscribe-to-notifications + unsubscribe-from-notifications + + # Indicates the various types of descriptor operation. + type DescriptorOperationType extends string + enum + read + write + # Stores the manufacturer data type ManufacturerData extends object properties @@ -13122,8 +13557,29 @@ experimental domain BluetoothEmulation integer rssi ScanRecord scanRecord + # Describes the properties of a characteristic. This follows Bluetooth Core + # Specification BT 4.2 Vol 3 Part G 3.3.1. Characteristic Properties. + type CharacteristicProperties extends object + properties + optional boolean broadcast + optional boolean read + optional boolean writeWithoutResponse + optional boolean write + optional boolean notify + optional boolean indicate + optional boolean authenticatedSignedWrites + optional boolean extendedProperties + # Enable the BluetoothEmulation domain. command enable + parameters + # State of the simulated central. + CentralState state + # If the simulated central supports low-energy. + boolean leSupported + + # Set the state of the simulated central. + command setSimulatedCentralState parameters # State of the simulated central. CentralState state @@ -13145,3 +13601,113 @@ experimental domain BluetoothEmulation command simulateAdvertisement parameters ScanEntry entry + + # Simulates the response code from the peripheral with |address| for a + # GATT operation of |type|. The |code| value follows the HCI Error Codes from + # Bluetooth Core Specification Vol 2 Part D 1.3 List Of Error Codes. + command simulateGATTOperationResponse + parameters + string address + GATTOperationType type + integer code + + # Simulates the response from the characteristic with |characteristicId| for a + # characteristic operation of |type|. The |code| value follows the Error + # Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. + # The |data| is expected to exist when simulating a successful read operation + # response. + command simulateCharacteristicOperationResponse + parameters + string characteristicId + CharacteristicOperationType type + integer code + optional binary data + + # Simulates the response from the descriptor with |descriptorId| for a + # descriptor operation of |type|. The |code| value follows the Error + # Codes from Bluetooth Core Specification Vol 3 Part F 3.4.1.1 Error Response. + # The |data| is expected to exist when simulating a successful read operation + # response. + command simulateDescriptorOperationResponse + parameters + string descriptorId + DescriptorOperationType type + integer code + optional binary data + + # Adds a service with |serviceUuid| to the peripheral with |address|. + command addService + parameters + string address + string serviceUuid + returns + # An identifier that uniquely represents this service. + string serviceId + + # Removes the service respresented by |serviceId| from the simulated central. + command removeService + parameters + string serviceId + + # Adds a characteristic with |characteristicUuid| and |properties| to the + # service represented by |serviceId|. + command addCharacteristic + parameters + string serviceId + string characteristicUuid + CharacteristicProperties properties + returns + # An identifier that uniquely represents this characteristic. + string characteristicId + + # Removes the characteristic respresented by |characteristicId| from the + # simulated central. + command removeCharacteristic + parameters + string characteristicId + + # Adds a descriptor with |descriptorUuid| to the characteristic respresented + # by |characteristicId|. + command addDescriptor + parameters + string characteristicId + string descriptorUuid + returns + # An identifier that uniquely represents this descriptor. + string descriptorId + + # Removes the descriptor with |descriptorId| from the simulated central. + command removeDescriptor + parameters + string descriptorId + + # Simulates a GATT disconnection from the peripheral with |address|. + command simulateGATTDisconnection + parameters + string address + + # Event for when a GATT operation of |type| to the peripheral with |address| + # happened. + event gattOperationReceived + parameters + string address + GATTOperationType type + + # Event for when a characteristic operation of |type| to the characteristic + # respresented by |characteristicId| happened. |data| and |writeType| is + # expected to exist when |type| is write. + event characteristicOperationReceived + parameters + string characteristicId + CharacteristicOperationType type + optional binary data + optional CharacteristicWriteType writeType + + # Event for when a descriptor operation of |type| to the descriptor + # respresented by |descriptorId| happened. |data| is expected to exist when + # |type| is write. + event descriptorOperationReceived + parameters + string descriptorId + DescriptorOperationType type + optional binary data diff --git a/common/devtools/chromium/v135/js_protocol.pdl b/common/devtools/chromium/v138/js_protocol.pdl similarity index 99% rename from common/devtools/chromium/v135/js_protocol.pdl rename to common/devtools/chromium/v138/js_protocol.pdl index e33cdae701a12..73da9149b5d8b 100644 --- a/common/devtools/chromium/v135/js_protocol.pdl +++ b/common/devtools/chromium/v138/js_protocol.pdl @@ -649,7 +649,7 @@ domain Debugger Runtime.ExecutionContextId executionContextId # Content hash of the script, SHA-256. string hash - # For Wasm modules, the content of the `build_id` custom section. + # For Wasm modules, the content of the `build_id` custom section. For JavaScript the `debugId` magic comment. string buildId # Embedder-specific auxiliary data likely matching {isDefault: boolean, type: 'default'|'isolated'|'worker', frameId: string} optional object executionContextAuxData @@ -690,7 +690,7 @@ domain Debugger Runtime.ExecutionContextId executionContextId # Content hash of the script, SHA-256. string hash - # For Wasm modules, the content of the `build_id` custom section. + # For Wasm modules, the content of the `build_id` custom section. For JavaScript the `debugId` magic comment. string buildId # Embedder-specific auxiliary data likely matching {isDefault: boolean, type: 'default'|'isolated'|'worker', frameId: string} optional object executionContextAuxData diff --git a/dotnet/selenium-dotnet-version.bzl b/dotnet/selenium-dotnet-version.bzl index f72c9790bdaf7..fa726ac7da73d 100644 --- a/dotnet/selenium-dotnet-version.bzl +++ b/dotnet/selenium-dotnet-version.bzl @@ -6,7 +6,7 @@ SUPPORTED_NET_STANDARD_VERSIONS = ["netstandard2.0"] SUPPORTED_DEVTOOLS_VERSIONS = [ "v137", - "v135", + "v138", "v136", ] diff --git a/dotnet/src/webdriver/DevTools/DevToolsDomains.cs b/dotnet/src/webdriver/DevTools/DevToolsDomains.cs index 12dccf038f6c9..0faf57a0e5998 100644 --- a/dotnet/src/webdriver/DevTools/DevToolsDomains.cs +++ b/dotnet/src/webdriver/DevTools/DevToolsDomains.cs @@ -37,14 +37,14 @@ public abstract class DevToolsDomains private static int[] SupportedDevToolsVersions => [ 136, - 135, + 138, 137, ]; private static DevToolsDomains? CreateDevToolsDomain(int protocolVersion, DevToolsSession session) => protocolVersion switch { 136 => new V136.V136Domains(session), - 135 => new V135.V135Domains(session), + 138 => new V138.V138Domains(session), 137 => new V137.V137Domains(session), _ => null }; diff --git a/dotnet/src/webdriver/DevTools/v135/V135Domains.cs b/dotnet/src/webdriver/DevTools/v138/V138Domains.cs similarity index 78% rename from dotnet/src/webdriver/DevTools/v135/V135Domains.cs rename to dotnet/src/webdriver/DevTools/v138/V138Domains.cs index fe69a098b8074..6690a4c096272 100644 --- a/dotnet/src/webdriver/DevTools/v135/V135Domains.cs +++ b/dotnet/src/webdriver/DevTools/v138/V138Domains.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -19,21 +19,21 @@ using System; -namespace OpenQA.Selenium.DevTools.V135; +namespace OpenQA.Selenium.DevTools.V138; /// -/// Class containing the domain implementation for version 135 of the DevTools Protocol. +/// Class containing the domain implementation for version 138 of the DevTools Protocol. /// -public class V135Domains : DevToolsDomains +public class V138Domains : DevToolsDomains { private readonly DevToolsSessionDomains domains; /// - /// Initializes a new instance of the V135Domains class. + /// Initializes a new instance of the V138Domains class. /// /// The DevToolsSession to use with this set of domains. /// If is . - public V135Domains(DevToolsSession session) + public V138Domains(DevToolsSession session) { this.domains = new DevToolsSessionDomains(session ?? throw new ArgumentNullException(nameof(session))); } @@ -41,7 +41,7 @@ public V135Domains(DevToolsSession session) /// /// Gets the DevTools Protocol version for which this class is valid. /// - public static int DevToolsVersion => 135; + public static int DevToolsVersion => 138; /// /// Gets the version-specific domains for the DevTools session. This value must be cast to a version specific type to be at all useful. @@ -51,20 +51,20 @@ public V135Domains(DevToolsSession session) /// /// Gets the object used for manipulating network information in the browser. /// - public override DevTools.Network Network => new V135Network(domains.Network, domains.Fetch); + public override DevTools.Network Network => new V138Network(domains.Network, domains.Fetch); /// /// Gets the object used for manipulating the browser's JavaScript execution. /// - public override JavaScript JavaScript => new V135JavaScript(domains.Runtime, domains.Page); + public override JavaScript JavaScript => new V138JavaScript(domains.Runtime, domains.Page); /// /// Gets the object used for manipulating DevTools Protocol targets. /// - public override DevTools.Target Target => new V135Target(domains.Target); + public override DevTools.Target Target => new V138Target(domains.Target); /// /// Gets the object used for manipulating the browser's logs. /// - public override DevTools.Log Log => new V135Log(domains.Log); + public override DevTools.Log Log => new V138Log(domains.Log); } diff --git a/dotnet/src/webdriver/DevTools/v135/V135JavaScript.cs b/dotnet/src/webdriver/DevTools/v138/V138JavaScript.cs similarity index 94% rename from dotnet/src/webdriver/DevTools/v135/V135JavaScript.cs rename to dotnet/src/webdriver/DevTools/v138/V138JavaScript.cs index 8f1cc5776f70b..56c600d531a99 100644 --- a/dotnet/src/webdriver/DevTools/v135/V135JavaScript.cs +++ b/dotnet/src/webdriver/DevTools/v138/V138JavaScript.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,29 +17,29 @@ // under the License. // -using OpenQA.Selenium.DevTools.V135.Page; -using OpenQA.Selenium.DevTools.V135.Runtime; +using OpenQA.Selenium.DevTools.V138.Page; +using OpenQA.Selenium.DevTools.V138.Runtime; using System; using System.Collections.Generic; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V135; +namespace OpenQA.Selenium.DevTools.V138; /// -/// Class containing the JavaScript implementation for version 135 of the DevTools Protocol. +/// Class containing the JavaScript implementation for version 138 of the DevTools Protocol. /// -public class V135JavaScript : JavaScript +public class V138JavaScript : JavaScript { private readonly RuntimeAdapter runtime; private readonly PageAdapter page; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The DevTools Protocol adapter for the Runtime domain. /// The DevTools Protocol adapter for the Page domain. /// If or are . - public V135JavaScript(RuntimeAdapter runtime, PageAdapter page) + public V138JavaScript(RuntimeAdapter runtime, PageAdapter page) { this.runtime = runtime ?? throw new ArgumentNullException(nameof(runtime)); this.page = page ?? throw new ArgumentNullException(nameof(page)); diff --git a/dotnet/src/webdriver/DevTools/v135/V135Log.cs b/dotnet/src/webdriver/DevTools/v138/V138Log.cs similarity index 88% rename from dotnet/src/webdriver/DevTools/v135/V135Log.cs rename to dotnet/src/webdriver/DevTools/v138/V138Log.cs index f58890627da81..0c2cd7fbd1332 100644 --- a/dotnet/src/webdriver/DevTools/v135/V135Log.cs +++ b/dotnet/src/webdriver/DevTools/v138/V138Log.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,25 +17,25 @@ // under the License. // -using OpenQA.Selenium.DevTools.V135.Log; +using OpenQA.Selenium.DevTools.V138.Log; using System; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V135; +namespace OpenQA.Selenium.DevTools.V138; /// -/// Class containing the browser's log as referenced by version 135 of the DevTools Protocol. +/// Class containing the browser's log as referenced by version 138 of the DevTools Protocol. /// -public class V135Log : DevTools.Log +public class V138Log : DevTools.Log { private LogAdapter adapter; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Log domain. /// If is . - public V135Log(LogAdapter adapter) + public V138Log(LogAdapter adapter) { this.adapter = adapter ?? throw new ArgumentNullException(nameof(adapter)); this.adapter.EntryAdded += OnAdapterEntryAdded; diff --git a/dotnet/src/webdriver/DevTools/v135/V135Network.cs b/dotnet/src/webdriver/DevTools/v138/V138Network.cs similarity index 95% rename from dotnet/src/webdriver/DevTools/v135/V135Network.cs rename to dotnet/src/webdriver/DevTools/v138/V138Network.cs index d01128d823d68..4c6dc50976b81 100644 --- a/dotnet/src/webdriver/DevTools/v135/V135Network.cs +++ b/dotnet/src/webdriver/DevTools/v138/V138Network.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,30 +17,30 @@ // under the License. // -using OpenQA.Selenium.DevTools.V135.Fetch; -using OpenQA.Selenium.DevTools.V135.Network; +using OpenQA.Selenium.DevTools.V138.Fetch; +using OpenQA.Selenium.DevTools.V138.Network; using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V135; +namespace OpenQA.Selenium.DevTools.V138; /// -/// Class providing functionality for manipulating network calls using version 135 of the DevTools Protocol +/// Class providing functionality for manipulating network calls using version 138 of the DevTools Protocol /// -public class V135Network : DevTools.Network +public class V138Network : DevTools.Network { private FetchAdapter fetch; private NetworkAdapter network; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Network domain. /// The adapter for the Fetch domain. /// If or are . - public V135Network(NetworkAdapter network, FetchAdapter fetch) + public V138Network(NetworkAdapter network, FetchAdapter fetch) { this.network = network ?? throw new ArgumentNullException(nameof(network)); this.fetch = fetch ?? throw new ArgumentNullException(nameof(fetch)); @@ -247,9 +247,9 @@ public override async Task ContinueWithAuth(string requestId, string? userName, await fetch.ContinueWithAuth(new ContinueWithAuthCommandSettings() { RequestId = requestId, - AuthChallengeResponse = new V135.Fetch.AuthChallengeResponse() + AuthChallengeResponse = new V138.Fetch.AuthChallengeResponse() { - Response = V135.Fetch.AuthChallengeResponseResponseValues.ProvideCredentials, + Response = V138.Fetch.AuthChallengeResponseResponseValues.ProvideCredentials, Username = userName, Password = password } @@ -266,9 +266,9 @@ public override async Task CancelAuth(string requestId) await fetch.ContinueWithAuth(new ContinueWithAuthCommandSettings() { RequestId = requestId, - AuthChallengeResponse = new OpenQA.Selenium.DevTools.V135.Fetch.AuthChallengeResponse() + AuthChallengeResponse = new OpenQA.Selenium.DevTools.V138.Fetch.AuthChallengeResponse() { - Response = V135.Fetch.AuthChallengeResponseResponseValues.CancelAuth + Response = V138.Fetch.AuthChallengeResponseResponseValues.CancelAuth } }).ConfigureAwait(false); } diff --git a/dotnet/src/webdriver/DevTools/v135/V135Target.cs b/dotnet/src/webdriver/DevTools/v138/V138Target.cs similarity index 94% rename from dotnet/src/webdriver/DevTools/v135/V135Target.cs rename to dotnet/src/webdriver/DevTools/v138/V138Target.cs index bcfd9fde4bd2d..3b5d79b8352bf 100644 --- a/dotnet/src/webdriver/DevTools/v135/V135Target.cs +++ b/dotnet/src/webdriver/DevTools/v138/V138Target.cs @@ -1,4 +1,4 @@ -// +// // Licensed to the Software Freedom Conservancy (SFC) under one // or more contributor license agreements. See the NOTICE file // distributed with this work for additional information @@ -17,27 +17,27 @@ // under the License. // -using OpenQA.Selenium.DevTools.V135.Target; +using OpenQA.Selenium.DevTools.V138.Target; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V135; +namespace OpenQA.Selenium.DevTools.V138; /// -/// Class providing functionality for manipulating targets for version 135 of the DevTools Protocol +/// Class providing functionality for manipulating targets for version 138 of the DevTools Protocol /// -public class V135Target : DevTools.Target +public class V138Target : DevTools.Target { private readonly TargetAdapter adapter; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Target domain. /// If is . - public V135Target(TargetAdapter adapter) + public V138Target(TargetAdapter adapter) { this.adapter = adapter ?? throw new ArgumentNullException(nameof(adapter)); adapter.DetachedFromTarget += OnDetachedFromTarget; diff --git a/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs b/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs index 428ca26ddc09f..09bebb9dd5c0e 100644 --- a/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs +++ b/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs @@ -39,6 +39,6 @@ public StableChannelChromeDriver(ChromeDriverService service, ChromeOptions opti public static ChromeOptions DefaultOptions { - get { return new ChromeOptions() { BrowserVersion = "137" }; } + get { return new ChromeOptions() { BrowserVersion = "138" }; } } } diff --git a/dotnet/test/common/DevTools/DevToolsConsoleTest.cs b/dotnet/test/common/DevTools/DevToolsConsoleTest.cs index f86ef3409de12..9a0ea7d3f16cc 100644 --- a/dotnet/test/common/DevTools/DevToolsConsoleTest.cs +++ b/dotnet/test/common/DevTools/DevToolsConsoleTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsConsoleTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsLogTest.cs b/dotnet/test/common/DevTools/DevToolsLogTest.cs index 3d64e8b9fc19f..ee71ab5442426 100644 --- a/dotnet/test/common/DevTools/DevToolsLogTest.cs +++ b/dotnet/test/common/DevTools/DevToolsLogTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsLogTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsNetworkTest.cs b/dotnet/test/common/DevTools/DevToolsNetworkTest.cs index f003a71d080fb..a2071ca98d134 100644 --- a/dotnet/test/common/DevTools/DevToolsNetworkTest.cs +++ b/dotnet/test/common/DevTools/DevToolsNetworkTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsNetworkTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs b/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs index da35403f14998..627f30e06c25f 100644 --- a/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs +++ b/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs @@ -22,7 +22,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsPerformanceTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsProfilerTest.cs b/dotnet/test/common/DevTools/DevToolsProfilerTest.cs index 412d83b7f6837..02bc7b8c547f7 100644 --- a/dotnet/test/common/DevTools/DevToolsProfilerTest.cs +++ b/dotnet/test/common/DevTools/DevToolsProfilerTest.cs @@ -24,7 +24,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsProfilerTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsSecurityTest.cs b/dotnet/test/common/DevTools/DevToolsSecurityTest.cs index 515420797c391..e7e53a782f349 100644 --- a/dotnet/test/common/DevTools/DevToolsSecurityTest.cs +++ b/dotnet/test/common/DevTools/DevToolsSecurityTest.cs @@ -25,7 +25,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsSecurityTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsTabsTest.cs b/dotnet/test/common/DevTools/DevToolsTabsTest.cs index 08cd061623712..be849ca56e444 100644 --- a/dotnet/test/common/DevTools/DevToolsTabsTest.cs +++ b/dotnet/test/common/DevTools/DevToolsTabsTest.cs @@ -22,7 +22,7 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsTabsTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsTargetTest.cs b/dotnet/test/common/DevTools/DevToolsTargetTest.cs index 7a0c736abde28..babe3055aa275 100644 --- a/dotnet/test/common/DevTools/DevToolsTargetTest.cs +++ b/dotnet/test/common/DevTools/DevToolsTargetTest.cs @@ -25,12 +25,12 @@ namespace OpenQA.Selenium.DevTools; -using CurrentCdpVersion = V137; +using CurrentCdpVersion = V138; [TestFixture] public class DevToolsTargetTest : DevToolsTestFixture { - private int id = 137; + private int id = 138; [Test] [IgnoreBrowser(Selenium.Browser.IE, "IE does not support Chrome DevTools Protocol")] diff --git a/java/src/org/openqa/selenium/devtools/v135/BUILD.bazel b/java/src/org/openqa/selenium/devtools/v138/BUILD.bazel similarity index 98% rename from java/src/org/openqa/selenium/devtools/v135/BUILD.bazel rename to java/src/org/openqa/selenium/devtools/v138/BUILD.bazel index 9732073a67806..e7547485245ca 100644 --- a/java/src/org/openqa/selenium/devtools/v135/BUILD.bazel +++ b/java/src/org/openqa/selenium/devtools/v138/BUILD.bazel @@ -2,7 +2,7 @@ load("//common:defs.bzl", "copy_file") load("//java:defs.bzl", "java_export", "java_library") load("//java:version.bzl", "SE_VERSION") -cdp_version = "v135" +cdp_version = "v138" java_export( name = cdp_version, diff --git a/java/src/org/openqa/selenium/devtools/v135/v135CdpInfo.java b/java/src/org/openqa/selenium/devtools/v138/v138CdpInfo.java similarity index 86% rename from java/src/org/openqa/selenium/devtools/v135/v135CdpInfo.java rename to java/src/org/openqa/selenium/devtools/v138/v138CdpInfo.java index e792607960d1d..cfe0f686276df 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135CdpInfo.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138CdpInfo.java @@ -15,15 +15,15 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import com.google.auto.service.AutoService; import org.openqa.selenium.devtools.CdpInfo; @AutoService(CdpInfo.class) -public class v135CdpInfo extends CdpInfo { +public class v138CdpInfo extends CdpInfo { - public v135CdpInfo() { - super(135, v135Domains::new); + public v138CdpInfo() { + super(138, v138Domains::new); } } diff --git a/java/src/org/openqa/selenium/devtools/v135/v135Domains.java b/java/src/org/openqa/selenium/devtools/v138/v138Domains.java similarity index 77% rename from java/src/org/openqa/selenium/devtools/v135/v135Domains.java rename to java/src/org/openqa/selenium/devtools/v138/v138Domains.java index 289f7ebd19c72..f62ca057db166 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135Domains.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138Domains.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import org.openqa.selenium.devtools.DevTools; import org.openqa.selenium.devtools.idealized.Domains; @@ -26,21 +26,21 @@ import org.openqa.selenium.devtools.idealized.target.Target; import org.openqa.selenium.internal.Require; -public class v135Domains implements Domains { +public class v138Domains implements Domains { - private final v135Javascript js; - private final v135Events events; - private final v135Log log; - private final v135Network network; - private final v135Target target; + private final v138Javascript js; + private final v138Events events; + private final v138Log log; + private final v138Network network; + private final v138Target target; - public v135Domains(DevTools devtools) { + public v138Domains(DevTools devtools) { Require.nonNull("DevTools", devtools); - events = new v135Events(devtools); - js = new v135Javascript(devtools); - log = new v135Log(); - network = new v135Network(devtools); - target = new v135Target(); + events = new v138Events(devtools); + js = new v138Javascript(devtools); + log = new v138Log(); + network = new v138Network(devtools); + target = new v138Target(); } @Override diff --git a/java/src/org/openqa/selenium/devtools/v135/v135Events.java b/java/src/org/openqa/selenium/devtools/v138/v138Events.java similarity index 86% rename from java/src/org/openqa/selenium/devtools/v135/v135Events.java rename to java/src/org/openqa/selenium/devtools/v138/v138Events.java index 33cdf5dec367e..b4f96f804d99e 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135Events.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138Events.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import java.time.Instant; import java.util.List; @@ -28,15 +28,15 @@ import org.openqa.selenium.devtools.events.ConsoleEvent; import org.openqa.selenium.devtools.idealized.Events; import org.openqa.selenium.devtools.idealized.runtime.model.RemoteObject; -import org.openqa.selenium.devtools.v135.runtime.Runtime; -import org.openqa.selenium.devtools.v135.runtime.model.ConsoleAPICalled; -import org.openqa.selenium.devtools.v135.runtime.model.ExceptionDetails; -import org.openqa.selenium.devtools.v135.runtime.model.ExceptionThrown; -import org.openqa.selenium.devtools.v135.runtime.model.StackTrace; +import org.openqa.selenium.devtools.v138.runtime.Runtime; +import org.openqa.selenium.devtools.v138.runtime.model.ConsoleAPICalled; +import org.openqa.selenium.devtools.v138.runtime.model.ExceptionDetails; +import org.openqa.selenium.devtools.v138.runtime.model.ExceptionThrown; +import org.openqa.selenium.devtools.v138.runtime.model.StackTrace; -public class v135Events extends Events { +public class v138Events extends Events { - public v135Events(DevTools devtools) { + public v138Events(DevTools devtools) { super(devtools); } @@ -77,7 +77,7 @@ protected ConsoleEvent toConsoleEvent(ConsoleAPICalled event) { protected JavascriptException toJsException(ExceptionThrown event) { ExceptionDetails details = event.getExceptionDetails(); Optional maybeTrace = details.getStackTrace(); - Optional maybeException = + Optional maybeException = details.getException(); String message = diff --git a/java/src/org/openqa/selenium/devtools/v135/v135Javascript.java b/java/src/org/openqa/selenium/devtools/v138/v138Javascript.java similarity index 85% rename from java/src/org/openqa/selenium/devtools/v135/v135Javascript.java rename to java/src/org/openqa/selenium/devtools/v138/v138Javascript.java index e1da1716e7caf..32a431898f3d7 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135Javascript.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138Javascript.java @@ -15,21 +15,21 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import java.util.Optional; import org.openqa.selenium.devtools.Command; import org.openqa.selenium.devtools.DevTools; import org.openqa.selenium.devtools.Event; import org.openqa.selenium.devtools.idealized.Javascript; -import org.openqa.selenium.devtools.v135.page.Page; -import org.openqa.selenium.devtools.v135.page.model.ScriptIdentifier; -import org.openqa.selenium.devtools.v135.runtime.Runtime; -import org.openqa.selenium.devtools.v135.runtime.model.BindingCalled; +import org.openqa.selenium.devtools.v138.page.Page; +import org.openqa.selenium.devtools.v138.page.model.ScriptIdentifier; +import org.openqa.selenium.devtools.v138.runtime.Runtime; +import org.openqa.selenium.devtools.v138.runtime.model.BindingCalled; -public class v135Javascript extends Javascript { +public class v138Javascript extends Javascript { - public v135Javascript(DevTools devtools) { + public v138Javascript(DevTools devtools) { super(devtools); } diff --git a/java/src/org/openqa/selenium/devtools/v135/v135Log.java b/java/src/org/openqa/selenium/devtools/v138/v138Log.java similarity index 89% rename from java/src/org/openqa/selenium/devtools/v135/v135Log.java rename to java/src/org/openqa/selenium/devtools/v138/v138Log.java index a277d11095310..1a01250fd65af 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135Log.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138Log.java @@ -15,19 +15,19 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import java.util.function.Function; import java.util.logging.Level; import org.openqa.selenium.devtools.Command; import org.openqa.selenium.devtools.ConverterFunctions; import org.openqa.selenium.devtools.Event; -import org.openqa.selenium.devtools.v135.log.Log; -import org.openqa.selenium.devtools.v135.log.model.LogEntry; -import org.openqa.selenium.devtools.v135.runtime.model.Timestamp; +import org.openqa.selenium.devtools.v138.log.Log; +import org.openqa.selenium.devtools.v138.log.model.LogEntry; +import org.openqa.selenium.devtools.v138.runtime.model.Timestamp; import org.openqa.selenium.json.JsonInput; -public class v135Log implements org.openqa.selenium.devtools.idealized.log.Log { +public class v138Log implements org.openqa.selenium.devtools.idealized.log.Log { @Override public Command enable() { diff --git a/java/src/org/openqa/selenium/devtools/v135/v135Network.java b/java/src/org/openqa/selenium/devtools/v138/v138Network.java similarity index 92% rename from java/src/org/openqa/selenium/devtools/v135/v135Network.java rename to java/src/org/openqa/selenium/devtools/v138/v138Network.java index 62f23643de2e8..3ec0dfa36cbe3 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135Network.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138Network.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import static java.net.HttpURLConnection.HTTP_OK; @@ -30,35 +30,35 @@ import org.openqa.selenium.devtools.DevToolsException; import org.openqa.selenium.devtools.Event; import org.openqa.selenium.devtools.idealized.Network; -import org.openqa.selenium.devtools.v135.fetch.Fetch; -import org.openqa.selenium.devtools.v135.fetch.model.*; -import org.openqa.selenium.devtools.v135.network.model.Request; +import org.openqa.selenium.devtools.v138.fetch.Fetch; +import org.openqa.selenium.devtools.v138.fetch.model.*; +import org.openqa.selenium.devtools.v138.network.model.Request; import org.openqa.selenium.internal.Either; import org.openqa.selenium.remote.http.HttpRequest; import org.openqa.selenium.remote.http.HttpResponse; -public class v135Network extends Network { +public class v138Network extends Network { - private static final Logger LOG = Logger.getLogger(v135Network.class.getName()); + private static final Logger LOG = Logger.getLogger(v138Network.class.getName()); - public v135Network(DevTools devTools) { + public v138Network(DevTools devTools) { super(devTools); } @Override protected Command setUserAgentOverride(UserAgent userAgent) { - return org.openqa.selenium.devtools.v135.network.Network.setUserAgentOverride( + return org.openqa.selenium.devtools.v138.network.Network.setUserAgentOverride( userAgent.userAgent(), userAgent.acceptLanguage(), userAgent.platform(), Optional.empty()); } @Override protected Command enableNetworkCaching() { - return org.openqa.selenium.devtools.v135.network.Network.setCacheDisabled(false); + return org.openqa.selenium.devtools.v138.network.Network.setCacheDisabled(false); } @Override protected Command disableNetworkCaching() { - return org.openqa.selenium.devtools.v135.network.Network.setCacheDisabled(true); + return org.openqa.selenium.devtools.v138.network.Network.setCacheDisabled(true); } @Override diff --git a/java/src/org/openqa/selenium/devtools/v135/v135Target.java b/java/src/org/openqa/selenium/devtools/v138/v138Target.java similarity index 83% rename from java/src/org/openqa/selenium/devtools/v135/v135Target.java rename to java/src/org/openqa/selenium/devtools/v138/v138Target.java index c36c6bcf3c00f..bbe2624d97e81 100644 --- a/java/src/org/openqa/selenium/devtools/v135/v135Target.java +++ b/java/src/org/openqa/selenium/devtools/v138/v138Target.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v135; +package org.openqa.selenium.devtools.v138; import java.util.List; import java.util.Map; @@ -28,21 +28,21 @@ import org.openqa.selenium.devtools.idealized.browser.model.BrowserContextID; import org.openqa.selenium.devtools.idealized.target.model.SessionID; import org.openqa.selenium.devtools.idealized.target.model.TargetID; -import org.openqa.selenium.devtools.v135.target.Target; -import org.openqa.selenium.devtools.v135.target.model.TargetInfo; +import org.openqa.selenium.devtools.v138.target.Target; +import org.openqa.selenium.devtools.v138.target.model.TargetInfo; import org.openqa.selenium.json.JsonInput; import org.openqa.selenium.json.TypeToken; -public class v135Target implements org.openqa.selenium.devtools.idealized.target.Target { +public class v138Target implements org.openqa.selenium.devtools.idealized.target.Target { @Override public Command detachFromTarget( Optional sessionId, Optional targetId) { return Target.detachFromTarget( sessionId.map( - id -> new org.openqa.selenium.devtools.v135.target.model.SessionID(id.toString())), + id -> new org.openqa.selenium.devtools.v138.target.model.SessionID(id.toString())), targetId.map( - id -> new org.openqa.selenium.devtools.v135.target.model.TargetID(id.toString()))); + id -> new org.openqa.selenium.devtools.v138.target.model.TargetID(id.toString()))); } @Override @@ -74,19 +74,19 @@ public Command detachFromTarget( @Override public Command attachToTarget(TargetID targetId) { - Function mapper = + Function mapper = ConverterFunctions.map( - "sessionId", org.openqa.selenium.devtools.v135.target.model.SessionID.class); + "sessionId", org.openqa.selenium.devtools.v138.target.model.SessionID.class); return new Command<>( "Target.attachToTarget", Map.of( "targetId", - new org.openqa.selenium.devtools.v135.target.model.TargetID(targetId.toString()), + new org.openqa.selenium.devtools.v138.target.model.TargetID(targetId.toString()), "flatten", true), input -> { - org.openqa.selenium.devtools.v135.target.model.SessionID id = mapper.apply(input); + org.openqa.selenium.devtools.v138.target.model.SessionID id = mapper.apply(input); return new SessionID(id.toString()); }); } @@ -101,9 +101,9 @@ public Event detached() { return new Event<>( "Target.detachedFromTarget", input -> { - Function converter = + Function converter = ConverterFunctions.map( - "targetId", org.openqa.selenium.devtools.v135.target.model.TargetID.class); + "targetId", org.openqa.selenium.devtools.v138.target.model.TargetID.class); return new TargetID(converter.apply(input).toString()); }); } diff --git a/java/src/org/openqa/selenium/devtools/versions.bzl b/java/src/org/openqa/selenium/devtools/versions.bzl index da40116dfc664..b1cb9e7ed5e53 100644 --- a/java/src/org/openqa/selenium/devtools/versions.bzl +++ b/java/src/org/openqa/selenium/devtools/versions.bzl @@ -1,6 +1,6 @@ CDP_VERSIONS = [ "v137", - "v135", + "v138", "v136", ] diff --git a/javascript/selenium-webdriver/BUILD.bazel b/javascript/selenium-webdriver/BUILD.bazel index e806b44fcfa0f..90f0851268763 100644 --- a/javascript/selenium-webdriver/BUILD.bazel +++ b/javascript/selenium-webdriver/BUILD.bazel @@ -15,7 +15,7 @@ VERSION = "4.34.0-nightly202505232017" BROWSER_VERSIONS = [ "v137", - "v135", + "v138", "v136", ] diff --git a/py/BUILD.bazel b/py/BUILD.bazel index 79b79bd402207..3073488c8fedb 100644 --- a/py/BUILD.bazel +++ b/py/BUILD.bazel @@ -67,7 +67,7 @@ SE_VERSION = "4.34.0.202505232017" BROWSER_VERSIONS = [ "v137", - "v135", + "v138", "v136", ] diff --git a/rb/Gemfile.lock b/rb/Gemfile.lock index 19cca6382f2bf..9a75b6efcbf61 100644 --- a/rb/Gemfile.lock +++ b/rb/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - selenium-devtools (0.137.0) + selenium-devtools (0.138.0) selenium-webdriver (~> 4.2) selenium-webdriver (4.34.0.nightly) base64 (~> 0.2) diff --git a/rb/lib/selenium/devtools/BUILD.bazel b/rb/lib/selenium/devtools/BUILD.bazel index 7a6ee865a3d4c..49ac0c5deaccf 100644 --- a/rb/lib/selenium/devtools/BUILD.bazel +++ b/rb/lib/selenium/devtools/BUILD.bazel @@ -5,7 +5,7 @@ package(default_visibility = ["//rb:__subpackages__"]) CDP_VERSIONS = [ "v137", - "v135", + "v138", "v136", ] diff --git a/rb/lib/selenium/devtools/version.rb b/rb/lib/selenium/devtools/version.rb index 464235a967b91..fe26bde8d97d5 100644 --- a/rb/lib/selenium/devtools/version.rb +++ b/rb/lib/selenium/devtools/version.rb @@ -19,6 +19,6 @@ module Selenium module DevTools - VERSION = '0.137.0' + VERSION = '0.138.0' end # DevTools end # Selenium From ea72b07c71feb91f0583667d8efa83396bc5f72c Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 25 Jun 2025 16:52:05 +0000 Subject: [PATCH 03/18] update selenium manager versions --- common/selenium_manager.bzl | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/common/selenium_manager.bzl b/common/selenium_manager.bzl index 4eafc857cda4b..249504cdd6435 100644 --- a/common/selenium_manager.bzl +++ b/common/selenium_manager.bzl @@ -6,22 +6,22 @@ def selenium_manager(): http_file( name = "download_sm_linux", executable = True, - sha256 = "d0b9509e5485ced51e1af8c65f92028d80d150ef40177a5b25cc5a4bdff7eb8f", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-de70611/selenium-manager-linux", + sha256 = "50099355b0e74b8bb231a5b152fc3de498dcde1cdebcefb1e501713e9b124b9d", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-0ab9b6d/selenium-manager-linux", ) http_file( name = "download_sm_macos", executable = True, - sha256 = "737b89d42f60d00f2917b9a93a9f90da483554a9856a990887167e43987ff3fd", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-de70611/selenium-manager-macos", + sha256 = "eb98ce344acfaee3a7d58038331a8b49985ac724d2a9ec02258008c076979846", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-0ab9b6d/selenium-manager-macos", ) http_file( name = "download_sm_windows", executable = True, - sha256 = "a074d27eddab10c7cb602c9bcc5e8dbb42067f946f07f2253ee42f12564663bb", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-de70611/selenium-manager-windows.exe", + sha256 = "7090d5737aebabb9daad49022b070d3456b8e43ae7f3ac5bcb780af67c371b3f", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-0ab9b6d/selenium-manager-windows.exe", ) def _selenium_manager_artifacts_impl(_ctx): From eeecce9636de70ef9c96cfa07c5e0e8caf579915 Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 25 Jun 2025 16:52:52 +0000 Subject: [PATCH 04/18] update maven dependency versions --- MODULE.bazel | 22 +-- java/maven_install.json | 417 +++++++++++++++++++++++++--------------- 2 files changed, 273 insertions(+), 166 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index d623308cfd181..27127c0d58c3c 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -175,7 +175,7 @@ maven.install( name = "maven", artifacts = [ "com.beust:jcommander:1.82", - "com.github.javaparser:javaparser-core:3.26.4", + "com.github.javaparser:javaparser-core:3.27.0", "com.github.spotbugs:spotbugs:4.9.3", "com.github.stephenc.jcip:jcip-annotations:1.0-1", "com.google.code.findbugs:jsr305:3.0.2", @@ -187,8 +187,8 @@ maven.install( "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", - "io.lettuce:lettuce-core:6.6.0.RELEASE", + "io.grpc:grpc-context:1.73.0", + "io.lettuce:lettuce-core:6.7.1.RELEASE", "io.netty:netty-buffer", "io.netty:netty-codec-http", "io.netty:netty-codec-http2", @@ -207,11 +207,11 @@ maven.install( "io.opentelemetry:opentelemetry-sdk-trace", "it.ozimov:embedded-redis:0.7.3", "net.bytebuddy:byte-buddy:1.17.6", - "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.htmlunit:htmlunit-core-js:4.13.0", + "org.apache.commons:commons-exec:1.5.0", + "org.apache.logging.log4j:log4j-core:2.25.0", "org.assertj:assertj-core:3.27.3", - "org.bouncycastle:bcpkix-jdk18on:1.80", + "org.bouncycastle:bcpkix-jdk18on:1.81", "org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5", "org.hsqldb:hsqldb:2.7.4", "org.jspecify:jspecify:1.0.0", @@ -223,7 +223,7 @@ maven.install( "org.junit.platform:junit-platform-commons", "org.junit.platform:junit-platform-engine", "org.mockito:mockito-core:5.18.0", - "org.redisson:redisson:3.47.0", + "org.redisson:redisson:3.50.0", "org.slf4j:slf4j-api:2.0.17", "org.slf4j:slf4j-jdk14:2.0.17", "org.tomlj:tomlj:1.1.1", @@ -232,9 +232,9 @@ maven.install( "uk.org.webcompere:system-stubs-core:2.1.8", ], boms = [ - "io.opentelemetry:opentelemetry-bom:1.50.0", - "io.netty:netty-bom:4.1.121.Final", - "org.junit:junit-bom:5.12.2", + "io.opentelemetry:opentelemetry-bom:1.51.0", + "io.netty:netty-bom:4.2.2.Final", + "org.junit:junit-bom:5.13.2", ], excluded_artifacts = [ "org.hamcrest:hamcrest-all", # Replaced by hamcrest 2 diff --git a/java/maven_install.json b/java/maven_install.json index 2339401e18213..6cde3d7c048e6 100644 --- a/java/maven_install.json +++ b/java/maven_install.json @@ -1,7 +1,7 @@ { "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", - "__INPUT_ARTIFACTS_HASH": -1882913193, - "__RESOLVED_ARTIFACTS_HASH": -76667375, + "__INPUT_ARTIFACTS_HASH": -2040146999, + "__RESOLVED_ARTIFACTS_HASH": 1257087844, "artifacts": { "com.beust:jcommander": { "shasums": { @@ -59,12 +59,19 @@ }, "version": "2.18.2" }, + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { + "shasums": { + "jar": "e2d202d4606e23aeaf8a5a9632db06f5fefd5b63d251c3f503f9faaa78530e5c", + "sources": "40abc5db4e4a68da4a1841d7b3cd68bd60fbf7db00bb05dd6aa4617ea39856ee" + }, + "version": "2.18.2" + }, "com.github.javaparser:javaparser-core": { "shasums": { - "jar": "3b2d6c4451b2c675d4f4be10784c5681049529d11f3c4e5936f08ba90dd45c27", - "sources": "8121b9dd2361e52de0b9ef72d27a0c8e43702c279746d17a064c73d761101182" + "jar": "11b0deeaeb29f2496e1704c8c6f7593f14901f7253a671b81bdaa531bead779f", + "sources": "eb5b2d40b3a0be7e11164d9a75d1386f08156808abd12d67fa9a3e28728f520b" }, - "version": "3.26.4" + "version": "3.27.0" }, "com.github.spotbugs:spotbugs": { "shasums": { @@ -214,192 +221,220 @@ }, "io.grpc:grpc-api": { "shasums": { - "jar": "f7ca643e2a8cab338b3c3c37305da4084d81d75b66a2016018c1c0ab97b655d4", - "sources": "66395a625aadc0566664d033dc501e0e9479fb74c4987d917ffeb2ac0b9d0812" + "jar": "bae13d4e4716a0955d316b5fcb75582504325e5b11ac946b13b64b4fce19bc6e", + "sources": "fc7fa4405f7ce2d3c1001c94aba1d9ea9d0dfdb54e9a3738e87666997217649e" }, - "version": "1.72.0" + "version": "1.73.0" }, "io.grpc:grpc-context": { "shasums": { - "jar": "43b58ec3cd95c16627f5846d1b934564b22a2715885d0ebcdbb071212213db22", - "sources": "feae656a0c24f30d1e5fdab11d273f8d162cb07c0ca43157d19dcb97578e2e3f" + "jar": "d8d6911e225b55501692651272ce961ba5be1f76662ceb7f0aa79ecce8f63f25", + "sources": "dde30e64fb8e9422d865269f9baba7bd377539abe935e93e92a6d43d2d7950b6" }, - "version": "1.72.0" + "version": "1.73.0" }, "io.lettuce:lettuce-core": { "shasums": { - "jar": "724bcbd011e9e846e92a7a3f583db7478e2dba635bb844248217d0161b8cdba6", - "sources": "e8dabeabf67b7b30545af02bf05fe9f2e096171544463f5fe1b2c16f238cbcdd" + "jar": "5c3c76af52ae60b8a794c766e20051339d728d5c37986fc4afd98f8694800fc7", + "sources": "34b467b43c52ef74c09aa16bd228edd4d71fa6bbabc6b589f94d0d110bde25e8" }, - "version": "6.6.0.RELEASE" + "version": "6.7.1.RELEASE" }, "io.netty:netty-buffer": { "shasums": { - "jar": "7d6ce32479f6f1326637ba118061bad31c3f7279f5fc2887aae8cba2526dcbff", - "sources": "bf48a9e792d3e8a885ecd6047b456b4fb5c468da00a6a537582522a6df30ceba" + "jar": "4820eeb2d3db269b20b30711e3d7d21979664249aaf10fc67f90dee935810747", + "sources": "4a57786c994867467b551495b82a005c9572af2afa4ef56f51b746bf456c64e0" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-codec": { "shasums": { - "jar": "140f3a8d784aefd81700383471bd9220feb3438e5b1f441b6f80548529d9d516", - "sources": "f17c838addf2b7da6e826eb92c6fdb1a4024efeb5ab19e59701329cc9d63933f" + "jar": "6a4ea3cedc831a377e20e32da5df4d2a47b954810e941138e3358e313db3a7f9", + "sources": "4ebfe3e1601feafbbc816e410872a717a018e2395d5ec480c17ad910bbeb7f28" + }, + "version": "4.2.2.Final" + }, + "io.netty:netty-codec-base": { + "shasums": { + "jar": "76987614ccb2fda7d3292b69ba5b61351f30e91bf5c7d8fa4b51bc32c9f67456", + "sources": "a25927aa3302d3e414ea632fd3a4b18ab044a54479d68994cd493ab99053411d" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" + }, + "io.netty:netty-codec-compression": { + "shasums": { + "jar": "005734e20aceb5e2c030033f7e042c81ee444497efd110cfca8de445642652ac", + "sources": "a20ff815204c690e32f4231049217e04eb8829f58c9c1d2bae069ef49cc68c52" + }, + "version": "4.2.2.Final" }, "io.netty:netty-codec-dns": { "shasums": { - "jar": "1652e3aa9508f5bfcb400ce72d6f7b824b68bc2a15e347285f9a88b008eef821", - "sources": "e703097aaca60b51a44f1084a171f9f10a62dfb7dd831bf94d759f36c347adb4" + "jar": "08f203175291ba1496347ad8e7b7ff2a450a5485f6693ca7fdee1e921cfabc92", + "sources": "8b9109e2d9572a81b0a2c455dd528854dcb1f7aa446319b3d430a3afb525f8b9" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-codec-http": { "shasums": { - "jar": "5dab40173bdf9219a7d9f3ae94acb0659d5c0e20ff6d5ffbd7b39a1268c31c1a", - "sources": "ea12082b94cb758297fcc8e2a1f77aa06a0c6fefd7fa7e9c1ecefebbb7c1ef02" + "jar": "587377490ba0a73e2b928019383993fcccea30193eca42c4a164f2eb4d5b5642", + "sources": "864d9c5945d365ae00c1f52a865157dc5ec54fa96132e40bc6ab3000bc67ca42" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-codec-http2": { "shasums": { - "jar": "7513c0d74ae4c70b86b18fc7f25a2f97ae57b1cbdb38c5f6d547ea14d5ddecc7", - "sources": "4efd24503ee3741a860c3d81b63fb04852477c18bbef4896293ac2389888fc0f" + "jar": "1fd8512c2f9f242cc8f425782cd8cf04fc6c2db68736f82cd5c1d95cf6035513", + "sources": "d5ba80dc8d474ccfef1487081f54dffc51b8f9548f423b892e3396abf99f4ee2" + }, + "version": "4.2.2.Final" + }, + "io.netty:netty-codec-marshalling": { + "shasums": { + "jar": "ae8bb7a077ca02357c922e3abc1acf1bf191d5e2776721d69cbca50a16281096", + "sources": "f62c5fa987dce720a443a2a128db78f64327ce07ccbdeb2cea5c9133891b9103" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" + }, + "io.netty:netty-codec-protobuf": { + "shasums": { + "jar": "cfe0c7e6e68d83480a639b533eb7edaaf3252cfae8b73d0e362859673a4f9d97", + "sources": "f91224b8303064d8afae754f67ccc95f0f151af1aa58583b967fc999b69d24e8" + }, + "version": "4.2.2.Final" }, "io.netty:netty-codec-socks": { "shasums": { - "jar": "14ba49e5c4f56c62b1bd017f6b987df360a41093bbe9df340fc2e35b1c284b56", - "sources": "7af26df3ccc18832690f6baca36fa0224042c1b9c14068038c2912150b45ce22" + "jar": "801fb0cdc8aca4c2a95081df19c1db6d1020e2974cbe07ef145344b02dbf686c", + "sources": "619575a6e261e6530a82368240ff59febc2500fd5f507b975a89e53e6d0116e4" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-common": { "shasums": { - "jar": "58ddcad98fa2dbe69c9080e53e56e65cd50f61a3e45106b423cbad06b572a689", - "sources": "b4e2d483da54fa6030d451c15c7035f8a38abde1e6c630692abfc799e601b317" + "jar": "5d022f3acad74cb0f195f60213500a4000d1340e5e941edaf1a0e756686b9bae", + "sources": "f45ba0dc8a5f431036cad262ce30beaa4404efda487ccac950eded80d0fb2e32" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-handler": { "shasums": { - "jar": "ddf550c1f3dfc4fcf2cbfca483474ac68941df2cce4cc3e5bddcbb15065c5169", - "sources": "6ff5fb4f804ede12ebcf318ce458a3f71c9b3ee51023a3caa66711b9d7c40394" + "jar": "d4ef582c78125457baa0cfa52992b5fb1bb9172d1a2c03b726e8b26e17d3fe2c", + "sources": "9c2a4a8a3399de78c1a945e69c5d25b7eec9297d612f499ea3b8b9fbdf1121f4" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-handler-proxy": { "shasums": { - "jar": "2eb22bd8f0952ebd28503e01960c6ef96270dd3a7f0fa57b72ad0287ebdc238a", - "sources": "0f56bdb43afabaf19968e57bcadd67f8f3be84e2d86bbd8cda14387c2bea1b2f" + "jar": "23b1a31143d6278861631b7c2dc36bf46aa1af39e244ba71d03127ab8eced5e3", + "sources": "d8227ba919bc536e0332b2b063b3a677f0299265f4f417ded7f214a101dd86cb" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-resolver": { "shasums": { - "jar": "50ce227a5eb56e0b2e6b6c4e619de42350cbb9dff0728b906e3be8ad89158e87", - "sources": "e783e2ff5161de56d16250e848d350f9d866a93ef41947864bef1dff2b21bcc7" + "jar": "fa7841ffe2e39d52251814fb8560d6936b10ae7c67453ee50426b83fd5170ba0", + "sources": "b228ca14c1034ef4eec76b4917218a4185bb516796342de363a91a65b7a2f9b1" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-resolver-dns": { "shasums": { - "jar": "25a09642d926a9f8d552e2667765b9a847bfcf266b897717c409884e174dffd3", - "sources": "2072364b19db8804200ef3b8c6300a31f8becdcef85b12ed2b26ee8f84519646" + "jar": "6b0cf74a7dedcc80e22fcdd98bec81868ca93eea89ef78218a882b7d8ab15577", + "sources": "2b83399765cb46294e3ba7011e5562eca2455ec1931d09aa708d32155c9b7a0f" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-transport": { "shasums": { - "jar": "2dcc65e700858d3b080efb5a8af85a2de93d80b4616161fe031913fd840236ef", - "sources": "f469be248924c6752962ea437881f4c7ff59ca120b7c1c1fc4b54f8356fb84f1" + "jar": "116d766a1af4722fe76a4cdaed969644985d44e08ec1337d2dbab697dd109603", + "sources": "e3f8839e793dd794aff06aa150cb40b2237cfee976784ed58774dc95c6816378" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.netty:netty-transport-native-unix-common": { "shasums": { - "jar": "d8c368a320f5478e5745eee3525aca011219d61b848bc1c11e047ed18104bdea", - "sources": "baad6b89d0dd1a9cb7f646966c9d69cdb448ab7ed656fd3533a9969615080600" + "jar": "aa8821a7ea2ca47f62740bd1f37d67deb97824cc77e76dde6ae2c439a923fc9d", + "sources": "5fa97f134b87fef43ef69c844c7a2108a22bf1a37f6b3b88ace610d57367a457" }, - "version": "4.1.121.Final" + "version": "4.2.2.Final" }, "io.opentelemetry:opentelemetry-api": { "shasums": { - "jar": "2eaaac5f268b135f0e11dd30637d71df5751a0bb7ed6268659be57104d63122b", - "sources": "dd16312f56dbf8e67a14c511d7b5c5e86bd0f9491b4f2b08b675bd828191d3c6" + "jar": "ed88c2876e5a525ccbb56eb918d7955797b9a245f113d50b9798d1634a90951d", + "sources": "1616be544d1cc6eee2a883e6acc3f30afb617651e64e4d80a30006d2b29656c5" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-context": { "shasums": { - "jar": "76f9dfe1a6f74d5081e07bde1f7cb9a06879d317ec0ae0f61dd8fb2be9afad4f", - "sources": "6d23f01360c068fa709355d44d6cfd853cd53f96a62bc6820a72515562e9b76f" + "jar": "df4e308883ef2a2f28415140c5629901f72223f9ec713063f93395cff11bf4a1", + "sources": "299e253743294fb0ca777cc0f19cbb8bb9ead3fe36a0659a0c588252acf198db" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-exporter-logging": { "shasums": { - "jar": "2af293cac564d42a98539266255ae4153ec256399f72c88fbef609b3c450e7ce", - "sources": "72fd42df0d71eacc03e67faba87540bb0695c4d2729f3685a0c0437ef38d7798" + "jar": "00c6519cc34aca5d36d09ece3b828900a4d16f935770a40c348ab02d7d084b3c", + "sources": "49ba323d0b9b90f39b3933e0c75d3874a0e4a3986a78a1ef935262236e0cb50e" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk": { "shasums": { - "jar": "cd55d564a39d04ce57e3899044c3a4a3fe5d5fb59599386a9cb462afa61dcd1f", - "sources": "c512763ccdf60b0bab6233ee2f4016397f602ed0b866eb78f9dcb7cbb193e97d" + "jar": "728550e918f454661b4990521dc16a4a603f09d6a2840d44ac8191d6a09c5a91", + "sources": "27e65bdbd0b08084c9b810bd8323eb88be3f59bd7fe7ffcfa3a2ee4156d3916c" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-common": { "shasums": { - "jar": "0a8159a986ba2e84a1e6779adc313951b8c9948506ac3b42649a921c2a367602", - "sources": "97c03ed6faabd058892a77e97aa459d23dd9671abdfaff9393e5c1856b5dec3c" + "jar": "0454b7e14f09dbae3817b85c1b89bfe9ad9f3ae87f1aa8508689567ea5599921", + "sources": "8450f5b63609afe6c609150f6d21dc59b2a174d9959436b023fdd80d37d53a54" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure": { "shasums": { - "jar": "0c9abb505aef76b5bbed0554339e974b2c367ffd42389ba73c6caf7b63579591", - "sources": "503ce178c35472ef22053635a8d8b73fd34f7c4b03423040db0dbc33bba0c851" + "jar": "8c3db344efb69a60a9cfb72ca51e06a0945440f361dfe002883c0ef447d0868e", + "sources": "6c816fd791d81a16c0319abfbb0defc846e4141d0070f8328475722cc8904ffe" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi": { "shasums": { - "jar": "5c05e10cbf7a1d86ac21f93586572a3939e3a998b83c2b227b6fa8d5ad5c4923", - "sources": "4ccc985b84b8b34ee59a1def1b34985c9c4150e03ea9c636cb8e2d6123cb0752" + "jar": "e910ce6aedb71cbb585dcf1666822c6dde47f46cbbc8dbf25b16f8c27eb56c34", + "sources": "c8eccf7d7e45d7405e611416f7606ceb1b35ab750b93a3dca89f4e07f913da02" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-logs": { "shasums": { - "jar": "3c4913fcffea584b49c0b66cc0ed9ff363145c5d0dddd27587ba5e849c6c5ecc", - "sources": "649321dbfd39e5063da5184e27f39a0979b84e504633681e93738d920fbf108a" + "jar": "841623859d6d3fb3035521cb665638d696b7845c8b7a65c9f48d667a0063b1e0", + "sources": "f596a3d87eebf9dff24712a216260d01c6329e8e78f5b9ecc880ff03484f4632" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-metrics": { "shasums": { - "jar": "a86121f1478a1d4f3fd290471b83afcd4d9dc5ec66952bc679ce40ace60440f5", - "sources": "dec596f30c97f70366435959a2e06a8943d949f64624f1bffabc6b056320cf28" + "jar": "77d78294a5d9861565164999c1881e75abf5af98d6901ff4c6d6731ce169c31c", + "sources": "8297d9ea8654022886fa4514f902b1e7ea11cccaf4f4cb28de9d23ada4251cea" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-testing": { "shasums": { - "jar": "fb30af75958c71dc0c0fec128c023bc3252ed3d4c2cb070064fe53c0c37869e4", - "sources": "f07d5882d5fef02395dae8ef5e39c92fd565610868b79ad912a850c49d0e2f1d" + "jar": "b3d5efe1cff44c4da8cfcb55f918e3de6bbd75ba1ca3d1612d27046cc98e1cc4", + "sources": "7545648c8e72111613e4aa8cddc49f8fbfc6cedcf9992c160bc9bbffdb542691" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.opentelemetry:opentelemetry-sdk-trace": { "shasums": { - "jar": "985c5ce74d6d5544812bdcf0efda0eb00f783c0bdcac72be5be20eb96926dfc3", - "sources": "e47c1e722bc192865eeae851a1928cb680e3fba1efb0f73c1f2c52ad9e040820" + "jar": "5300c485d63e425925600f2daa9e7bbd9f81bd28dfc14a62922d9f46150fe730", + "sources": "8cd34f066fcc654c67082a597a0cb0af28b6fef988976221a4530f1f0281375a" }, - "version": "1.50.0" + "version": "1.51.0" }, "io.projectreactor:reactor-core": { "shasums": { @@ -473,10 +508,10 @@ }, "org.apache.commons:commons-exec": { "shasums": { - "jar": "f51cf8bee467efe2be76e46fc08078d96afa280a794283364291beda892a67ef", - "sources": "52dd9db2e64649143631680ca6dabcd75e4457761dddf5e72406086cd19eee88" + "jar": "d52d35801747902527826cca30734034e65baa7f36836cc0facf67131025f703", + "sources": "986906153ee8fe15c58e8df61eb6e18d1ecd2e8735d5df6598bdeee3fa7a55b9" }, - "version": "1.4.0" + "version": "1.5.0" }, "org.apache.commons:commons-lang3": { "shasums": { @@ -515,17 +550,17 @@ }, "org.apache.logging.log4j:log4j-api": { "shasums": { - "jar": "5b4a0a0cd0e751ded431c162442bdbdd53328d1f8bb2bae5fc1bbeee0f66d80f", - "sources": "a7e2290fd22242d85d8423efb8eff5fd7e14f80fed94bc959415d61cb8aa0d11" + "jar": "0393e32167240eb56597a2016446928755729f1a181046cab5d42a81d0e3d909", + "sources": "ee7c4c0666d2a68318235ad460b20167c1ef43f11d82102ff8efa24c3c6126e1" }, - "version": "2.24.3" + "version": "2.25.0" }, "org.apache.logging.log4j:log4j-core": { "shasums": { - "jar": "7eb4084596ae25bd3c61698e48e8d0ab65a9260758884ed5cbb9c6e55c44a56a", - "sources": "909158f99135ee7d3cb583e00eac314a22d873aca87440a2a0f20c7e3dc85440" + "jar": "05d3eecb9e509fd47117c0fb43c7b4b2989b28ecd5543ad5feff2e4903d3c921", + "sources": "04ef64e63c024f19b4e0e440974663eff64de85d9686923c7c49342d0897a425" }, - "version": "2.24.3" + "version": "2.25.0" }, "org.apiguardian:apiguardian-api": { "shasums": { @@ -543,24 +578,24 @@ }, "org.bouncycastle:bcpkix-jdk18on": { "shasums": { - "jar": "4f4ba6a92617ea19dc183f0fa5db492eee426fdde2a0a2d6c94777ffd1af6413", - "sources": "601ec2beb4749f0be65e296811b6e63de567f90d124f26887875bb722fd87e71" + "jar": "b38c604871f3690109a3c00982d9145634125de3365a817ba16eb90d88e242c9", + "sources": "5c202e64971912e363d241b3c4f8ab7d56519d30553e4e0ab0ee6ceaead5eeb0" }, - "version": "1.80" + "version": "1.81" }, "org.bouncycastle:bcprov-jdk18on": { "shasums": { - "jar": "e8ad209f8c58d291a37ca9750e9e9fac60596956c983e49dd8282381dd8b3249", - "sources": "29e8414b7a07060b07222bb786dd594d2e411de0d7723d2fac8adedb0801cbef" + "jar": "249f396412b0c0ce67f25c8197da757b241b8be3ec4199386c00704a2457459b", + "sources": "3dcbf0b33ec135e1217d31eb182614e5c03b73f15dc4327573e1b7b1826ac720" }, - "version": "1.80" + "version": "1.81" }, "org.bouncycastle:bcutil-jdk18on": { "shasums": { - "jar": "22eca687f7955411f456af33e6ea8e68fc73cd80cb8b32aa5f7a8b1827d7c678", - "sources": "ce93fac9ddfc390b1e2ef7160bfcf63452e419780c1f4fb2faa2d6fce2065d54" + "jar": "31a5fe3a7ba42e3457b83930f0ff8d679fb5b76eaadf2b51f5740c92a394bf52", + "sources": "a964bb2b5c8a1ecae31832b82e748f139178747c1dbfbadc3e0aef6f92eb58d4" }, - "version": "1.80" + "version": "1.81" }, "org.checkerframework:checker-qual": { "shasums": { @@ -592,10 +627,10 @@ }, "org.htmlunit:htmlunit-core-js": { "shasums": { - "jar": "32edcec0f189f306654939980f0f8b3ab3d2ecd9e1583c65a5e659452615ed0b", - "sources": "f49ac3c251b9f71ceba5a6764387429bcebd83acb182d1b2f1dd7d3cbfffa349" + "jar": "735e6db26310766d8e56de08e2e2441f22460977cbdc2b5c905a504165fcd6b6", + "sources": "f219f569ded0dca5cf66c207c3a691b3955aa420550d5dfb4ade72c12b176ca1" }, - "version": "4.12.0" + "version": "4.13.0" }, "org.jodd:jodd-util": { "shasums": { @@ -613,52 +648,52 @@ }, "org.junit.jupiter:junit-jupiter-api": { "shasums": { - "jar": "0b9ca728e4bcd9adc57f29deb9556ff9ed5e08b4e8843b875aba4e4e3e04f092", - "sources": "babbccb7ae82e7ed4f14c140fb11f21fc6ac595c60e8cafe445fbc84d938adab" + "jar": "b8be2faf8cd55b37063f7c57ca2bf4c0b5437706f838b2e4ff9d36f80da2ee93", + "sources": "fdbdad05b87c2fc2747e6a229055490453705f15eddafeb44a9d873a8f1d91b8" }, - "version": "5.12.2" + "version": "5.13.2" }, "org.junit.jupiter:junit-jupiter-engine": { "shasums": { - "jar": "f576c06b8accde9985063b8bc80526cb980eec24dee0b7221fc8ddd7ace65800", - "sources": "95d15c0094b9af41bbeffb3f1fc9bfffbf68676de1c9497c4b2a8350969cd19e" + "jar": "4f923403fbc5322773233573ce9e85566870a0c85a8a06a8413e101dd044b16b", + "sources": "1c68d58437df1e3194ce2132f3db44a5248b1218561c9919f228c0160870cd93" }, - "version": "5.12.2" + "version": "5.13.2" }, "org.junit.jupiter:junit-jupiter-params": { "shasums": { - "jar": "b219ffa949b90a71aa3b6c2b606456b82bca0b2089b7459c8ff461156ff59b0f", - "sources": "e1353aa5fb5205bb9263394b944b567d168bdeb6df56d3d2a6005beadcd37c73" + "jar": "78ba43b19211c73b81e0e61f5f7b1740cc311f3bf11e781c6364c765f074fbc7", + "sources": "631a6579218482972d61bfa75d8e69b2189dbeefdc4fe3b59455c6daa85df050" }, - "version": "5.12.2" + "version": "5.13.2" }, "org.junit.platform:junit-platform-commons": { "shasums": { - "jar": "e683a01e85dfabea520c056ac6015a6162756e602ec653c0da85e233f0afbc18", - "sources": "4c4275ef8401d04156e9e447c140b57bc8799b889a3095e4809ac8ad4e09b9f4" + "jar": "81fbaa06a392448a01e59de1427cef27bb88485ec2d2ed64dc8a31f5440851c0", + "sources": "959e9410d65ca3547132c52c8f59d642854ec464a0f42e050dc8d18bc6d9ec67" }, - "version": "1.12.2" + "version": "1.13.2" }, "org.junit.platform:junit-platform-engine": { "shasums": { - "jar": "cef0efcb5bd2e05e2b808d38bab5c655089c0c3001527376e74cb606a7911ec8", - "sources": "054e04ebe1df5268cac321b30f1ef86f0e32a059ec71a6f36b8d0e44518a5157" + "jar": "a34d5c2f30c030cda538d53952fbd886d15b515ebeb23b3d155c185cfbafaf89", + "sources": "5627c372ce0522ed8a7208c8867bbdf3dc21d62130eda854c1ad3975be807f29" }, - "version": "1.12.2" + "version": "1.13.2" }, "org.junit.platform:junit-platform-launcher": { "shasums": { - "jar": "dccf2c1fa0a977c53ad094ad859bfdddd524d97594b76307ad787de71985757f", - "sources": "b25eddab9b9b48faa08ffb1646938d899cae2ae7ce528e1c86aac274798705fb" + "jar": "ed6443f731e8929eb8bca5619b535f33ffd19b3435396faca700d7dda87ef7bc", + "sources": "d47a3aafed3e9b559b9454c90f935ef5899d645aa763c24230b2aeeec68ce07a" }, - "version": "1.12.2" + "version": "1.13.2" }, "org.junit.platform:junit-platform-reporting": { "shasums": { - "jar": "5d0964d0fba027a39cc0123b8521e72a1371157239d56dadcf929529074b8cb3", - "sources": "4620e9b17a17e96b6ce74ef99031f4b5631cc242937e3e659d191d9fc5b7f08c" + "jar": "642603d1d3a6162dd8b74cbf7b2941c0a1af4a5852bafe901e31051c1303de76", + "sources": "4caa415f007731c8dcd94bc287371f885a05cb8a63baef09f98dd8a514a06b0d" }, - "version": "1.12.2" + "version": "1.13.2" }, "org.mockito:mockito-core": { "shasums": { @@ -676,10 +711,10 @@ }, "org.opentest4j.reporting:open-test-reporting-tooling-spi": { "shasums": { - "jar": "772c9f9a09173bcfc29210257a1eb5e873561b5e931832ebf2d29c1ca5bf1af3", - "sources": "3a24af664af66dfb37c5c6400217f9f39e374a62ac51e8d672c40e5bbf93c996" + "jar": "f0d54b46fb9e503b22abc65c45a48025aad16051903aaed11f6d974129f74252", + "sources": "4d326fefbb6928af00fd8eec1e6cd7c19a1cc4f7bfb0196a50aaf5a3f99d45d7" }, - "version": "0.2.0" + "version": "0.2.3" }, "org.opentest4j:opentest4j": { "shasums": { @@ -732,10 +767,10 @@ }, "org.redisson:redisson": { "shasums": { - "jar": "f8df16d0cdb36b187d204b4643c812049a95ef21e487b9d4b2a12ab272c18379", - "sources": "4469bac95c624a01e2d675d8405594c62d59197f409a1064c7efd71d47ba0bfa" + "jar": "d249d683b8115539a8a29937f3dc1dffd956241e41099ef0abe5a2bf0f175a7f", + "sources": "c3edd9eecb297c6b166df2176968e6b260a5a2a752bd00c31e67934e265810a0" }, - "version": "3.47.0" + "version": "3.50.0" }, "org.slf4j:slf4j-api": { "shasums": { @@ -832,6 +867,11 @@ "com.fasterxml.jackson.core:jackson-databind", "org.yaml:snakeyaml" ], + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": [ + "com.fasterxml.jackson.core:jackson-annotations", + "com.fasterxml.jackson.core:jackson-core", + "com.fasterxml.jackson.core:jackson-databind" + ], "com.github.spotbugs:spotbugs": [ "com.github.spotbugs:spotbugs-annotations", "com.github.stephenc.jcip:jcip-annotations", @@ -887,6 +927,7 @@ "io.lettuce:lettuce-core": [ "io.netty:netty-common", "io.netty:netty-handler", + "io.netty:netty-resolver-dns", "io.netty:netty-transport", "io.projectreactor:reactor-core", "redis.clients.authentication:redis-authx-core" @@ -896,39 +937,67 @@ ], "io.netty:netty-codec": [ "io.netty:netty-buffer", + "io.netty:netty-codec-base", + "io.netty:netty-codec-compression", + "io.netty:netty-codec-marshalling", + "io.netty:netty-codec-protobuf", + "io.netty:netty-common", + "io.netty:netty-transport" + ], + "io.netty:netty-codec-base": [ + "io.netty:netty-buffer", + "io.netty:netty-common", + "io.netty:netty-transport" + ], + "io.netty:netty-codec-compression": [ + "io.netty:netty-buffer", + "io.netty:netty-codec-base", "io.netty:netty-common", "io.netty:netty-transport" ], "io.netty:netty-codec-dns": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", "io.netty:netty-common", "io.netty:netty-transport" ], "io.netty:netty-codec-http": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", + "io.netty:netty-codec-compression", "io.netty:netty-common", "io.netty:netty-handler", "io.netty:netty-transport" ], "io.netty:netty-codec-http2": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", "io.netty:netty-codec-http", "io.netty:netty-common", "io.netty:netty-handler", "io.netty:netty-transport" ], + "io.netty:netty-codec-marshalling": [ + "io.netty:netty-buffer", + "io.netty:netty-codec-base", + "io.netty:netty-common", + "io.netty:netty-transport" + ], + "io.netty:netty-codec-protobuf": [ + "io.netty:netty-buffer", + "io.netty:netty-codec-base", + "io.netty:netty-common", + "io.netty:netty-transport" + ], "io.netty:netty-codec-socks": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", "io.netty:netty-common", "io.netty:netty-transport" ], "io.netty:netty-handler": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", "io.netty:netty-common", "io.netty:netty-resolver", "io.netty:netty-transport", @@ -936,10 +1005,11 @@ ], "io.netty:netty-handler-proxy": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", "io.netty:netty-codec-http", "io.netty:netty-codec-socks", "io.netty:netty-common", + "io.netty:netty-handler", "io.netty:netty-transport" ], "io.netty:netty-resolver": [ @@ -947,7 +1017,7 @@ ], "io.netty:netty-resolver-dns": [ "io.netty:netty-buffer", - "io.netty:netty-codec", + "io.netty:netty-codec-base", "io.netty:netty-codec-dns", "io.netty:netty-common", "io.netty:netty-handler", @@ -1110,6 +1180,7 @@ "com.fasterxml.jackson.core:jackson-core", "com.fasterxml.jackson.core:jackson-databind", "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", "io.netty:netty-buffer", "io.netty:netty-codec", "io.netty:netty-common", @@ -1230,6 +1301,14 @@ "com.fasterxml.jackson.dataformat.yaml.snakeyaml.error", "com.fasterxml.jackson.dataformat.yaml.util" ], + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": [ + "com.fasterxml.jackson.datatype.jsr310", + "com.fasterxml.jackson.datatype.jsr310.deser", + "com.fasterxml.jackson.datatype.jsr310.deser.key", + "com.fasterxml.jackson.datatype.jsr310.ser", + "com.fasterxml.jackson.datatype.jsr310.ser.key", + "com.fasterxml.jackson.datatype.jsr310.util" + ], "com.github.javaparser:javaparser-core": [ "com.github.javaparser", "com.github.javaparser.ast", @@ -1498,6 +1577,7 @@ "io.lettuce:lettuce-core": [ "io.lettuce.authx", "io.lettuce.core", + "io.lettuce.core.annotations", "io.lettuce.core.api", "io.lettuce.core.api.async", "io.lettuce.core.api.coroutines", @@ -1561,23 +1641,24 @@ "io.lettuce.core.sentinel.api.sync", "io.lettuce.core.support", "io.lettuce.core.support.caching", - "io.lettuce.core.tracing" + "io.lettuce.core.tracing", + "io.lettuce.core.vector" ], "io.netty:netty-buffer": [ "io.netty.buffer", - "io.netty.buffer.search" + "io.netty.buffer.search", + "io.netty.buffer.svm" ], - "io.netty:netty-codec": [ + "io.netty:netty-codec-base": [ "io.netty.handler.codec", "io.netty.handler.codec.base64", "io.netty.handler.codec.bytes", - "io.netty.handler.codec.compression", "io.netty.handler.codec.json", - "io.netty.handler.codec.marshalling", - "io.netty.handler.codec.protobuf", "io.netty.handler.codec.serialization", - "io.netty.handler.codec.string", - "io.netty.handler.codec.xml" + "io.netty.handler.codec.string" + ], + "io.netty:netty-codec-compression": [ + "io.netty.handler.codec.compression" ], "io.netty:netty-codec-dns": [ "io.netty.handler.codec.dns" @@ -1596,6 +1677,12 @@ "io.netty:netty-codec-http2": [ "io.netty.handler.codec.http2" ], + "io.netty:netty-codec-marshalling": [ + "io.netty.handler.codec.marshalling" + ], + "io.netty:netty-codec-protobuf": [ + "io.netty.handler.codec.protobuf" + ], "io.netty:netty-codec-socks": [ "io.netty.handler.codec.socks", "io.netty.handler.codec.socksx", @@ -1625,7 +1712,6 @@ "io.netty.handler.logging", "io.netty.handler.pcap", "io.netty.handler.ssl", - "io.netty.handler.ssl.ocsp", "io.netty.handler.ssl.util", "io.netty.handler.stream", "io.netty.handler.timeout", @@ -2102,6 +2188,7 @@ "org.apache.logging.log4j.core.config.plugins", "org.apache.logging.log4j.core.config.plugins.convert", "org.apache.logging.log4j.core.config.plugins.processor", + "org.apache.logging.log4j.core.config.plugins.processor.internal", "org.apache.logging.log4j.core.config.plugins.util", "org.apache.logging.log4j.core.config.plugins.validation", "org.apache.logging.log4j.core.config.plugins.validation.constraints", @@ -2135,7 +2222,8 @@ "org.apache.logging.log4j.core.tools.picocli", "org.apache.logging.log4j.core.util", "org.apache.logging.log4j.core.util.datetime", - "org.apache.logging.log4j.core.util.internal" + "org.apache.logging.log4j.core.util.internal", + "org.apache.logging.log4j.core.util.internal.instant" ], "org.apiguardian:apiguardian-api": [ "org.apiguardian.api" @@ -2352,9 +2440,9 @@ "org.bouncycastle.pqc.crypto.crystals.dilithium", "org.bouncycastle.pqc.crypto.falcon", "org.bouncycastle.pqc.crypto.frodo", - "org.bouncycastle.pqc.crypto.gemss", "org.bouncycastle.pqc.crypto.hqc", "org.bouncycastle.pqc.crypto.lms", + "org.bouncycastle.pqc.crypto.mayo", "org.bouncycastle.pqc.crypto.mldsa", "org.bouncycastle.pqc.crypto.mlkem", "org.bouncycastle.pqc.crypto.newhope", @@ -2364,6 +2452,7 @@ "org.bouncycastle.pqc.crypto.rainbow", "org.bouncycastle.pqc.crypto.saber", "org.bouncycastle.pqc.crypto.slhdsa", + "org.bouncycastle.pqc.crypto.snova", "org.bouncycastle.pqc.crypto.sphincs", "org.bouncycastle.pqc.crypto.sphincsplus", "org.bouncycastle.pqc.crypto.util", @@ -2380,25 +2469,25 @@ "org.bouncycastle.pqc.jcajce.provider.hqc", "org.bouncycastle.pqc.jcajce.provider.kyber", "org.bouncycastle.pqc.jcajce.provider.lms", + "org.bouncycastle.pqc.jcajce.provider.mayo", "org.bouncycastle.pqc.jcajce.provider.mceliece", "org.bouncycastle.pqc.jcajce.provider.newhope", "org.bouncycastle.pqc.jcajce.provider.ntru", "org.bouncycastle.pqc.jcajce.provider.ntruprime", "org.bouncycastle.pqc.jcajce.provider.picnic", - "org.bouncycastle.pqc.jcajce.provider.rainbow", "org.bouncycastle.pqc.jcajce.provider.saber", + "org.bouncycastle.pqc.jcajce.provider.snova", "org.bouncycastle.pqc.jcajce.provider.sphincs", "org.bouncycastle.pqc.jcajce.provider.sphincsplus", "org.bouncycastle.pqc.jcajce.provider.util", "org.bouncycastle.pqc.jcajce.provider.xmss", "org.bouncycastle.pqc.jcajce.spec", + "org.bouncycastle.pqc.legacy.crypto.gemss", "org.bouncycastle.pqc.legacy.crypto.gmss", "org.bouncycastle.pqc.legacy.crypto.gmss.util", "org.bouncycastle.pqc.legacy.crypto.mceliece", "org.bouncycastle.pqc.legacy.crypto.ntru", "org.bouncycastle.pqc.legacy.crypto.qtesla", - "org.bouncycastle.pqc.legacy.crypto.rainbow", - "org.bouncycastle.pqc.legacy.crypto.rainbow.util", "org.bouncycastle.pqc.legacy.math.linearalgebra", "org.bouncycastle.pqc.legacy.math.ntru.euclid", "org.bouncycastle.pqc.legacy.math.ntru.polynomial", @@ -2439,6 +2528,7 @@ "org.bouncycastle.asn1.kisa", "org.bouncycastle.asn1.microsoft", "org.bouncycastle.asn1.misc", + "org.bouncycastle.asn1.mod", "org.bouncycastle.asn1.mozilla", "org.bouncycastle.asn1.nsri", "org.bouncycastle.asn1.ntt", @@ -2786,6 +2876,7 @@ "org.redisson.api.search.index", "org.redisson.api.search.query", "org.redisson.api.stream", + "org.redisson.api.vector", "org.redisson.cache", "org.redisson.client", "org.redisson.client.codec", @@ -2957,6 +3048,8 @@ "com.fasterxml.jackson.core:jackson-databind:jar:sources", "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml", "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:jar:sources", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:sources", "com.github.javaparser:javaparser-core", "com.github.javaparser:javaparser-core:jar:sources", "com.github.spotbugs:spotbugs", @@ -3009,12 +3102,20 @@ "io.netty:netty-buffer", "io.netty:netty-buffer:jar:sources", "io.netty:netty-codec", + "io.netty:netty-codec-base", + "io.netty:netty-codec-base:jar:sources", + "io.netty:netty-codec-compression", + "io.netty:netty-codec-compression:jar:sources", "io.netty:netty-codec-dns", "io.netty:netty-codec-dns:jar:sources", "io.netty:netty-codec-http", "io.netty:netty-codec-http2", "io.netty:netty-codec-http2:jar:sources", "io.netty:netty-codec-http:jar:sources", + "io.netty:netty-codec-marshalling", + "io.netty:netty-codec-marshalling:jar:sources", + "io.netty:netty-codec-protobuf", + "io.netty:netty-codec-protobuf:jar:sources", "io.netty:netty-codec-socks", "io.netty:netty-codec-socks:jar:sources", "io.netty:netty-codec:jar:sources", @@ -3192,6 +3293,11 @@ "com.fasterxml.jackson.dataformat.yaml.YAMLMapper" ] }, + "com.fasterxml.jackson.datatype:jackson-datatype-jsr310": { + "com.fasterxml.jackson.databind.Module": [ + "com.fasterxml.jackson.datatype.jsr310.JavaTimeModule" + ] + }, "com.google.auto.service:auto-service": { "javax.annotation.processing.Processor": [ "com.google.auto.service.processor.AutoServiceProcessor" @@ -3268,6 +3374,7 @@ }, "org.apache.logging.log4j:log4j-core": { "javax.annotation.processing.Processor": [ + "org.apache.logging.log4j.core.config.plugins.processor.GraalVmProcessor", "org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor" ], "org.apache.logging.log4j.core.util.ContextDataProvider": [ From db0fb23660a93c1d510be9a7d48e027b09b85db0 Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 25 Jun 2025 16:52:56 +0000 Subject: [PATCH 05/18] update authors file --- AUTHORS | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/AUTHORS b/AUTHORS index 9c6f362fc95fb..30fcddbfaef5c 100644 --- a/AUTHORS +++ b/AUTHORS @@ -17,6 +17,7 @@ AdamPDotty <81536237+AdamPDotty@users.noreply.github.com> Adi Roiban adiohana Aditya Pratap Singh +Adolfo Armas Adrian Dymorz Adrian Leonhard Agustin Pequeno <33221555+aguspe@users.noreply.github.com> @@ -35,8 +36,10 @@ albertor24 Aleksei Moskvin Alex <72409387+fergushev@users.noreply.github.com> Alex +Alex B <45384811+AB-xdev@users.noreply.github.com> Alex Eagle Alex Henrie +Alex Popov Alex Rodionov Alex Savchuk Alexander Bayandin @@ -126,6 +129,7 @@ Boris Osipov Boris Petrov Boris Wrubel bozdemir84 +Bradley Latreille <47356514+Bradltr95@users.noreply.github.com> Branden Cash <203336+ammmze@users.noreply.github.com> Brandon Walderman Brandon Williams @@ -368,6 +372,7 @@ Ilyas Bayraktar Immanuel Hayden Indomitable Innokenty Shuvalov +Ioan Giurgiu Isaac A. Murchie Isaul Vargas Ish Abbi @@ -547,6 +552,7 @@ Lucas Diniz Lucas Tierney Luis Correia Luis Pflamminger +Luis Serna Luke Hill Luke Inman-Semerau lukec @@ -802,6 +808,7 @@ Seth Lemanek Seva Lotoshnikov Shan Shashank <42868640+snsten@users.noreply.github.com> +Shaurya Bisht <87357655+ShauryaDusht@users.noreply.github.com> Shay Dratler Shengfa <3363396+k7z45@users.noreply.github.com> shin From 8f1837e3b97af927864df7345ef8e097e86659aa Mon Sep 17 00:00:00 2001 From: Selenium CI Bot Date: Wed, 25 Jun 2025 16:54:26 +0000 Subject: [PATCH 06/18] bump versions in preparation for release --- .github/ISSUE_TEMPLATE/bug-report.yml | 2 +- dotnet/selenium-dotnet-version.bzl | 2 +- java/version.bzl | 2 +- javascript/selenium-webdriver/BUILD.bazel | 2 +- javascript/selenium-webdriver/package.json | 2 +- py/BUILD.bazel | 2 +- py/docs/source/conf.py | 2 +- py/pyproject.toml | 2 +- py/selenium/__init__.py | 2 +- py/selenium/webdriver/__init__.py | 2 +- rb/Gemfile.lock | 36 +++++----- rb/lib/selenium/webdriver/version.rb | 2 +- rust/BUILD.bazel | 2 +- rust/Cargo.Bazel.lock | 83 +++++++++++++++++++--- rust/Cargo.lock | 2 +- rust/Cargo.toml | 2 +- 16 files changed, 105 insertions(+), 42 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml index a308b6a649df9..ef1be3fa00e9a 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.33 and we can't fix old versions. + description: Important! The latest released version of Selenium is 4.34 and we can't fix old versions. placeholder: e.g., 4.17.0 validations: required: true diff --git a/dotnet/selenium-dotnet-version.bzl b/dotnet/selenium-dotnet-version.bzl index fa726ac7da73d..2bb599576ada7 100644 --- a/dotnet/selenium-dotnet-version.bzl +++ b/dotnet/selenium-dotnet-version.bzl @@ -1,6 +1,6 @@ # BUILD FILE SYNTAX: STARLARK -SE_VERSION = "4.34.0-nightly202505232017" +SE_VERSION = "4.34.0" ASSEMBLY_VERSION = "4.0.0.0" SUPPORTED_NET_STANDARD_VERSIONS = ["netstandard2.0"] diff --git a/java/version.bzl b/java/version.bzl index b23cc1aa92ba2..d95fb648c64af 100644 --- a/java/version.bzl +++ b/java/version.bzl @@ -1,2 +1,2 @@ -SE_VERSION = "4.34.0-SNAPSHOT" +SE_VERSION = "4.34.0" TOOLS_JAVA_VERSION = "17" diff --git a/javascript/selenium-webdriver/BUILD.bazel b/javascript/selenium-webdriver/BUILD.bazel index 90f0851268763..57ea73c4b5b80 100644 --- a/javascript/selenium-webdriver/BUILD.bazel +++ b/javascript/selenium-webdriver/BUILD.bazel @@ -11,7 +11,7 @@ load("//javascript/private:browsers.bzl", "BROWSERS") npm_link_all_packages(name = "node_modules") -VERSION = "4.34.0-nightly202505232017" +VERSION = "4.34.0" BROWSER_VERSIONS = [ "v137", diff --git a/javascript/selenium-webdriver/package.json b/javascript/selenium-webdriver/package.json index 7011adb71c631..c1d8d58f6adbf 100644 --- a/javascript/selenium-webdriver/package.json +++ b/javascript/selenium-webdriver/package.json @@ -1,6 +1,6 @@ { "name": "selenium-webdriver", - "version": "4.34.0-nightly202505232017", + "version": "4.34.0", "description": "The official WebDriver JavaScript bindings from the Selenium project", "license": "Apache-2.0", "keywords": [ diff --git a/py/BUILD.bazel b/py/BUILD.bazel index 3073488c8fedb..2dff78d927af7 100644 --- a/py/BUILD.bazel +++ b/py/BUILD.bazel @@ -63,7 +63,7 @@ compile_pip_requirements( ], ) -SE_VERSION = "4.34.0.202505232017" +SE_VERSION = "4.34.0" BROWSER_VERSIONS = [ "v137", diff --git a/py/docs/source/conf.py b/py/docs/source/conf.py index 8b6b5cf17d675..2efed4a1161b3 100644 --- a/py/docs/source/conf.py +++ b/py/docs/source/conf.py @@ -66,7 +66,7 @@ # The short X.Y version. version = "4.34" # The full version, including alpha/beta/rc tags. -release = "4.34.0.202505232017" +release = "4.34.0" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/py/pyproject.toml b/py/pyproject.toml index e3381c826ade6..5a224ce2f9db9 100644 --- a/py/pyproject.toml +++ b/py/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "selenium" -version = "4.34.0.202505232017" +version = "4.34.0" license = { text = "Apache 2.0" } description = "Official Python bindings for Selenium WebDriver." readme = "README.rst" diff --git a/py/selenium/__init__.py b/py/selenium/__init__.py index 3eb232e90d60d..5a72cb7a4ea7b 100644 --- a/py/selenium/__init__.py +++ b/py/selenium/__init__.py @@ -16,4 +16,4 @@ # under the License. -__version__ = "4.34.0.202505232017" +__version__ = "4.34.0" diff --git a/py/selenium/webdriver/__init__.py b/py/selenium/webdriver/__init__.py index a193777ec4a42..2b46afcbed316 100644 --- a/py/selenium/webdriver/__init__.py +++ b/py/selenium/webdriver/__init__.py @@ -44,7 +44,7 @@ from .wpewebkit.service import Service as WPEWebKitService # noqa from .wpewebkit.webdriver import WebDriver as WPEWebKit # noqa -__version__ = "4.34.0.202505232017" +__version__ = "4.34.0" # We need an explicit __all__ because the above won't otherwise be exported. __all__ = [ diff --git a/rb/Gemfile.lock b/rb/Gemfile.lock index 9a75b6efcbf61..ef2f00a4bc73b 100644 --- a/rb/Gemfile.lock +++ b/rb/Gemfile.lock @@ -3,7 +3,7 @@ PATH specs: selenium-devtools (0.138.0) selenium-webdriver (~> 4.2) - selenium-webdriver (4.34.0.nightly) + selenium-webdriver (4.34.0) base64 (~> 0.2) logger (~> 1.4) rexml (~> 3.2, >= 3.2.5) @@ -28,20 +28,20 @@ GEM addressable (2.8.7) public_suffix (>= 2.0.2, < 7.0) ast (2.4.3) - base64 (0.2.0) - benchmark (0.4.0) - bigdecimal (3.1.9) - bigdecimal (3.1.9-java) + base64 (0.3.0) + benchmark (0.4.1) + bigdecimal (3.2.2) + bigdecimal (3.2.2-java) concurrent-ruby (1.3.5) connection_pool (2.5.3) crack (1.0.0) bigdecimal rexml - csv (3.3.4) + csv (3.3.5) curb (1.0.9) date (3.4.1) date (3.4.1-java) - debug (1.10.0) + debug (1.11.0) irb (~> 1.10) reline (>= 0.3.8) diff-lcs (1.6.2) @@ -93,36 +93,36 @@ GEM public_suffix (6.0.2) racc (1.8.1) racc (1.8.1-java) - rack (2.2.16) + rack (2.2.17) rainbow (3.1.1) - rake (13.2.1) + rake (13.3.0) rb-fsevent (0.11.2) rb-inotify (0.11.1) ffi (~> 1.0) rbs (3.9.4) logger rchardet (1.9.0) - rdoc (6.14.0) + rdoc (6.14.1) erb psych (>= 4.0.0) regexp_parser (2.10.0) reline (0.6.1) io-console (~> 0.5) rexml (3.4.1) - rspec (3.13.0) + rspec (3.13.1) rspec-core (~> 3.13.0) rspec-expectations (~> 3.13.0) rspec-mocks (~> 3.13.0) - rspec-core (3.13.3) + rspec-core (3.13.5) rspec-support (~> 3.13.0) - rspec-expectations (3.13.4) + rspec-expectations (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-mocks (3.13.4) + rspec-mocks (3.13.5) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-support (3.13.3) - rubocop (1.75.7) + rspec-support (3.13.4) + rubocop (1.77.0) json (~> 2.3) language_server-protocol (~> 3.17.0.2) lint_roller (~> 1.1.0) @@ -130,10 +130,10 @@ GEM parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.9.3, < 3.0) - rubocop-ast (>= 1.44.0, < 2.0) + rubocop-ast (>= 1.45.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 4.0) - rubocop-ast (1.44.1) + rubocop-ast (1.45.1) parser (>= 3.3.7.2) prism (~> 1.4) rubocop-performance (1.25.0) diff --git a/rb/lib/selenium/webdriver/version.rb b/rb/lib/selenium/webdriver/version.rb index 23c727dff21da..aa39c9dbf922a 100644 --- a/rb/lib/selenium/webdriver/version.rb +++ b/rb/lib/selenium/webdriver/version.rb @@ -19,6 +19,6 @@ module Selenium module WebDriver - VERSION = '4.34.0.nightly' + VERSION = '4.34.0' end # WebDriver end # Selenium diff --git a/rust/BUILD.bazel b/rust/BUILD.bazel index 027ef87ddbf29..b5e4d03696435 100644 --- a/rust/BUILD.bazel +++ b/rust/BUILD.bazel @@ -77,7 +77,7 @@ rust_binary( name = "selenium-manager", srcs = ["src/main.rs"], edition = "2021", - version = "0.4.34-nightly", + version = "0.4.34", visibility = ["//visibility:public"], deps = [ ":selenium_manager", diff --git a/rust/Cargo.Bazel.lock b/rust/Cargo.Bazel.lock index 230114aaf7d55..db3c1009cbf56 100644 --- a/rust/Cargo.Bazel.lock +++ b/rust/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "0c040d68206ee0e1cb8f4b9750fc838ec1c150da4a76a9c387387684712e8168", + "checksum": "99b6c87d1bca59cc05cfef59d7bce0f6566827192a7c86d55c0d22d527a97d23", "crates": { "addr2line 0.21.0": { "name": "addr2line", @@ -2031,16 +2031,79 @@ "id": "jobserver 0.1.31", "target": "jobserver" }, - { - "id": "libc 0.2.168", - "target": "libc" - }, { "id": "shlex 1.3.0", "target": "shlex" } ], - "selects": {} + "selects": { + "aarch64-apple-darwin": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "aarch64-unknown-linux-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "aarch64-unknown-nixos-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "arm-unknown-linux-gnueabi": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "i686-unknown-linux-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "powerpc-unknown-linux-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "s390x-unknown-linux-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "x86_64-apple-darwin": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "x86_64-unknown-freebsd": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "x86_64-unknown-linux-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ], + "x86_64-unknown-nixos-gnu": [ + { + "id": "libc 0.2.168", + "target": "libc" + } + ] + } }, "edition": "2018", "version": "1.1.30" @@ -14050,9 +14113,9 @@ ], "license_file": "LICENSE" }, - "selenium-manager 0.4.34-nightly": { + "selenium-manager 0.4.34": { "name": "selenium-manager", - "version": "0.4.34-nightly", + "version": "0.4.34", "package_url": "https://github.com/SeleniumHQ/selenium", "repository": null, "targets": [ @@ -14208,7 +14271,7 @@ "selects": {} }, "edition": "2021", - "version": "0.4.34-nightly" + "version": "0.4.34" }, "license": "Apache-2.0", "license_ids": [ @@ -22801,7 +22864,7 @@ }, "binary_crates": [], "workspace_members": { - "selenium-manager 0.4.34-nightly": "rust" + "selenium-manager 0.4.34": "rust" }, "conditions": { "aarch64-apple-darwin": [ diff --git a/rust/Cargo.lock b/rust/Cargo.lock index 63446c9e1f409..b8010bdefbca2 100644 --- a/rust/Cargo.lock +++ b/rust/Cargo.lock @@ -1896,7 +1896,7 @@ dependencies = [ [[package]] name = "selenium-manager" -version = "0.4.34-nightly" +version = "0.4.34" dependencies = [ "anyhow", "apple-flat-package", diff --git a/rust/Cargo.toml b/rust/Cargo.toml index a822a5a10eca4..eebf37aed100d 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "selenium-manager" -version = "0.4.34-nightly" # don't forget to update rust/BUILD.bazel +version = "0.4.34" # don't forget to update rust/BUILD.bazel edition = "2021" authors = ["Selenium Date: Wed, 25 Jun 2025 16:54:30 +0000 Subject: [PATCH 07/18] WIP - rough auto-update of changelog, please edit --- dotnet/CHANGELOG | 15 ++++++ java/CHANGELOG | 65 ++++++++++++++++++++++++ javascript/selenium-webdriver/CHANGES.md | 18 +++++++ py/CHANGES | 56 ++++++++++++++++++++ rb/CHANGES | 20 ++++++++ rust/CHANGELOG.md | 4 ++ 6 files changed, 178 insertions(+) diff --git a/dotnet/CHANGELOG b/dotnet/CHANGELOG index 0bc90addf6aa6..1e67a23b37a9a 100644 --- a/dotnet/CHANGELOG +++ b/dotnet/CHANGELOG @@ -1,3 +1,18 @@ +v4.34.0 +====== +* [bidi] Add AcceptInsecureCerts and Proxy options when create new user context (#15795) +* [bidi] Actively use TryGetValue while processing incoming messages +* [bidi] Declare allowed nullable objects in constructors type (#15809) +* [bidi] Simplify modules namespace (breaking change) (#15820) +* Remove unnecessary stylecop files (#15824) +* Align CS projects name to understand the editing context (#15843) +* [bidi] Implicit conversion screenshot to bytes +* [bidi] Adjust proxy configuration for new sessions (#15914) +* [bidi] Add OnHistoryUpdated event (#15916) +* Mark FTP proxy support as deprecated (#15925) +* [bidi] Protect DTO types from inheritance (#15919) +* update devtools versions + v4.33.0 ====== * Add CDP for Chrome 137 and remove 134 diff --git a/java/CHANGELOG b/java/CHANGELOG index e7791a0d1d912..dad5955e8c712 100644 --- a/java/CHANGELOG +++ b/java/CHANGELOG @@ -1,3 +1,68 @@ +v4.34.0 +====== +* Removing deprecated BrowsingContext constructor. +* [grid] Silent fail on invalid log level (#15796) + > * [grid] Silent fail on invalid log level + > Fixing issue where providing an invalid log level to Grid will fail silently. + > Since the logger is not yet configured a stacktrace with the exception is printed to console and we continue since the default log level is already configured. + > Fixes #15790 + > * [grid] Silent fail on invalid log level + > Adding link to logging levels as suggested by @diemol and formatting. + > * [grid] Silent fail on invalid log level + > Adding hardcoded log levels as suggested by review. +* Removing deprecated OsProcess class. +* Removing deprecated CommandLine class. +* Removing deprecated ContextAware interface. +* Fixing `getCredential` for VirtualAuthenticator +* Caching the size/length in loops to slightly improve performance (#15852) + > caching the size/length in loops to slightly improve performance and readability +* [feature] add method RemoteWebDriver.isDownloadsEnabled() (#15868) +* [refactor] use constant `CapabilityType.ENABLE_DOWNLOADS` instead of hard-coded value `se:downloadsEnabled` (#15867) + > [refactor] use constant CapabilityType.ENABLE_DOWNLOADS instead of hard-coded value "se:downloadsEnabled" +* [bidi] Add new fields of BrowsingContextInfo +* [bidi]Add method to get browsing context tree with root +* Fix code formatting (#15903) +* [grid] Add GreedySlotSelector as a built-in slot-selector option (#15897) +* deprecate FtpProxy (#15907) + > Deprecates FTP Proxy as it is no longer supported by browsers +* [grid] Add config `blocked-routes` and specific `blocked-delete-session` in Router (#15920) +* Revert "[grid] Add config `blocked-routes` and specific `blocked-delete-session` in Router" (#15921) +* [BiDi] implement browsingContext.historyUpdated (#15901) +* [refactor] Remove Empty Space in CommandPayload (#15934) + > - Remove an empty space in the constructor. + > [skip ci] +* [FEAT] Add macOS-specific keys (OPTION, FN) to Keys enum for improved… (#15910) + > * [FEAT] Add macOS-specific keys (OPTION, FN) to Keys enum for improved platform support + > * [FEAT] These additions (RIGHT_SHIFT, RIGHT_CONTROL, RIGHT_ALT, RIGHT_COMMAND) follow conventions already in use by ChromeDriver and allow for more accurate key simulations. While not currently in the W3C WebDriver specification, they represent a practical standard used in the field. + > * [FEAT] Add macOS-specific and ChromeDriver-aligned extended keys + > - Added RIGHT_SHIFT, RIGHT_CONTROL, RIGHT_ALT, and RIGHT_COMMAND using Unicode PUA codes observed in ChromeDriver. + > - Included symbolic macOS keys OPTION and FN, marked with TODO comments for future validation against W3C WebDriver spec. + > - Updated class-level Javadoc to clarify the role of PUA mappings and their interoperability considerations. + > These additions improve platform representation and lay the groundwork for consistent macOS key handling. + > * Format script +* [BiDi] implement web extensions (#15660) + > * [BiDi] implement web extensions + > * cleanup + > * fix spotbug +* Made ``JsonToWebElementConverter`` methods/fields protected (#15885) + > Made ``JsonToWebElementConverter`` methods protected + > so that the class can be properly extended +* [grid] Session can be deleted via Grid UI (#15808) + > * [grid] Session can be deleted via Grid UI + > * Add notification on the flag to disable session deletion + > * Use Node config to disable delete session on UI + > * Add unit test + > * Run format + > * Disable by default + > * Run format +* Feat 14291/jspecify nullable annotation (#15924) +* Use Environment variable to set driver location (#15653) + > * Use environment variable to set driver locations + > Related to #14045 + > * Fix formatting + > * Repinning deps +* update devtools versions + v4.33.0 ====== * Add CDP for Chrome 137 and remove 134 diff --git a/javascript/selenium-webdriver/CHANGES.md b/javascript/selenium-webdriver/CHANGES.md index ea1d9f6c3c71f..48a1062ebf796 100644 --- a/javascript/selenium-webdriver/CHANGES.md +++ b/javascript/selenium-webdriver/CHANGES.md @@ -1,3 +1,21 @@ +## 4.34.0 + +- Bumping to nightly versions +- Add warning when ftp proxy is used + > Related to #15905 +- Update dependency ws to ^8.18.2 (#15780) + > * Update dependency ws to ^8.18.2 + > * Repin dependencies +- Update dependency sinon to ^19.0.5 (#15771) + > * Update dependency sinon to ^19.0.5 + > * Repin dependencies +- Update dependency multer to v1.4.5-lts.2 (#15770) + > * Update dependency multer to v1.4.5-lts.2 + > * Repin dependencies +- [JS] specify min required node versiton to >=20.0.0 +- update devtools versions +- bump versions in preparation for release + ## 4.33.0 - [cdp] Add CDP for Chrome 137 and remove 134 diff --git a/py/CHANGES b/py/CHANGES index 851448b1b3f84..918ee663f4696 100644 --- a/py/CHANGES +++ b/py/CHANGES @@ -1,3 +1,59 @@ +Selenium 4.34.0 +* Bumping to nightly versions +* Upgrade type hints (#15784) + > - Upgrade type hints to Python 3.9+ syntax throughout codebase + > - Replace legacy List, Dict, Tuple, etc. with built-in generics (e.g., list, dict, tuple) + > - Move type hints to use collections.abc where appropriate +* Fix type error for attribute in remote_connection.py (#15810) +* Fixed type hint (#15814) + > Fixed type hint in selenium/webdriver/common/bidi/common.py +* Fix import for type hint (#15817) +* [bidi]: add `enable_webextensions` option for chromium-based browsers (#15794) + > * add `enable_webextensions` method and exception for chrome webextensions + > * add chrome test for webextension from path + > * add separate test class and driver for chrome/edge tests +* Fix type annotation errors (#15841) + > Fixes type annotation errors in storage.py, options.py, and virtual_authenticator.py +* Fixed type annotation issues (#15847) +* [bidi]: implement bidi permissions module (#15830) + > * implement bidi permissions module + > * add tests + > Thank you @navin772 +* Fixed mypy error and change source var (#15853) +* do not use global var for devtools, allows multiple devtools to run (#15881) +* Fix : Mypy type annotation errors - 2 (#15848) + > * Fix : Mypy type annotation errors + > * Reverted changes in py\selenium\webdriver\common\bidi\browser.py + > * Fix: two more files + > * Remove browser.py from PR + > * make changes as per bidi spec +* [bidi]: add `timestamp` to `HistoryUpdatedParams` class (#15892) + > add `timestamp` to `HistoryUpdatedParams` class +* Fix possible TypeError in expected conditions (#15891) +* Refactor server.py to use properties (#15840) +* Add properties (getter/setter) for service args (#15889) +* Fix error handler for non-json response bodies (#15887) + > Fix error handler `check_response` for non-json responses from webdriver so it doesn't raise a cryptic error. +* [bidi]: add BiDi script module commands (#15880) + > * add bidi script commands + > * add bidi script tests + > * improve some test assertions + > * modify tests for `result_ownership` and `serialization_options` + > * modify tests for `disown` and `user_activation` + > * resolve mypy type errors + > * change to private methods +* Fix: Mypy type annotation errors in remote/webdriver.py (#15900) +* Deprecate support for FTP proxies (#15906) +* Type hint cleanup (#15917) + > Moves some types from typing to collections.abc, and replaces some type hints with native data types. +* Adding Note to enable_webextensions() regarding CDP (plus gen docstring updates) (#15927) + > * Adding Note to enable_webextensions() regarding CDP (plus some docstring updates) + > * format.sh + > * update error message + > * Update py/selenium/webdriver/chromium/options.py + > Per @navin772 suggestions +* bump versions in preparation for release + Selenium 4.33.0 * Add CDP for Chrome 137 and remove 134 * [bidi]: add bidi storage module (#15669) diff --git a/rb/CHANGES b/rb/CHANGES index 60e24bbfe8828..c22c56fb15b4c 100644 --- a/rb/CHANGES +++ b/rb/CHANGES @@ -1,3 +1,23 @@ +4.34.0 (2025-06-25) +========================= +* Bumping to nightly versions +* Fix child process terminate method when a process is already terminated (#15789) + > * [build] allow tests tagged exclusive-if-local to run on rbe + > * Add rescue and test for child_process terminate method + > * Add rescue for kill method + > * guard against windows + > * guard against windows + > * move child process test + > * remove guard + > * Update test + > * add windows guard + > * add windows guard +* Feat 15905/deprecate ftp proxy (#15926) + > * add deprecation warn for ftp proxy type + > * [proxy] Replace deprecation warning for FTP proxy support with logger method +* update devtools versions +* bump versions in preparation for release + 4.33.0 (2025-05-23) ========================= * Add CDP for Chrome 137 and remove 134 diff --git a/rust/CHANGELOG.md b/rust/CHANGELOG.md index 1633544721513..b1dec6d685b0e 100644 --- a/rust/CHANGELOG.md +++ b/rust/CHANGELOG.md @@ -1,3 +1,7 @@ +0.4.34 +====== +* Electron support in Selenium-Manager (#13954) (#15752) + 0.4.33 ====== * Replace WMIC commands (deprecated) by WinAPI in Windows (#15363) From 0dacbfb333843c6b7cc2073f85b5f3af508acf1f Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 14:16:11 +0200 Subject: [PATCH 08/18] [rb] Fixing linting issues --- rb/.rubocop.yml | 4 ++++ rb/lib/selenium/webdriver/bidi/network/url_pattern.rb | 2 +- rb/lib/selenium/webdriver/common/socket_poller.rb | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/rb/.rubocop.yml b/rb/.rubocop.yml index 372b0f116bd3a..e4c1de8d1de47 100644 --- a/rb/.rubocop.yml +++ b/rb/.rubocop.yml @@ -93,6 +93,10 @@ Naming/MethodParameterName: - id - io +Naming/PredicateMethod: + Exclude: + - 'rb/lib/selenium/webdriver/common/file_reaper.rb' + RSpec/AnyInstance: Enabled: false diff --git a/rb/lib/selenium/webdriver/bidi/network/url_pattern.rb b/rb/lib/selenium/webdriver/bidi/network/url_pattern.rb index 651d7f95471b2..659b4be4a82b5 100644 --- a/rb/lib/selenium/webdriver/bidi/network/url_pattern.rb +++ b/rb/lib/selenium/webdriver/bidi/network/url_pattern.rb @@ -44,7 +44,7 @@ def to_url_pattern(*url_patterns) type: 'pattern', protocol: uri.scheme || '', hostname: uri.host || '', - port: uri.port.to_s || '', + port: uri.port.to_s, pathname: uri.path || '', search: uri.query || '' } diff --git a/rb/lib/selenium/webdriver/common/socket_poller.rb b/rb/lib/selenium/webdriver/common/socket_poller.rb index a638454a026ba..2042ab0751efe 100644 --- a/rb/lib/selenium/webdriver/common/socket_poller.rb +++ b/rb/lib/selenium/webdriver/common/socket_poller.rb @@ -106,7 +106,7 @@ def conn_completed?(sock) sock.getsockopt(Socket::SOL_SOCKET, Socket::SO_ERROR).int.zero? end - def with_timeout + def with_timeout? max_time = current_time + @timeout until current_time > max_time From e6dd0b4f10c3f9f9c5e0793b433ecd1107279c16 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 14:33:26 +0200 Subject: [PATCH 09/18] Fixing file path --- rb/.rubocop.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rb/.rubocop.yml b/rb/.rubocop.yml index e4c1de8d1de47..62bf9ac547ea2 100644 --- a/rb/.rubocop.yml +++ b/rb/.rubocop.yml @@ -95,7 +95,7 @@ Naming/MethodParameterName: Naming/PredicateMethod: Exclude: - - 'rb/lib/selenium/webdriver/common/file_reaper.rb' + - 'lib/selenium/webdriver/common/file_reaper.rb' RSpec/AnyInstance: Enabled: false From 510b91eb4971a5df8d474c0746826a2698e68e98 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 14:47:36 +0200 Subject: [PATCH 10/18] [rb] Adding a new exception in Rubocop --- rb/.rubocop.yml | 1 + rb/lib/selenium/webdriver/common/socket_poller.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/rb/.rubocop.yml b/rb/.rubocop.yml index 62bf9ac547ea2..acd61931660c4 100644 --- a/rb/.rubocop.yml +++ b/rb/.rubocop.yml @@ -96,6 +96,7 @@ Naming/MethodParameterName: Naming/PredicateMethod: Exclude: - 'lib/selenium/webdriver/common/file_reaper.rb' + - 'lib/selenium/webdriver/common/socket_poller.rb' RSpec/AnyInstance: Enabled: false diff --git a/rb/lib/selenium/webdriver/common/socket_poller.rb b/rb/lib/selenium/webdriver/common/socket_poller.rb index 2042ab0751efe..a638454a026ba 100644 --- a/rb/lib/selenium/webdriver/common/socket_poller.rb +++ b/rb/lib/selenium/webdriver/common/socket_poller.rb @@ -106,7 +106,7 @@ def conn_completed?(sock) sock.getsockopt(Socket::SOL_SOCKET, Socket::SO_ERROR).int.zero? end - def with_timeout? + def with_timeout max_time = current_time + @timeout until current_time > max_time From 231d84ac1eb846765f381b435caa9c7e072567b0 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 15:12:57 +0200 Subject: [PATCH 11/18] Making the linter happy --- javascript/selenium-webdriver/CHANGES.md | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/javascript/selenium-webdriver/CHANGES.md b/javascript/selenium-webdriver/CHANGES.md index 48a1062ebf796..74870b0cb5235 100644 --- a/javascript/selenium-webdriver/CHANGES.md +++ b/javascript/selenium-webdriver/CHANGES.md @@ -1,20 +1,9 @@ ## 4.34.0 - Bumping to nightly versions -- Add warning when ftp proxy is used - > Related to #15905 -- Update dependency ws to ^8.18.2 (#15780) - > * Update dependency ws to ^8.18.2 - > * Repin dependencies -- Update dependency sinon to ^19.0.5 (#15771) - > * Update dependency sinon to ^19.0.5 - > * Repin dependencies -- Update dependency multer to v1.4.5-lts.2 (#15770) - > * Update dependency multer to v1.4.5-lts.2 - > * Repin dependencies -- [JS] specify min required node versiton to >=20.0.0 -- update devtools versions -- bump versions in preparation for release +- Add warning when ftp proxy is used (#15905) +- specify min required node version to >=20.0.0 +- [cdp] Add CDP for Chrome 138 and remove 135 ## 4.33.0 From e908685a7ded3ee582ef01f1d12af3ec3c6dbc19 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 15:19:05 +0200 Subject: [PATCH 12/18] Excluding an extra directory from update_copyright.py --- scripts/update_copyright.py | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/update_copyright.py b/scripts/update_copyright.py index d61d03127d296..5238168bb2117 100755 --- a/scripts/update_copyright.py +++ b/scripts/update_copyright.py @@ -99,6 +99,7 @@ def write_update_notice(self, file, lines): f"{ROOT}/javascript/selenium-core/scripts/xmlextras.js", f"{ROOT}/javascript/selenium-core/xpath/**/*.js", f"{ROOT}/javascript/grid-ui/node_modules/**/*.js", + f"{ROOT}/javascript/node/selenium-webdriver/node_modules/**/*.js", ] PY_EXCLUSIONS = [ From 4f72399980b7a833ed01e23607bd7930ecf966c0 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 17:16:24 +0200 Subject: [PATCH 13/18] Pinning Netty to 4.1.21 --- MODULE.bazel | 43 +++++++- java/maven_install.json | 233 +++++++++------------------------------- 2 files changed, 91 insertions(+), 185 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 27127c0d58c3c..97af6800cb5ea 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -12,11 +12,10 @@ bazel_dep(name = "contrib_rules_jvm", version = "0.27.0") bazel_dep(name = "platforms", version = "0.0.11") # Required for the closure rules -bazel_dep(name = "protobuf", version = "29.2", dev_dependency = True, repo_name = "com_google_protobuf") +bazel_dep(name = "protobuf", dev_dependency = True, repo_name = "com_google_protobuf", version = "29.2") # Required for rules_rust to import the crates properly -bazel_dep(name = "rules_cc", version = "0.1.1", dev_dependency = True) - +bazel_dep(name = "rules_cc", dev_dependency = True, version = "0.1.1") bazel_dep(name = "rules_dotnet", version = "0.17.5") bazel_dep(name = "rules_java", version = "8.7.1") bazel_dep(name = "rules_jvm_external", version = "6.6") @@ -30,29 +29,35 @@ bazel_dep(name = "rules_ruby", version = "0.19.0") # Until `rules_jvm_external` 6.8 ships git_override( - module_name = "rules_jvm_external", commit = "29c451d2a62aa2451f5810c005ecac925b4772b6", + module_name = "rules_jvm_external", patch_strip = 1, patches = ["//java:rules_jvm_external_javadoc.patch"], remote = "https://github.com/bazel-contrib/rules_jvm_external.git", ) multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") + multitool.hub(lockfile = "//:multitool.lock.json") + use_repo(multitool, "multitool") linter = use_extension("@apple_rules_lint//lint:extensions.bzl", "linter") + linter.configure( name = "java-spotbugs", config = "//java:spotbugs-config", ) + linter.configure( name = "rust-rustfmt", config = "//rust:enable-rustfmt", ) + linter.register(name = "rust-rustfmt") node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node") + node.toolchain(node_version = "20.9.0") pnpm = use_extension( @@ -60,9 +65,11 @@ pnpm = use_extension( "pnpm", dev_dependency = True, ) + use_repo(pnpm, "pnpm") npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm") + npm.npm_translate_lock( name = "npm", data = [ @@ -77,6 +84,7 @@ npm.npm_translate_lock( update_pnpm_lock = True, verify_node_modules_ignored = "//:.bazelignore", ) + use_repo(npm, "npm") rules_ts_ext = use_extension( @@ -84,53 +92,70 @@ rules_ts_ext = use_extension( "ext", dev_dependency = True, ) + rules_ts_ext.deps( ts_version = "4.9.5", ) + use_repo(rules_ts_ext, "npm_typescript") esbuild = use_extension("@aspect_rules_esbuild//esbuild:extensions.bzl", "esbuild") + esbuild.toolchain(esbuild_version = "0.23.0") + use_repo(esbuild, "esbuild_toolchains") register_toolchains("@esbuild_toolchains//:all") dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet") + dotnet.toolchain(dotnet_version = "8.0.203") + use_repo(dotnet, "dotnet_toolchains") selenium_paket = use_extension("//dotnet:paket.nuget_extension.bzl", "nuget_extension") + use_repo(selenium_paket, "paket.nuget") register_toolchains("@dotnet_toolchains//:all") oci = use_extension("@rules_oci//oci:extensions.bzl", "oci") + oci.pull( name = "java_image_base", digest = "sha256:1df9f3e6a2de0544dd04f1840aa811d334045c9126f9e93d8da45448061ad51e", image = "gcr.io/distroless/java17", ) + oci.pull( name = "firefox_standalone", digest = "sha256:b6d8279268b3183d0d33e667e82fec1824298902f77718764076de763673124f", image = "index.docker.io/selenium/standalone-firefox", ) + oci.pull( name = "chrome_standalone", digest = "sha256:1b809a961a0a77787a7cccac74ddc5570b7e89747f925b8469ddb9a6624d4ece", image = "index.docker.io/selenium/standalone-chrome", ) + use_repo(oci, "chrome_standalone", "firefox_standalone", "java_image_base") python = use_extension("@rules_python//python/extensions:python.bzl", "python") + python.toolchain( is_default = True, python_version = "3.9", ) + python.toolchain(python_version = "3.10") + python.toolchain(python_version = "3.11") + python.toolchain(python_version = "3.12") + python.toolchain(python_version = "3.13") + use_repo(python, "pythons_hub") pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") @@ -155,6 +180,7 @@ use_repo(pip, "py_dev_requirements") register_toolchains("@pythons_hub//:all") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") + use_repo( java_toolchains, "remote_java_tools", @@ -171,6 +197,7 @@ use_repo( ) maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") + maven.install( name = "maven", artifacts = [ @@ -233,7 +260,7 @@ maven.install( ], boms = [ "io.opentelemetry:opentelemetry-bom:1.51.0", - "io.netty:netty-bom:4.2.2.Final", + "io.netty:netty-bom:4.1.21.Final", "org.junit:junit-bom:5.13.2", ], excluded_artifacts = [ @@ -251,9 +278,11 @@ maven.install( resolver = "maven", strict_visibility = True, ) + use_repo(maven, "maven", "unpinned_maven") ruby = use_extension("@rules_ruby//ruby:extensions.bzl", "ruby") + ruby.toolchain( name = "ruby", msys2_packages = [ @@ -262,6 +291,7 @@ ruby.toolchain( ], version_file = "//:rb/.ruby-version", ) + ruby.bundle_fetch( name = "bundle", srcs = [ @@ -357,11 +387,13 @@ ruby.bundle_fetch( gemfile = "//:rb/Gemfile", gemfile_lock = "//:rb/Gemfile.lock", ) + use_repo(ruby, "bundle", "ruby", "ruby_toolchains") register_toolchains("@ruby_toolchains//:all") selenium_manager_artifacts = use_extension("//common:selenium_manager.bzl", "selenium_manager_artifacts") + use_repo( selenium_manager_artifacts, "download_sm_linux", @@ -370,6 +402,7 @@ use_repo( ) pin_browsers_extension = use_extension("//common:repositories.bzl", "pin_browsers_extension") + use_repo( pin_browsers_extension, "linux_beta_chrome", diff --git a/java/maven_install.json b/java/maven_install.json index 6cde3d7c048e6..a08a42c5977b5 100644 --- a/java/maven_install.json +++ b/java/maven_install.json @@ -1,7 +1,7 @@ { "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", - "__INPUT_ARTIFACTS_HASH": -2040146999, - "__RESOLVED_ARTIFACTS_HASH": 1257087844, + "__INPUT_ARTIFACTS_HASH": 1267803245, + "__RESOLVED_ARTIFACTS_HASH": 228948258, "artifacts": { "com.beust:jcommander": { "shasums": { @@ -242,122 +242,87 @@ }, "io.netty:netty-buffer": { "shasums": { - "jar": "4820eeb2d3db269b20b30711e3d7d21979664249aaf10fc67f90dee935810747", - "sources": "4a57786c994867467b551495b82a005c9572af2afa4ef56f51b746bf456c64e0" + "jar": "9e5d03e497ccf8b616908dff0f6b5c416dafa6c65f6781bc229647a5b371cc29", + "sources": "7ccbc3e5f94f2ac5699c84620766f7ca0b74a7f72a0ad587196d688d695f57ba" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-codec": { "shasums": { - "jar": "6a4ea3cedc831a377e20e32da5df4d2a47b954810e941138e3358e313db3a7f9", - "sources": "4ebfe3e1601feafbbc816e410872a717a018e2395d5ec480c17ad910bbeb7f28" + "jar": "4e2222a75b93d3b816a1d8047add9fb1168e47f354092724f21184d6cb6ed062", + "sources": "f3d3e12fa81e1f2e9ae7b9c33a60e8ee5e4f05894a5ef755ea74bd4b767d2fe3" }, - "version": "4.2.2.Final" - }, - "io.netty:netty-codec-base": { - "shasums": { - "jar": "76987614ccb2fda7d3292b69ba5b61351f30e91bf5c7d8fa4b51bc32c9f67456", - "sources": "a25927aa3302d3e414ea632fd3a4b18ab044a54479d68994cd493ab99053411d" - }, - "version": "4.2.2.Final" - }, - "io.netty:netty-codec-compression": { - "shasums": { - "jar": "005734e20aceb5e2c030033f7e042c81ee444497efd110cfca8de445642652ac", - "sources": "a20ff815204c690e32f4231049217e04eb8829f58c9c1d2bae069ef49cc68c52" - }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-codec-dns": { "shasums": { - "jar": "08f203175291ba1496347ad8e7b7ff2a450a5485f6693ca7fdee1e921cfabc92", - "sources": "8b9109e2d9572a81b0a2c455dd528854dcb1f7aa446319b3d430a3afb525f8b9" + "jar": "66471a16b5de8dc7d064a08a5596e57d11070aca7dbd160e9e7a58c896b7c342", + "sources": "4b86f38e2903c33fa0b2590b9f354618434fa3ff0a58a373c0975e5a363ec736" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-codec-http": { "shasums": { - "jar": "587377490ba0a73e2b928019383993fcccea30193eca42c4a164f2eb4d5b5642", - "sources": "864d9c5945d365ae00c1f52a865157dc5ec54fa96132e40bc6ab3000bc67ca42" + "jar": "4213358895a17c6f95ff95498c2d29135e3b106dd15f87cc3f35126f1dcf83e6", + "sources": "fd58e59dedf5ad88d86d3debfb697093ebd78a886dd884770bc9a46cb93c135e" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-codec-http2": { "shasums": { - "jar": "1fd8512c2f9f242cc8f425782cd8cf04fc6c2db68736f82cd5c1d95cf6035513", - "sources": "d5ba80dc8d474ccfef1487081f54dffc51b8f9548f423b892e3396abf99f4ee2" - }, - "version": "4.2.2.Final" - }, - "io.netty:netty-codec-marshalling": { - "shasums": { - "jar": "ae8bb7a077ca02357c922e3abc1acf1bf191d5e2776721d69cbca50a16281096", - "sources": "f62c5fa987dce720a443a2a128db78f64327ce07ccbdeb2cea5c9133891b9103" + "jar": "156d771fd7a856e38a1bc03548f1d1de6afad377a1e88d24fa3e7364dd4a3087", + "sources": "cd99b015aeccfd9a8b43972564ea86cb3e6ef008093a21c19feee79e634a32b2" }, - "version": "4.2.2.Final" - }, - "io.netty:netty-codec-protobuf": { - "shasums": { - "jar": "cfe0c7e6e68d83480a639b533eb7edaaf3252cfae8b73d0e362859673a4f9d97", - "sources": "f91224b8303064d8afae754f67ccc95f0f151af1aa58583b967fc999b69d24e8" - }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-codec-socks": { "shasums": { - "jar": "801fb0cdc8aca4c2a95081df19c1db6d1020e2974cbe07ef145344b02dbf686c", - "sources": "619575a6e261e6530a82368240ff59febc2500fd5f507b975a89e53e6d0116e4" + "jar": "de5c6c1dc43ed9bf7e997f82d94bad66c31bf12bc5b7a13e0a24750bbadae7a9", + "sources": "24ac3ab8c88dd21fbb151d134139ba86687bf8201c13224513402d2bcb3fac53" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-common": { "shasums": { - "jar": "5d022f3acad74cb0f195f60213500a4000d1340e5e941edaf1a0e756686b9bae", - "sources": "f45ba0dc8a5f431036cad262ce30beaa4404efda487ccac950eded80d0fb2e32" + "jar": "2a00165a79e5a60d340313543204082f2041dceb6349cf36f0201b696abc943b", + "sources": "783ea79dd6d3911847e9dff7300ca0fa89e155b00139213f07e0047ec7a86b39" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-handler": { "shasums": { - "jar": "d4ef582c78125457baa0cfa52992b5fb1bb9172d1a2c03b726e8b26e17d3fe2c", - "sources": "9c2a4a8a3399de78c1a945e69c5d25b7eec9297d612f499ea3b8b9fbdf1121f4" + "jar": "62d3f8316b4e6e2ca62abde53eae4ee50ca5f58c51f67d234e81eff1e16daf76", + "sources": "9dea13d3eb1be17f2072fb277933a03aa7aaa99675126b9640b121a24da8df70" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-handler-proxy": { "shasums": { - "jar": "23b1a31143d6278861631b7c2dc36bf46aa1af39e244ba71d03127ab8eced5e3", - "sources": "d8227ba919bc536e0332b2b063b3a677f0299265f4f417ded7f214a101dd86cb" + "jar": "e734ea6df870b3a7dcda63c7bfb81d5bd03d2cec4ea22bc108369c198bbb588e", + "sources": "fa47cd2d47b96e3494620021843cd69be29de7fb7bb12d61d4cc73d9f543af32" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-resolver": { "shasums": { - "jar": "fa7841ffe2e39d52251814fb8560d6936b10ae7c67453ee50426b83fd5170ba0", - "sources": "b228ca14c1034ef4eec76b4917218a4185bb516796342de363a91a65b7a2f9b1" + "jar": "d859d90b3283f38e2b7a8a030e8ce8f6d0dbd20167704124cdb76a92d75108b4", + "sources": "e8a1c750c3cd8ee30e08894170279a673343e96b295a0f9834e0113562f5e611" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-resolver-dns": { "shasums": { - "jar": "6b0cf74a7dedcc80e22fcdd98bec81868ca93eea89ef78218a882b7d8ab15577", - "sources": "2b83399765cb46294e3ba7011e5562eca2455ec1931d09aa708d32155c9b7a0f" + "jar": "c4453fab3a451ff42483b48770f8bf0bcc03e50825d863266b6011eba4fc7a9f", + "sources": "1cc596d4102dce01e93cea39f59e642d6662ac9cf379b81f3f4d25d96b6ff3e1" }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.netty:netty-transport": { "shasums": { - "jar": "116d766a1af4722fe76a4cdaed969644985d44e08ec1337d2dbab697dd109603", - "sources": "e3f8839e793dd794aff06aa150cb40b2237cfee976784ed58774dc95c6816378" + "jar": "963aed1976431e23453ee5fcf0a69bc1f53b090a5d43ad6d4aa2d0d2886ed165", + "sources": "c14b6644bdc34cd55bb0534028fb562fa3c573d0e58760c917f22dd69d9c07e1" }, - "version": "4.2.2.Final" - }, - "io.netty:netty-transport-native-unix-common": { - "shasums": { - "jar": "aa8821a7ea2ca47f62740bd1f37d67deb97824cc77e76dde6ae2c439a923fc9d", - "sources": "5fa97f134b87fef43ef69c844c7a2108a22bf1a37f6b3b88ace610d57367a457" - }, - "version": "4.2.2.Final" + "version": "4.1.21.Final" }, "io.opentelemetry:opentelemetry-api": { "shasums": { @@ -936,104 +901,43 @@ "io.netty:netty-common" ], "io.netty:netty-codec": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-codec-compression", - "io.netty:netty-codec-marshalling", - "io.netty:netty-codec-protobuf", - "io.netty:netty-common", - "io.netty:netty-transport" - ], - "io.netty:netty-codec-base": [ - "io.netty:netty-buffer", - "io.netty:netty-common", - "io.netty:netty-transport" - ], - "io.netty:netty-codec-compression": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-common", "io.netty:netty-transport" ], "io.netty:netty-codec-dns": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-common", - "io.netty:netty-transport" + "io.netty:netty-codec" ], "io.netty:netty-codec-http": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-codec-compression", - "io.netty:netty-common", - "io.netty:netty-handler", - "io.netty:netty-transport" + "io.netty:netty-codec" ], "io.netty:netty-codec-http2": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", "io.netty:netty-codec-http", - "io.netty:netty-common", - "io.netty:netty-handler", - "io.netty:netty-transport" - ], - "io.netty:netty-codec-marshalling": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-common", - "io.netty:netty-transport" - ], - "io.netty:netty-codec-protobuf": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-common", - "io.netty:netty-transport" + "io.netty:netty-handler" ], "io.netty:netty-codec-socks": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-common", - "io.netty:netty-transport" + "io.netty:netty-codec" ], "io.netty:netty-handler": [ "io.netty:netty-buffer", - "io.netty:netty-codec-base", - "io.netty:netty-common", - "io.netty:netty-resolver", - "io.netty:netty-transport", - "io.netty:netty-transport-native-unix-common" + "io.netty:netty-codec", + "io.netty:netty-transport" ], "io.netty:netty-handler-proxy": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", "io.netty:netty-codec-http", "io.netty:netty-codec-socks", - "io.netty:netty-common", - "io.netty:netty-handler", "io.netty:netty-transport" ], "io.netty:netty-resolver": [ "io.netty:netty-common" ], "io.netty:netty-resolver-dns": [ - "io.netty:netty-buffer", - "io.netty:netty-codec-base", "io.netty:netty-codec-dns", - "io.netty:netty-common", - "io.netty:netty-handler", "io.netty:netty-resolver", "io.netty:netty-transport" ], "io.netty:netty-transport": [ "io.netty:netty-buffer", - "io.netty:netty-common", "io.netty:netty-resolver" ], - "io.netty:netty-transport-native-unix-common": [ - "io.netty:netty-buffer", - "io.netty:netty-common", - "io.netty:netty-transport" - ], "io.opentelemetry:opentelemetry-api": [ "io.opentelemetry:opentelemetry-context" ], @@ -1645,20 +1549,19 @@ "io.lettuce.core.vector" ], "io.netty:netty-buffer": [ - "io.netty.buffer", - "io.netty.buffer.search", - "io.netty.buffer.svm" + "io.netty.buffer" ], - "io.netty:netty-codec-base": [ + "io.netty:netty-codec": [ "io.netty.handler.codec", "io.netty.handler.codec.base64", "io.netty.handler.codec.bytes", + "io.netty.handler.codec.compression", "io.netty.handler.codec.json", + "io.netty.handler.codec.marshalling", + "io.netty.handler.codec.protobuf", "io.netty.handler.codec.serialization", - "io.netty.handler.codec.string" - ], - "io.netty:netty-codec-compression": [ - "io.netty.handler.codec.compression" + "io.netty.handler.codec.string", + "io.netty.handler.codec.xml" ], "io.netty:netty-codec-dns": [ "io.netty.handler.codec.dns" @@ -1677,12 +1580,6 @@ "io.netty:netty-codec-http2": [ "io.netty.handler.codec.http2" ], - "io.netty:netty-codec-marshalling": [ - "io.netty.handler.codec.marshalling" - ], - "io.netty:netty-codec-protobuf": [ - "io.netty.handler.codec.protobuf" - ], "io.netty:netty-codec-socks": [ "io.netty.handler.codec.socks", "io.netty.handler.codec.socksx", @@ -1695,23 +1592,17 @@ "io.netty.util.concurrent", "io.netty.util.internal", "io.netty.util.internal.logging", - "io.netty.util.internal.shaded.org.jctools.counters", - "io.netty.util.internal.shaded.org.jctools.maps", "io.netty.util.internal.shaded.org.jctools.queues", "io.netty.util.internal.shaded.org.jctools.queues.atomic", - "io.netty.util.internal.shaded.org.jctools.queues.atomic.unpadded", - "io.netty.util.internal.shaded.org.jctools.queues.unpadded", - "io.netty.util.internal.shaded.org.jctools.util", - "io.netty.util.internal.svm" + "io.netty.util.internal.shaded.org.jctools.util" ], "io.netty:netty-handler": [ - "io.netty.handler.address", "io.netty.handler.flow", "io.netty.handler.flush", "io.netty.handler.ipfilter", "io.netty.handler.logging", - "io.netty.handler.pcap", "io.netty.handler.ssl", + "io.netty.handler.ssl.ocsp", "io.netty.handler.ssl.util", "io.netty.handler.stream", "io.netty.handler.timeout", @@ -1740,9 +1631,6 @@ "io.netty.channel.socket.nio", "io.netty.channel.socket.oio" ], - "io.netty:netty-transport-native-unix-common": [ - "io.netty.channel.unix" - ], "io.opentelemetry:opentelemetry-api": [ "io.opentelemetry.api", "io.opentelemetry.api.baggage", @@ -3102,20 +2990,12 @@ "io.netty:netty-buffer", "io.netty:netty-buffer:jar:sources", "io.netty:netty-codec", - "io.netty:netty-codec-base", - "io.netty:netty-codec-base:jar:sources", - "io.netty:netty-codec-compression", - "io.netty:netty-codec-compression:jar:sources", "io.netty:netty-codec-dns", "io.netty:netty-codec-dns:jar:sources", "io.netty:netty-codec-http", "io.netty:netty-codec-http2", "io.netty:netty-codec-http2:jar:sources", "io.netty:netty-codec-http:jar:sources", - "io.netty:netty-codec-marshalling", - "io.netty:netty-codec-marshalling:jar:sources", - "io.netty:netty-codec-protobuf", - "io.netty:netty-codec-protobuf:jar:sources", "io.netty:netty-codec-socks", "io.netty:netty-codec-socks:jar:sources", "io.netty:netty-codec:jar:sources", @@ -3130,8 +3010,6 @@ "io.netty:netty-resolver-dns:jar:sources", "io.netty:netty-resolver:jar:sources", "io.netty:netty-transport", - "io.netty:netty-transport-native-unix-common", - "io.netty:netty-transport-native-unix-common:jar:sources", "io.netty:netty-transport:jar:sources", "io.opentelemetry:opentelemetry-api", "io.opentelemetry:opentelemetry-api:jar:sources", @@ -3319,11 +3197,6 @@ "io.lettuce.core.support.LettuceCdiExtension" ] }, - "io.netty:netty-common": { - "reactor.blockhound.integration.BlockHoundIntegration": [ - "io.netty.util.internal.Hidden$NettyBlockHoundIntegration" - ] - }, "io.opentelemetry:opentelemetry-exporter-logging": { "io.opentelemetry.sdk.autoconfigure.spi.internal.ComponentProvider": [ "io.opentelemetry.exporter.logging.internal.ConsoleLogRecordExporterComponentProvider", From 2813c8da3f1dbf45be528f91e7138cb5bb06cdba Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 17:17:54 +0200 Subject: [PATCH 14/18] Running format script --- MODULE.bazel | 41 ++++------------------------------------- 1 file changed, 4 insertions(+), 37 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 97af6800cb5ea..97532e92628ab 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -12,10 +12,11 @@ bazel_dep(name = "contrib_rules_jvm", version = "0.27.0") bazel_dep(name = "platforms", version = "0.0.11") # Required for the closure rules -bazel_dep(name = "protobuf", dev_dependency = True, repo_name = "com_google_protobuf", version = "29.2") +bazel_dep(name = "protobuf", version = "29.2", dev_dependency = True, repo_name = "com_google_protobuf") # Required for rules_rust to import the crates properly -bazel_dep(name = "rules_cc", dev_dependency = True, version = "0.1.1") +bazel_dep(name = "rules_cc", version = "0.1.1", dev_dependency = True) + bazel_dep(name = "rules_dotnet", version = "0.17.5") bazel_dep(name = "rules_java", version = "8.7.1") bazel_dep(name = "rules_jvm_external", version = "6.6") @@ -29,35 +30,29 @@ bazel_dep(name = "rules_ruby", version = "0.19.0") # Until `rules_jvm_external` 6.8 ships git_override( - commit = "29c451d2a62aa2451f5810c005ecac925b4772b6", module_name = "rules_jvm_external", + commit = "29c451d2a62aa2451f5810c005ecac925b4772b6", patch_strip = 1, patches = ["//java:rules_jvm_external_javadoc.patch"], remote = "https://github.com/bazel-contrib/rules_jvm_external.git", ) multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") - multitool.hub(lockfile = "//:multitool.lock.json") - use_repo(multitool, "multitool") linter = use_extension("@apple_rules_lint//lint:extensions.bzl", "linter") - linter.configure( name = "java-spotbugs", config = "//java:spotbugs-config", ) - linter.configure( name = "rust-rustfmt", config = "//rust:enable-rustfmt", ) - linter.register(name = "rust-rustfmt") node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node") - node.toolchain(node_version = "20.9.0") pnpm = use_extension( @@ -65,11 +60,9 @@ pnpm = use_extension( "pnpm", dev_dependency = True, ) - use_repo(pnpm, "pnpm") npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm") - npm.npm_translate_lock( name = "npm", data = [ @@ -84,7 +77,6 @@ npm.npm_translate_lock( update_pnpm_lock = True, verify_node_modules_ignored = "//:.bazelignore", ) - use_repo(npm, "npm") rules_ts_ext = use_extension( @@ -92,70 +84,53 @@ rules_ts_ext = use_extension( "ext", dev_dependency = True, ) - rules_ts_ext.deps( ts_version = "4.9.5", ) - use_repo(rules_ts_ext, "npm_typescript") esbuild = use_extension("@aspect_rules_esbuild//esbuild:extensions.bzl", "esbuild") - esbuild.toolchain(esbuild_version = "0.23.0") - use_repo(esbuild, "esbuild_toolchains") register_toolchains("@esbuild_toolchains//:all") dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet") - dotnet.toolchain(dotnet_version = "8.0.203") - use_repo(dotnet, "dotnet_toolchains") selenium_paket = use_extension("//dotnet:paket.nuget_extension.bzl", "nuget_extension") - use_repo(selenium_paket, "paket.nuget") register_toolchains("@dotnet_toolchains//:all") oci = use_extension("@rules_oci//oci:extensions.bzl", "oci") - oci.pull( name = "java_image_base", digest = "sha256:1df9f3e6a2de0544dd04f1840aa811d334045c9126f9e93d8da45448061ad51e", image = "gcr.io/distroless/java17", ) - oci.pull( name = "firefox_standalone", digest = "sha256:b6d8279268b3183d0d33e667e82fec1824298902f77718764076de763673124f", image = "index.docker.io/selenium/standalone-firefox", ) - oci.pull( name = "chrome_standalone", digest = "sha256:1b809a961a0a77787a7cccac74ddc5570b7e89747f925b8469ddb9a6624d4ece", image = "index.docker.io/selenium/standalone-chrome", ) - use_repo(oci, "chrome_standalone", "firefox_standalone", "java_image_base") python = use_extension("@rules_python//python/extensions:python.bzl", "python") - python.toolchain( is_default = True, python_version = "3.9", ) - python.toolchain(python_version = "3.10") - python.toolchain(python_version = "3.11") - python.toolchain(python_version = "3.12") - python.toolchain(python_version = "3.13") - use_repo(python, "pythons_hub") pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") @@ -180,7 +155,6 @@ use_repo(pip, "py_dev_requirements") register_toolchains("@pythons_hub//:all") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") - use_repo( java_toolchains, "remote_java_tools", @@ -197,7 +171,6 @@ use_repo( ) maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") - maven.install( name = "maven", artifacts = [ @@ -278,11 +251,9 @@ maven.install( resolver = "maven", strict_visibility = True, ) - use_repo(maven, "maven", "unpinned_maven") ruby = use_extension("@rules_ruby//ruby:extensions.bzl", "ruby") - ruby.toolchain( name = "ruby", msys2_packages = [ @@ -291,7 +262,6 @@ ruby.toolchain( ], version_file = "//:rb/.ruby-version", ) - ruby.bundle_fetch( name = "bundle", srcs = [ @@ -387,13 +357,11 @@ ruby.bundle_fetch( gemfile = "//:rb/Gemfile", gemfile_lock = "//:rb/Gemfile.lock", ) - use_repo(ruby, "bundle", "ruby", "ruby_toolchains") register_toolchains("@ruby_toolchains//:all") selenium_manager_artifacts = use_extension("//common:selenium_manager.bzl", "selenium_manager_artifacts") - use_repo( selenium_manager_artifacts, "download_sm_linux", @@ -402,7 +370,6 @@ use_repo( ) pin_browsers_extension = use_extension("//common:repositories.bzl", "pin_browsers_extension") - use_repo( pin_browsers_extension, "linux_beta_chrome", From e53c04a5bbad01da689ea3588bf103a0d452a75a Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 18:28:17 +0200 Subject: [PATCH 15/18] Refining changelogs --- dotnet/CHANGELOG | 2 +- java/CHANGELOG | 43 +------------------------------------------ py/CHANGES | 34 +--------------------------------- rb/CHANGES | 18 ++---------------- rust/CHANGELOG.md | 1 + 5 files changed, 6 insertions(+), 92 deletions(-) diff --git a/dotnet/CHANGELOG b/dotnet/CHANGELOG index 1e67a23b37a9a..21b660ef73b2e 100644 --- a/dotnet/CHANGELOG +++ b/dotnet/CHANGELOG @@ -1,5 +1,6 @@ v4.34.0 ====== +* Add CDP for Chrome 138 and remove 135 * [bidi] Add AcceptInsecureCerts and Proxy options when create new user context (#15795) * [bidi] Actively use TryGetValue while processing incoming messages * [bidi] Declare allowed nullable objects in constructors type (#15809) @@ -11,7 +12,6 @@ v4.34.0 * [bidi] Add OnHistoryUpdated event (#15916) * Mark FTP proxy support as deprecated (#15925) * [bidi] Protect DTO types from inheritance (#15919) -* update devtools versions v4.33.0 ====== diff --git a/java/CHANGELOG b/java/CHANGELOG index dad5955e8c712..01790f1807001 100644 --- a/java/CHANGELOG +++ b/java/CHANGELOG @@ -1,67 +1,26 @@ v4.34.0 ====== +* Add CDP for Chrome 138 and remove 135 * Removing deprecated BrowsingContext constructor. * [grid] Silent fail on invalid log level (#15796) - > * [grid] Silent fail on invalid log level - > Fixing issue where providing an invalid log level to Grid will fail silently. - > Since the logger is not yet configured a stacktrace with the exception is printed to console and we continue since the default log level is already configured. - > Fixes #15790 - > * [grid] Silent fail on invalid log level - > Adding link to logging levels as suggested by @diemol and formatting. - > * [grid] Silent fail on invalid log level - > Adding hardcoded log levels as suggested by review. * Removing deprecated OsProcess class. * Removing deprecated CommandLine class. * Removing deprecated ContextAware interface. * Fixing `getCredential` for VirtualAuthenticator * Caching the size/length in loops to slightly improve performance (#15852) - > caching the size/length in loops to slightly improve performance and readability * [feature] add method RemoteWebDriver.isDownloadsEnabled() (#15868) * [refactor] use constant `CapabilityType.ENABLE_DOWNLOADS` instead of hard-coded value `se:downloadsEnabled` (#15867) - > [refactor] use constant CapabilityType.ENABLE_DOWNLOADS instead of hard-coded value "se:downloadsEnabled" * [bidi] Add new fields of BrowsingContextInfo * [bidi]Add method to get browsing context tree with root -* Fix code formatting (#15903) * [grid] Add GreedySlotSelector as a built-in slot-selector option (#15897) * deprecate FtpProxy (#15907) - > Deprecates FTP Proxy as it is no longer supported by browsers -* [grid] Add config `blocked-routes` and specific `blocked-delete-session` in Router (#15920) -* Revert "[grid] Add config `blocked-routes` and specific `blocked-delete-session` in Router" (#15921) * [BiDi] implement browsingContext.historyUpdated (#15901) * [refactor] Remove Empty Space in CommandPayload (#15934) - > - Remove an empty space in the constructor. - > [skip ci] * [FEAT] Add macOS-specific keys (OPTION, FN) to Keys enum for improved… (#15910) - > * [FEAT] Add macOS-specific keys (OPTION, FN) to Keys enum for improved platform support - > * [FEAT] These additions (RIGHT_SHIFT, RIGHT_CONTROL, RIGHT_ALT, RIGHT_COMMAND) follow conventions already in use by ChromeDriver and allow for more accurate key simulations. While not currently in the W3C WebDriver specification, they represent a practical standard used in the field. - > * [FEAT] Add macOS-specific and ChromeDriver-aligned extended keys - > - Added RIGHT_SHIFT, RIGHT_CONTROL, RIGHT_ALT, and RIGHT_COMMAND using Unicode PUA codes observed in ChromeDriver. - > - Included symbolic macOS keys OPTION and FN, marked with TODO comments for future validation against W3C WebDriver spec. - > - Updated class-level Javadoc to clarify the role of PUA mappings and their interoperability considerations. - > These additions improve platform representation and lay the groundwork for consistent macOS key handling. - > * Format script * [BiDi] implement web extensions (#15660) - > * [BiDi] implement web extensions - > * cleanup - > * fix spotbug * Made ``JsonToWebElementConverter`` methods/fields protected (#15885) - > Made ``JsonToWebElementConverter`` methods protected - > so that the class can be properly extended * [grid] Session can be deleted via Grid UI (#15808) - > * [grid] Session can be deleted via Grid UI - > * Add notification on the flag to disable session deletion - > * Use Node config to disable delete session on UI - > * Add unit test - > * Run format - > * Disable by default - > * Run format -* Feat 14291/jspecify nullable annotation (#15924) * Use Environment variable to set driver location (#15653) - > * Use environment variable to set driver locations - > Related to #14045 - > * Fix formatting - > * Repinning deps -* update devtools versions v4.33.0 ====== diff --git a/py/CHANGES b/py/CHANGES index 918ee663f4696..63572ca60f31e 100644 --- a/py/CHANGES +++ b/py/CHANGES @@ -1,58 +1,26 @@ Selenium 4.34.0 -* Bumping to nightly versions +* Add CDP for Chrome 138 and remove 135 * Upgrade type hints (#15784) - > - Upgrade type hints to Python 3.9+ syntax throughout codebase - > - Replace legacy List, Dict, Tuple, etc. with built-in generics (e.g., list, dict, tuple) - > - Move type hints to use collections.abc where appropriate * Fix type error for attribute in remote_connection.py (#15810) * Fixed type hint (#15814) - > Fixed type hint in selenium/webdriver/common/bidi/common.py * Fix import for type hint (#15817) * [bidi]: add `enable_webextensions` option for chromium-based browsers (#15794) - > * add `enable_webextensions` method and exception for chrome webextensions - > * add chrome test for webextension from path - > * add separate test class and driver for chrome/edge tests * Fix type annotation errors (#15841) - > Fixes type annotation errors in storage.py, options.py, and virtual_authenticator.py * Fixed type annotation issues (#15847) * [bidi]: implement bidi permissions module (#15830) - > * implement bidi permissions module - > * add tests - > Thank you @navin772 * Fixed mypy error and change source var (#15853) * do not use global var for devtools, allows multiple devtools to run (#15881) * Fix : Mypy type annotation errors - 2 (#15848) - > * Fix : Mypy type annotation errors - > * Reverted changes in py\selenium\webdriver\common\bidi\browser.py - > * Fix: two more files - > * Remove browser.py from PR - > * make changes as per bidi spec * [bidi]: add `timestamp` to `HistoryUpdatedParams` class (#15892) - > add `timestamp` to `HistoryUpdatedParams` class * Fix possible TypeError in expected conditions (#15891) * Refactor server.py to use properties (#15840) * Add properties (getter/setter) for service args (#15889) * Fix error handler for non-json response bodies (#15887) - > Fix error handler `check_response` for non-json responses from webdriver so it doesn't raise a cryptic error. * [bidi]: add BiDi script module commands (#15880) - > * add bidi script commands - > * add bidi script tests - > * improve some test assertions - > * modify tests for `result_ownership` and `serialization_options` - > * modify tests for `disown` and `user_activation` - > * resolve mypy type errors - > * change to private methods * Fix: Mypy type annotation errors in remote/webdriver.py (#15900) * Deprecate support for FTP proxies (#15906) * Type hint cleanup (#15917) - > Moves some types from typing to collections.abc, and replaces some type hints with native data types. * Adding Note to enable_webextensions() regarding CDP (plus gen docstring updates) (#15927) - > * Adding Note to enable_webextensions() regarding CDP (plus some docstring updates) - > * format.sh - > * update error message - > * Update py/selenium/webdriver/chromium/options.py - > Per @navin772 suggestions -* bump versions in preparation for release Selenium 4.33.0 * Add CDP for Chrome 137 and remove 134 diff --git a/rb/CHANGES b/rb/CHANGES index c22c56fb15b4c..397685967bc88 100644 --- a/rb/CHANGES +++ b/rb/CHANGES @@ -1,22 +1,8 @@ 4.34.0 (2025-06-25) ========================= -* Bumping to nightly versions +* Add CDP for Chrome 138 and remove 135 * Fix child process terminate method when a process is already terminated (#15789) - > * [build] allow tests tagged exclusive-if-local to run on rbe - > * Add rescue and test for child_process terminate method - > * Add rescue for kill method - > * guard against windows - > * guard against windows - > * move child process test - > * remove guard - > * Update test - > * add windows guard - > * add windows guard -* Feat 15905/deprecate ftp proxy (#15926) - > * add deprecation warn for ftp proxy type - > * [proxy] Replace deprecation warning for FTP proxy support with logger method -* update devtools versions -* bump versions in preparation for release +* Deprecate ftp proxy (#15926) 4.33.0 (2025-05-23) ========================= diff --git a/rust/CHANGELOG.md b/rust/CHANGELOG.md index b1dec6d685b0e..087649ca5ef41 100644 --- a/rust/CHANGELOG.md +++ b/rust/CHANGELOG.md @@ -1,6 +1,7 @@ 0.4.34 ====== * Electron support in Selenium-Manager (#13954) (#15752) +* Bug-fix: avoid to download safaridriver and clear lock parent folder (#15775) 0.4.33 ====== From 5303307db54f4dafdae9683b10c760763c5a3027 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 20:36:51 +0200 Subject: [PATCH 16/18] Pinning Netty to 4.1.121 --- MODULE.bazel | 43 ++++++++++-- java/maven_install.json | 147 ++++++++++++++++++++++++++++------------ 2 files changed, 140 insertions(+), 50 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 97532e92628ab..eccf46a6faa57 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -12,11 +12,10 @@ bazel_dep(name = "contrib_rules_jvm", version = "0.27.0") bazel_dep(name = "platforms", version = "0.0.11") # Required for the closure rules -bazel_dep(name = "protobuf", version = "29.2", dev_dependency = True, repo_name = "com_google_protobuf") +bazel_dep(name = "protobuf", dev_dependency = True, repo_name = "com_google_protobuf", version = "29.2") # Required for rules_rust to import the crates properly -bazel_dep(name = "rules_cc", version = "0.1.1", dev_dependency = True) - +bazel_dep(name = "rules_cc", dev_dependency = True, version = "0.1.1") bazel_dep(name = "rules_dotnet", version = "0.17.5") bazel_dep(name = "rules_java", version = "8.7.1") bazel_dep(name = "rules_jvm_external", version = "6.6") @@ -30,29 +29,35 @@ bazel_dep(name = "rules_ruby", version = "0.19.0") # Until `rules_jvm_external` 6.8 ships git_override( - module_name = "rules_jvm_external", commit = "29c451d2a62aa2451f5810c005ecac925b4772b6", + module_name = "rules_jvm_external", patch_strip = 1, patches = ["//java:rules_jvm_external_javadoc.patch"], remote = "https://github.com/bazel-contrib/rules_jvm_external.git", ) multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") + multitool.hub(lockfile = "//:multitool.lock.json") + use_repo(multitool, "multitool") linter = use_extension("@apple_rules_lint//lint:extensions.bzl", "linter") + linter.configure( name = "java-spotbugs", config = "//java:spotbugs-config", ) + linter.configure( name = "rust-rustfmt", config = "//rust:enable-rustfmt", ) + linter.register(name = "rust-rustfmt") node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node") + node.toolchain(node_version = "20.9.0") pnpm = use_extension( @@ -60,9 +65,11 @@ pnpm = use_extension( "pnpm", dev_dependency = True, ) + use_repo(pnpm, "pnpm") npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm") + npm.npm_translate_lock( name = "npm", data = [ @@ -77,6 +84,7 @@ npm.npm_translate_lock( update_pnpm_lock = True, verify_node_modules_ignored = "//:.bazelignore", ) + use_repo(npm, "npm") rules_ts_ext = use_extension( @@ -84,53 +92,70 @@ rules_ts_ext = use_extension( "ext", dev_dependency = True, ) + rules_ts_ext.deps( ts_version = "4.9.5", ) + use_repo(rules_ts_ext, "npm_typescript") esbuild = use_extension("@aspect_rules_esbuild//esbuild:extensions.bzl", "esbuild") + esbuild.toolchain(esbuild_version = "0.23.0") + use_repo(esbuild, "esbuild_toolchains") register_toolchains("@esbuild_toolchains//:all") dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet") + dotnet.toolchain(dotnet_version = "8.0.203") + use_repo(dotnet, "dotnet_toolchains") selenium_paket = use_extension("//dotnet:paket.nuget_extension.bzl", "nuget_extension") + use_repo(selenium_paket, "paket.nuget") register_toolchains("@dotnet_toolchains//:all") oci = use_extension("@rules_oci//oci:extensions.bzl", "oci") + oci.pull( name = "java_image_base", digest = "sha256:1df9f3e6a2de0544dd04f1840aa811d334045c9126f9e93d8da45448061ad51e", image = "gcr.io/distroless/java17", ) + oci.pull( name = "firefox_standalone", digest = "sha256:b6d8279268b3183d0d33e667e82fec1824298902f77718764076de763673124f", image = "index.docker.io/selenium/standalone-firefox", ) + oci.pull( name = "chrome_standalone", digest = "sha256:1b809a961a0a77787a7cccac74ddc5570b7e89747f925b8469ddb9a6624d4ece", image = "index.docker.io/selenium/standalone-chrome", ) + use_repo(oci, "chrome_standalone", "firefox_standalone", "java_image_base") python = use_extension("@rules_python//python/extensions:python.bzl", "python") + python.toolchain( is_default = True, python_version = "3.9", ) + python.toolchain(python_version = "3.10") + python.toolchain(python_version = "3.11") + python.toolchain(python_version = "3.12") + python.toolchain(python_version = "3.13") + use_repo(python, "pythons_hub") pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") @@ -155,6 +180,7 @@ use_repo(pip, "py_dev_requirements") register_toolchains("@pythons_hub//:all") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") + use_repo( java_toolchains, "remote_java_tools", @@ -171,6 +197,7 @@ use_repo( ) maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") + maven.install( name = "maven", artifacts = [ @@ -233,7 +260,7 @@ maven.install( ], boms = [ "io.opentelemetry:opentelemetry-bom:1.51.0", - "io.netty:netty-bom:4.1.21.Final", + "io.netty:netty-bom:4.1.121.Final", "org.junit:junit-bom:5.13.2", ], excluded_artifacts = [ @@ -251,9 +278,11 @@ maven.install( resolver = "maven", strict_visibility = True, ) + use_repo(maven, "maven", "unpinned_maven") ruby = use_extension("@rules_ruby//ruby:extensions.bzl", "ruby") + ruby.toolchain( name = "ruby", msys2_packages = [ @@ -262,6 +291,7 @@ ruby.toolchain( ], version_file = "//:rb/.ruby-version", ) + ruby.bundle_fetch( name = "bundle", srcs = [ @@ -357,11 +387,13 @@ ruby.bundle_fetch( gemfile = "//:rb/Gemfile", gemfile_lock = "//:rb/Gemfile.lock", ) + use_repo(ruby, "bundle", "ruby", "ruby_toolchains") register_toolchains("@ruby_toolchains//:all") selenium_manager_artifacts = use_extension("//common:selenium_manager.bzl", "selenium_manager_artifacts") + use_repo( selenium_manager_artifacts, "download_sm_linux", @@ -370,6 +402,7 @@ use_repo( ) pin_browsers_extension = use_extension("//common:repositories.bzl", "pin_browsers_extension") + use_repo( pin_browsers_extension, "linux_beta_chrome", diff --git a/java/maven_install.json b/java/maven_install.json index a08a42c5977b5..e95c7819e1a82 100644 --- a/java/maven_install.json +++ b/java/maven_install.json @@ -1,7 +1,7 @@ { "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", - "__INPUT_ARTIFACTS_HASH": 1267803245, - "__RESOLVED_ARTIFACTS_HASH": 228948258, + "__INPUT_ARTIFACTS_HASH": -1594008950, + "__RESOLVED_ARTIFACTS_HASH": 516955126, "artifacts": { "com.beust:jcommander": { "shasums": { @@ -242,87 +242,94 @@ }, "io.netty:netty-buffer": { "shasums": { - "jar": "9e5d03e497ccf8b616908dff0f6b5c416dafa6c65f6781bc229647a5b371cc29", - "sources": "7ccbc3e5f94f2ac5699c84620766f7ca0b74a7f72a0ad587196d688d695f57ba" + "jar": "7d6ce32479f6f1326637ba118061bad31c3f7279f5fc2887aae8cba2526dcbff", + "sources": "bf48a9e792d3e8a885ecd6047b456b4fb5c468da00a6a537582522a6df30ceba" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-codec": { "shasums": { - "jar": "4e2222a75b93d3b816a1d8047add9fb1168e47f354092724f21184d6cb6ed062", - "sources": "f3d3e12fa81e1f2e9ae7b9c33a60e8ee5e4f05894a5ef755ea74bd4b767d2fe3" + "jar": "140f3a8d784aefd81700383471bd9220feb3438e5b1f441b6f80548529d9d516", + "sources": "f17c838addf2b7da6e826eb92c6fdb1a4024efeb5ab19e59701329cc9d63933f" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-codec-dns": { "shasums": { - "jar": "66471a16b5de8dc7d064a08a5596e57d11070aca7dbd160e9e7a58c896b7c342", - "sources": "4b86f38e2903c33fa0b2590b9f354618434fa3ff0a58a373c0975e5a363ec736" + "jar": "1652e3aa9508f5bfcb400ce72d6f7b824b68bc2a15e347285f9a88b008eef821", + "sources": "e703097aaca60b51a44f1084a171f9f10a62dfb7dd831bf94d759f36c347adb4" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-codec-http": { "shasums": { - "jar": "4213358895a17c6f95ff95498c2d29135e3b106dd15f87cc3f35126f1dcf83e6", - "sources": "fd58e59dedf5ad88d86d3debfb697093ebd78a886dd884770bc9a46cb93c135e" + "jar": "5dab40173bdf9219a7d9f3ae94acb0659d5c0e20ff6d5ffbd7b39a1268c31c1a", + "sources": "ea12082b94cb758297fcc8e2a1f77aa06a0c6fefd7fa7e9c1ecefebbb7c1ef02" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-codec-http2": { "shasums": { - "jar": "156d771fd7a856e38a1bc03548f1d1de6afad377a1e88d24fa3e7364dd4a3087", - "sources": "cd99b015aeccfd9a8b43972564ea86cb3e6ef008093a21c19feee79e634a32b2" + "jar": "7513c0d74ae4c70b86b18fc7f25a2f97ae57b1cbdb38c5f6d547ea14d5ddecc7", + "sources": "4efd24503ee3741a860c3d81b63fb04852477c18bbef4896293ac2389888fc0f" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-codec-socks": { "shasums": { - "jar": "de5c6c1dc43ed9bf7e997f82d94bad66c31bf12bc5b7a13e0a24750bbadae7a9", - "sources": "24ac3ab8c88dd21fbb151d134139ba86687bf8201c13224513402d2bcb3fac53" + "jar": "14ba49e5c4f56c62b1bd017f6b987df360a41093bbe9df340fc2e35b1c284b56", + "sources": "7af26df3ccc18832690f6baca36fa0224042c1b9c14068038c2912150b45ce22" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-common": { "shasums": { - "jar": "2a00165a79e5a60d340313543204082f2041dceb6349cf36f0201b696abc943b", - "sources": "783ea79dd6d3911847e9dff7300ca0fa89e155b00139213f07e0047ec7a86b39" + "jar": "58ddcad98fa2dbe69c9080e53e56e65cd50f61a3e45106b423cbad06b572a689", + "sources": "b4e2d483da54fa6030d451c15c7035f8a38abde1e6c630692abfc799e601b317" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-handler": { "shasums": { - "jar": "62d3f8316b4e6e2ca62abde53eae4ee50ca5f58c51f67d234e81eff1e16daf76", - "sources": "9dea13d3eb1be17f2072fb277933a03aa7aaa99675126b9640b121a24da8df70" + "jar": "ddf550c1f3dfc4fcf2cbfca483474ac68941df2cce4cc3e5bddcbb15065c5169", + "sources": "6ff5fb4f804ede12ebcf318ce458a3f71c9b3ee51023a3caa66711b9d7c40394" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-handler-proxy": { "shasums": { - "jar": "e734ea6df870b3a7dcda63c7bfb81d5bd03d2cec4ea22bc108369c198bbb588e", - "sources": "fa47cd2d47b96e3494620021843cd69be29de7fb7bb12d61d4cc73d9f543af32" + "jar": "2eb22bd8f0952ebd28503e01960c6ef96270dd3a7f0fa57b72ad0287ebdc238a", + "sources": "0f56bdb43afabaf19968e57bcadd67f8f3be84e2d86bbd8cda14387c2bea1b2f" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-resolver": { "shasums": { - "jar": "d859d90b3283f38e2b7a8a030e8ce8f6d0dbd20167704124cdb76a92d75108b4", - "sources": "e8a1c750c3cd8ee30e08894170279a673343e96b295a0f9834e0113562f5e611" + "jar": "50ce227a5eb56e0b2e6b6c4e619de42350cbb9dff0728b906e3be8ad89158e87", + "sources": "e783e2ff5161de56d16250e848d350f9d866a93ef41947864bef1dff2b21bcc7" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-resolver-dns": { "shasums": { - "jar": "c4453fab3a451ff42483b48770f8bf0bcc03e50825d863266b6011eba4fc7a9f", - "sources": "1cc596d4102dce01e93cea39f59e642d6662ac9cf379b81f3f4d25d96b6ff3e1" + "jar": "25a09642d926a9f8d552e2667765b9a847bfcf266b897717c409884e174dffd3", + "sources": "2072364b19db8804200ef3b8c6300a31f8becdcef85b12ed2b26ee8f84519646" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" }, "io.netty:netty-transport": { "shasums": { - "jar": "963aed1976431e23453ee5fcf0a69bc1f53b090a5d43ad6d4aa2d0d2886ed165", - "sources": "c14b6644bdc34cd55bb0534028fb562fa3c573d0e58760c917f22dd69d9c07e1" + "jar": "2dcc65e700858d3b080efb5a8af85a2de93d80b4616161fe031913fd840236ef", + "sources": "f469be248924c6752962ea437881f4c7ff59ca120b7c1c1fc4b54f8356fb84f1" }, - "version": "4.1.21.Final" + "version": "4.1.121.Final" + }, + "io.netty:netty-transport-native-unix-common": { + "shasums": { + "jar": "d8c368a320f5478e5745eee3525aca011219d61b848bc1c11e047ed18104bdea", + "sources": "baad6b89d0dd1a9cb7f646966c9d69cdb448ab7ed656fd3533a9969615080600" + }, + "version": "4.1.121.Final" }, "io.opentelemetry:opentelemetry-api": { "shasums": { @@ -901,43 +908,75 @@ "io.netty:netty-common" ], "io.netty:netty-codec": [ + "io.netty:netty-buffer", + "io.netty:netty-common", "io.netty:netty-transport" ], "io.netty:netty-codec-dns": [ - "io.netty:netty-codec" + "io.netty:netty-buffer", + "io.netty:netty-codec", + "io.netty:netty-common", + "io.netty:netty-transport" ], "io.netty:netty-codec-http": [ - "io.netty:netty-codec" + "io.netty:netty-buffer", + "io.netty:netty-codec", + "io.netty:netty-common", + "io.netty:netty-handler", + "io.netty:netty-transport" ], "io.netty:netty-codec-http2": [ + "io.netty:netty-buffer", + "io.netty:netty-codec", "io.netty:netty-codec-http", - "io.netty:netty-handler" + "io.netty:netty-common", + "io.netty:netty-handler", + "io.netty:netty-transport" ], "io.netty:netty-codec-socks": [ - "io.netty:netty-codec" + "io.netty:netty-buffer", + "io.netty:netty-codec", + "io.netty:netty-common", + "io.netty:netty-transport" ], "io.netty:netty-handler": [ "io.netty:netty-buffer", "io.netty:netty-codec", - "io.netty:netty-transport" + "io.netty:netty-common", + "io.netty:netty-resolver", + "io.netty:netty-transport", + "io.netty:netty-transport-native-unix-common" ], "io.netty:netty-handler-proxy": [ + "io.netty:netty-buffer", + "io.netty:netty-codec", "io.netty:netty-codec-http", "io.netty:netty-codec-socks", + "io.netty:netty-common", "io.netty:netty-transport" ], "io.netty:netty-resolver": [ "io.netty:netty-common" ], "io.netty:netty-resolver-dns": [ + "io.netty:netty-buffer", + "io.netty:netty-codec", "io.netty:netty-codec-dns", + "io.netty:netty-common", + "io.netty:netty-handler", "io.netty:netty-resolver", "io.netty:netty-transport" ], "io.netty:netty-transport": [ "io.netty:netty-buffer", + "io.netty:netty-common", "io.netty:netty-resolver" ], + "io.netty:netty-transport-native-unix-common": [ + "io.netty:netty-buffer", + "io.netty:netty-common", + "io.netty:netty-transport" + ], "io.opentelemetry:opentelemetry-api": [ "io.opentelemetry:opentelemetry-context" ], @@ -1549,7 +1588,8 @@ "io.lettuce.core.vector" ], "io.netty:netty-buffer": [ - "io.netty.buffer" + "io.netty.buffer", + "io.netty.buffer.search" ], "io.netty:netty-codec": [ "io.netty.handler.codec", @@ -1592,15 +1632,22 @@ "io.netty.util.concurrent", "io.netty.util.internal", "io.netty.util.internal.logging", + "io.netty.util.internal.shaded.org.jctools.counters", + "io.netty.util.internal.shaded.org.jctools.maps", "io.netty.util.internal.shaded.org.jctools.queues", "io.netty.util.internal.shaded.org.jctools.queues.atomic", - "io.netty.util.internal.shaded.org.jctools.util" + "io.netty.util.internal.shaded.org.jctools.queues.atomic.unpadded", + "io.netty.util.internal.shaded.org.jctools.queues.unpadded", + "io.netty.util.internal.shaded.org.jctools.util", + "io.netty.util.internal.svm" ], "io.netty:netty-handler": [ + "io.netty.handler.address", "io.netty.handler.flow", "io.netty.handler.flush", "io.netty.handler.ipfilter", "io.netty.handler.logging", + "io.netty.handler.pcap", "io.netty.handler.ssl", "io.netty.handler.ssl.ocsp", "io.netty.handler.ssl.util", @@ -1631,6 +1678,9 @@ "io.netty.channel.socket.nio", "io.netty.channel.socket.oio" ], + "io.netty:netty-transport-native-unix-common": [ + "io.netty.channel.unix" + ], "io.opentelemetry:opentelemetry-api": [ "io.opentelemetry.api", "io.opentelemetry.api.baggage", @@ -3010,6 +3060,8 @@ "io.netty:netty-resolver-dns:jar:sources", "io.netty:netty-resolver:jar:sources", "io.netty:netty-transport", + "io.netty:netty-transport-native-unix-common", + "io.netty:netty-transport-native-unix-common:jar:sources", "io.netty:netty-transport:jar:sources", "io.opentelemetry:opentelemetry-api", "io.opentelemetry:opentelemetry-api:jar:sources", @@ -3197,6 +3249,11 @@ "io.lettuce.core.support.LettuceCdiExtension" ] }, + "io.netty:netty-common": { + "reactor.blockhound.integration.BlockHoundIntegration": [ + "io.netty.util.internal.Hidden$NettyBlockHoundIntegration" + ] + }, "io.opentelemetry:opentelemetry-exporter-logging": { "io.opentelemetry.sdk.autoconfigure.spi.internal.ComponentProvider": [ "io.opentelemetry.exporter.logging.internal.ConsoleLogRecordExporterComponentProvider", From 2360388ebd6438a990d81614c882bfe7c4ec3b5b Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Fri, 27 Jun 2025 22:36:51 +0200 Subject: [PATCH 17/18] [java] Checking for null in realmType --- java/src/org/openqa/selenium/bidi/script/RealmInfo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/src/org/openqa/selenium/bidi/script/RealmInfo.java b/java/src/org/openqa/selenium/bidi/script/RealmInfo.java index 1828ddecd4c69..b6290a159548e 100644 --- a/java/src/org/openqa/selenium/bidi/script/RealmInfo.java +++ b/java/src/org/openqa/selenium/bidi/script/RealmInfo.java @@ -76,7 +76,7 @@ public static RealmInfo fromJson(JsonInput input) { input.endObject(); - if (realmType.equals(RealmType.WINDOW)) { + if (realmType != null && realmType.equals(RealmType.WINDOW)) { return new WindowRealmInfo( realmId, origin, realmType, browsingContext, Optional.ofNullable(sandbox)); } From 696c9b5adaf2eedb3c10fd9c0936907ab43e59e2 Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Sat, 28 Jun 2025 23:02:07 +0200 Subject: [PATCH 18/18] Running format script --- MODULE.bazel | 41 ++++------------------------------------- 1 file changed, 4 insertions(+), 37 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index eccf46a6faa57..b4406f4376ed2 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -12,10 +12,11 @@ bazel_dep(name = "contrib_rules_jvm", version = "0.27.0") bazel_dep(name = "platforms", version = "0.0.11") # Required for the closure rules -bazel_dep(name = "protobuf", dev_dependency = True, repo_name = "com_google_protobuf", version = "29.2") +bazel_dep(name = "protobuf", version = "29.2", dev_dependency = True, repo_name = "com_google_protobuf") # Required for rules_rust to import the crates properly -bazel_dep(name = "rules_cc", dev_dependency = True, version = "0.1.1") +bazel_dep(name = "rules_cc", version = "0.1.1", dev_dependency = True) + bazel_dep(name = "rules_dotnet", version = "0.17.5") bazel_dep(name = "rules_java", version = "8.7.1") bazel_dep(name = "rules_jvm_external", version = "6.6") @@ -29,35 +30,29 @@ bazel_dep(name = "rules_ruby", version = "0.19.0") # Until `rules_jvm_external` 6.8 ships git_override( - commit = "29c451d2a62aa2451f5810c005ecac925b4772b6", module_name = "rules_jvm_external", + commit = "29c451d2a62aa2451f5810c005ecac925b4772b6", patch_strip = 1, patches = ["//java:rules_jvm_external_javadoc.patch"], remote = "https://github.com/bazel-contrib/rules_jvm_external.git", ) multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") - multitool.hub(lockfile = "//:multitool.lock.json") - use_repo(multitool, "multitool") linter = use_extension("@apple_rules_lint//lint:extensions.bzl", "linter") - linter.configure( name = "java-spotbugs", config = "//java:spotbugs-config", ) - linter.configure( name = "rust-rustfmt", config = "//rust:enable-rustfmt", ) - linter.register(name = "rust-rustfmt") node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node") - node.toolchain(node_version = "20.9.0") pnpm = use_extension( @@ -65,11 +60,9 @@ pnpm = use_extension( "pnpm", dev_dependency = True, ) - use_repo(pnpm, "pnpm") npm = use_extension("@aspect_rules_js//npm:extensions.bzl", "npm") - npm.npm_translate_lock( name = "npm", data = [ @@ -84,7 +77,6 @@ npm.npm_translate_lock( update_pnpm_lock = True, verify_node_modules_ignored = "//:.bazelignore", ) - use_repo(npm, "npm") rules_ts_ext = use_extension( @@ -92,70 +84,53 @@ rules_ts_ext = use_extension( "ext", dev_dependency = True, ) - rules_ts_ext.deps( ts_version = "4.9.5", ) - use_repo(rules_ts_ext, "npm_typescript") esbuild = use_extension("@aspect_rules_esbuild//esbuild:extensions.bzl", "esbuild") - esbuild.toolchain(esbuild_version = "0.23.0") - use_repo(esbuild, "esbuild_toolchains") register_toolchains("@esbuild_toolchains//:all") dotnet = use_extension("@rules_dotnet//dotnet:extensions.bzl", "dotnet") - dotnet.toolchain(dotnet_version = "8.0.203") - use_repo(dotnet, "dotnet_toolchains") selenium_paket = use_extension("//dotnet:paket.nuget_extension.bzl", "nuget_extension") - use_repo(selenium_paket, "paket.nuget") register_toolchains("@dotnet_toolchains//:all") oci = use_extension("@rules_oci//oci:extensions.bzl", "oci") - oci.pull( name = "java_image_base", digest = "sha256:1df9f3e6a2de0544dd04f1840aa811d334045c9126f9e93d8da45448061ad51e", image = "gcr.io/distroless/java17", ) - oci.pull( name = "firefox_standalone", digest = "sha256:b6d8279268b3183d0d33e667e82fec1824298902f77718764076de763673124f", image = "index.docker.io/selenium/standalone-firefox", ) - oci.pull( name = "chrome_standalone", digest = "sha256:1b809a961a0a77787a7cccac74ddc5570b7e89747f925b8469ddb9a6624d4ece", image = "index.docker.io/selenium/standalone-chrome", ) - use_repo(oci, "chrome_standalone", "firefox_standalone", "java_image_base") python = use_extension("@rules_python//python/extensions:python.bzl", "python") - python.toolchain( is_default = True, python_version = "3.9", ) - python.toolchain(python_version = "3.10") - python.toolchain(python_version = "3.11") - python.toolchain(python_version = "3.12") - python.toolchain(python_version = "3.13") - use_repo(python, "pythons_hub") pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") @@ -180,7 +155,6 @@ use_repo(pip, "py_dev_requirements") register_toolchains("@pythons_hub//:all") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") - use_repo( java_toolchains, "remote_java_tools", @@ -197,7 +171,6 @@ use_repo( ) maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven") - maven.install( name = "maven", artifacts = [ @@ -278,11 +251,9 @@ maven.install( resolver = "maven", strict_visibility = True, ) - use_repo(maven, "maven", "unpinned_maven") ruby = use_extension("@rules_ruby//ruby:extensions.bzl", "ruby") - ruby.toolchain( name = "ruby", msys2_packages = [ @@ -291,7 +262,6 @@ ruby.toolchain( ], version_file = "//:rb/.ruby-version", ) - ruby.bundle_fetch( name = "bundle", srcs = [ @@ -387,13 +357,11 @@ ruby.bundle_fetch( gemfile = "//:rb/Gemfile", gemfile_lock = "//:rb/Gemfile.lock", ) - use_repo(ruby, "bundle", "ruby", "ruby_toolchains") register_toolchains("@ruby_toolchains//:all") selenium_manager_artifacts = use_extension("//common:selenium_manager.bzl", "selenium_manager_artifacts") - use_repo( selenium_manager_artifacts, "download_sm_linux", @@ -402,7 +370,6 @@ use_repo( ) pin_browsers_extension = use_extension("//common:repositories.bzl", "pin_browsers_extension") - use_repo( pin_browsers_extension, "linux_beta_chrome",