From 5f9cec8963b33a7708619d666a5ce0b2f6542c7d Mon Sep 17 00:00:00 2001 From: Diego Molina Date: Wed, 27 Mar 2024 15:54:24 +0100 Subject: [PATCH] Release 4.19.0 (#13747) * update Rust version to 0.4.19 * Rust Changelog * [build] Prepare for release of Selenium 4.19.0 (#13746) * Update supported versions for Chrome DevTools * Update selenium manager version * Update Maven Dependencies * Update authors file * FIX CHANGELOGS BEFORE MERGING! Update versions and change logs to release Selenium 4.19.0 * [build] Adapting changelogs * [py] Setting python version to 4.19.0 * Making format script happy --------- Co-authored-by: Selenium CI Bot Co-authored-by: Diego Molina Co-authored-by: Diego Molina --------- Co-authored-by: Selenium CI Bot Co-authored-by: Selenium CI Bot --- AUTHORS | 5 + Rakefile | 2 +- .../chromium/{v120 => v123}/BUILD.bazel | 0 .../{v120 => v123}/browser_protocol.pdl | 612 ++++++++++++++---- .../chromium/{v120 => v123}/js_protocol.pdl | 8 +- common/selenium_manager.bzl | 12 +- dotnet/CHANGELOG | 12 + dotnet/selenium-dotnet-version.bzl | 4 +- .../src/webdriver/DevTools/DevToolsDomains.cs | 2 +- .../V120Domains.cs => v123/V123Domains.cs} | 22 +- .../V123JavaScript.cs} | 16 +- .../{v120/V120Log.cs => v123/V123Log.cs} | 14 +- .../V120Network.cs => v123/V123Network.cs} | 24 +- .../V120Target.cs => v123/V123Target.cs} | 14 +- dotnet/src/webdriver/WebDriver.csproj | 2 +- .../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 +- .../common/DevTools/DevToolsTargetTest.cs | 2 +- java/CHANGELOG | 19 + java/maven_deps.bzl | 48 +- java/maven_install.json | 252 ++++---- .../devtools/{v120 => v123}/BUILD.bazel | 2 +- .../v123CdpInfo.java} | 8 +- .../v123Domains.java} | 26 +- .../v120Events.java => v123/v123Events.java} | 18 +- .../v123Javascript.java} | 14 +- .../{v120/v120Log.java => v123/v123Log.java} | 10 +- .../v123Network.java} | 20 +- .../v120Target.java => v123/v123Target.java} | 24 +- .../org/openqa/selenium/devtools/versions.bzl | 2 +- java/version.bzl | 2 +- .../node/selenium-webdriver/BUILD.bazel | 2 +- javascript/node/selenium-webdriver/CHANGES.md | 12 + .../node/selenium-webdriver/package.json | 2 +- package-lock.json | 6 +- py/BUILD.bazel | 4 +- py/CHANGES | 9 + py/docs/source/conf.py | 4 +- py/selenium/__init__.py | 2 +- py/selenium/webdriver/__init__.py | 2 +- py/setup.py | 2 +- rb/CHANGES | 7 + rb/Gemfile.lock | 46 +- rb/lib/selenium/devtools/BUILD.bazel | 2 +- rb/lib/selenium/devtools/version.rb | 2 +- rb/lib/selenium/webdriver/version.rb | 2 +- rust/BUILD.bazel | 2 +- rust/CHANGELOG.md | 8 + rust/Cargo.Bazel.lock | 10 +- rust/Cargo.lock | 2 +- rust/Cargo.toml | 2 +- 56 files changed, 895 insertions(+), 443 deletions(-) rename common/devtools/chromium/{v120 => v123}/BUILD.bazel (100%) rename common/devtools/chromium/{v120 => v123}/browser_protocol.pdl (95%) rename common/devtools/chromium/{v120 => v123}/js_protocol.pdl (99%) rename dotnet/src/webdriver/DevTools/{v120/V120Domains.cs => v123/V123Domains.cs} (78%) rename dotnet/src/webdriver/DevTools/{v120/V120JavaScript.cs => v123/V123JavaScript.cs} (94%) rename dotnet/src/webdriver/DevTools/{v120/V120Log.cs => v123/V123Log.cs} (88%) rename dotnet/src/webdriver/DevTools/{v120/V120Network.cs => v123/V123Network.cs} (95%) rename dotnet/src/webdriver/DevTools/{v120/V120Target.cs => v123/V123Target.cs} (94%) rename java/src/org/openqa/selenium/devtools/{v120 => v123}/BUILD.bazel (98%) rename java/src/org/openqa/selenium/devtools/{v120/v120CdpInfo.java => v123/v123CdpInfo.java} (86%) rename java/src/org/openqa/selenium/devtools/{v120/v120Domains.java => v123/v123Domains.java} (77%) rename java/src/org/openqa/selenium/devtools/{v120/v120Events.java => v123/v123Events.java} (86%) rename java/src/org/openqa/selenium/devtools/{v120/v120Javascript.java => v123/v123Javascript.java} (85%) rename java/src/org/openqa/selenium/devtools/{v120/v120Log.java => v123/v123Log.java} (89%) rename java/src/org/openqa/selenium/devtools/{v120/v120Network.java => v123/v123Network.java} (92%) rename java/src/org/openqa/selenium/devtools/{v120/v120Target.java => v123/v123Target.java} (83%) diff --git a/AUTHORS b/AUTHORS index bf515309d08eb..ebbbc1292c21a 100644 --- a/AUTHORS +++ b/AUTHORS @@ -8,6 +8,7 @@ Abdullah Aslam <48642109+code-with-abdullah@users.noreply.github.com> Abhijeet Kasurde Abhilash Thaduka abidema <44252090+abidema@users.noreply.github.com> +Adam Dangoor Adam Demuri Adam Goucher Adam Smith @@ -367,6 +368,7 @@ jamespdo Jan Trejbal Jan Weitz Jane Tymoschuk +Jani Hautakangas Jared Webber Jari Bakken Jason @@ -406,6 +408,7 @@ Jim Brännlund Jim Evans Jim Reid Jim van Musscher +jkbzh <3439365+jkbzh@users.noreply.github.com> jkohls jmuramatsu Joaquín Romero @@ -543,6 +546,7 @@ Mark Stacey Mark Watson Marvin A. Ruder Marvin Ojwang +MASACR99 Masayuki Hokimoto Mateusz Kajka <18029907+codemrkay@users.noreply.github.com> Mathias Kresin @@ -738,6 +742,7 @@ Sebastian Meyer Sebastian Monte Sebastien Guillemot seidnerj +Selenium CI Bot Selenium CI Bot Sen ZmaKi <90490506+SenZmaKi@users.noreply.github.com> Sergey Chipiga diff --git a/Rakefile b/Rakefile index 19c8a04980a6b..0223e0b778bdc 100644 --- a/Rakefile +++ b/Rakefile @@ -100,7 +100,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/v122:v122.publish - //java/src/org/openqa/selenium/devtools/v120:v120.publish + //java/src/org/openqa/selenium/devtools/v123:v123.publish //java/src/org/openqa/selenium/devtools/v121:v121.publish //java/src/org/openqa/selenium/devtools/v85:v85.publish //java/src/org/openqa/selenium/edge:edge.publish diff --git a/common/devtools/chromium/v120/BUILD.bazel b/common/devtools/chromium/v123/BUILD.bazel similarity index 100% rename from common/devtools/chromium/v120/BUILD.bazel rename to common/devtools/chromium/v123/BUILD.bazel diff --git a/common/devtools/chromium/v120/browser_protocol.pdl b/common/devtools/chromium/v123/browser_protocol.pdl similarity index 95% rename from common/devtools/chromium/v120/browser_protocol.pdl rename to common/devtools/chromium/v123/browser_protocol.pdl index d845d8867c1c0..5b79452137dbf 100644 --- a/common/devtools/chromium/v120/browser_protocol.pdl +++ b/common/devtools/chromium/v123/browser_protocol.pdl @@ -217,7 +217,7 @@ experimental domain Accessibility # If omitted, the full tree is returned. optional integer depth # The frame for whose document the AX tree should be retrieved. - # If omited, the root frame is used. + # If omitted, the root frame is used. optional Page.FrameId frameId returns array of AXNode nodes @@ -258,7 +258,7 @@ experimental domain Accessibility # Query a DOM node's accessibility subtree for accessible name and role. # This command computes the name and role for all nodes in the subtree, including those that are - # ignored for accessibility, and returns those that mactch the specified name and role. If no DOM + # ignored for accessibility, and returns those that match the specified name and role. If no DOM # node is specified, or the DOM node does not exist, the command returns an error. If neither # `accessibleName` or `role` is specified, it returns all the accessibility nodes in the subtree. experimental command queryAXTree @@ -309,6 +309,9 @@ experimental domain Animation # `Animation`'s playback rate. number playbackRate # `Animation`'s start time. + # Milliseconds for time based animations and + # percentage [0 - 100] for scroll driven animations + # (i.e. when viewOrScrollTimeline exists). number startTime # `Animation`'s current time. number currentTime @@ -322,6 +325,26 @@ experimental domain Animation # A unique ID for `Animation` representing the sources that triggered this CSS # animation/transition. optional string cssId + # View or scroll timeline + optional ViewOrScrollTimeline viewOrScrollTimeline + + # Timeline instance + type ViewOrScrollTimeline extends object + properties + # Scroll container node + optional DOM.BackendNodeId sourceNodeId + # Represents the starting scroll position of the timeline + # as a length offset in pixels from scroll origin. + optional number startOffset + # Represents the ending scroll position of the timeline + # as a length offset in pixels from scroll origin. + optional number endOffset + # The element whose principal box's visibility in the + # scrollport defined the progress of the timeline. + # Does not exist for animations with ScrollTimeline + optional DOM.BackendNodeId subjectNodeId + # Orientation of the scroll + DOM.ScrollOrientation axis # AnimationEffect instance type AnimationEffect extends object @@ -335,6 +358,9 @@ experimental domain Animation # `AnimationEffect`'s iterations. number iterations # `AnimationEffect`'s iteration duration. + # Milliseconds for time based animations and + # percentage [0 - 100] for scroll driven animations + # (i.e. when viewOrScrollTimeline exists). number duration # `AnimationEffect`'s playback direction. string direction @@ -545,6 +571,7 @@ experimental domain Audits Frame Image Import + JSON Manifest Ping PluginData @@ -554,6 +581,7 @@ experimental domain Audits Script ServiceWorker SharedWorker + SpeculationRules Stylesheet Track Video @@ -1059,7 +1087,7 @@ experimental domain Autofill # Munich 81456 type AddressUI extends object properties - # A two dimension array containing the repesentation of values from an address profile. + # A two dimension array containing the representation of values from an address profile. array of AddressFields addressFields # Specified whether a filled field was done so by using the html autocomplete attribute or autofill heuristics. @@ -1082,6 +1110,10 @@ experimental domain Autofill string autofillType # The filling strategy FillingStrategy fillingStrategy + # The frame the field belongs to + Page.FrameId frameId + # The form field's DOM node + DOM.BackendNodeId fieldId # Emitted when an address form is filled. event addressFormFilled @@ -1220,6 +1252,7 @@ domain Browser audioCapture backgroundSync backgroundFetch + capturedSurfaceControl clipboardReadWrite clipboardSanitizedWrite displayCapture @@ -1237,6 +1270,7 @@ domain Browser protectedMediaIdentifier sensors storageAccess + speakerSelection topLevelStorageAccess videoCapture videoCapturePanTiltZoom @@ -1251,7 +1285,7 @@ domain Browser prompt # Definition of PermissionDescriptor defined in the Permissions API: - # https://w3c.github.io/permissions/#dictdef-permissiondescriptor. + # https://w3c.github.io/permissions/#dom-permissiondescriptor. experimental type PermissionDescriptor extends object properties # Name of permission. @@ -1295,7 +1329,7 @@ domain Browser optional BrowserContextID browserContextId # Reset all permission management for all origins. - experimental command resetPermissions + command resetPermissions parameters # BrowserContext to reset permissions. When omitted, default browser context is used. optional BrowserContextID browserContextId @@ -1305,7 +1339,7 @@ domain Browser parameters # Whether to allow all or deny all download requests, or use default Chrome behavior if # available (otherwise deny). |allowAndName| allows download and names files according to - # their dowmload guids. + # their download guids. enum behavior deny allow @@ -1572,7 +1606,7 @@ experimental domain CSS # Owner frame identifier. Page.FrameId frameId # Stylesheet resource URL. Empty if this is a constructed stylesheet created using - # new CSSStyleSheet() (but non-empty if this is a constructed sylesheet imported + # new CSSStyleSheet() (but non-empty if this is a constructed stylesheet imported # as a CSS module script). string sourceURL # URL of source map associated with the stylesheet (if any). @@ -1847,6 +1881,8 @@ experimental domain CSS properties # Font's family name reported by platform. string familyName + # Font's PostScript name reported by platform. + string postScriptName # Indicates if the font was downloaded or resolved locally. boolean isCustomFont # Amount of glyphs that were rendered with this font. @@ -1926,6 +1962,19 @@ experimental domain CSS string syntax + # CSS font-palette-values rule representation. + type CSSFontPaletteValuesRule extends object + properties + # The css style sheet identifier (absent for user agent stylesheet and user-specified + # stylesheet rules) this rule came from. + optional StyleSheetId styleSheetId + # Parent stylesheet's origin. + StyleSheetOrigin origin + # Associated font palette name. + Value fontPaletteName + # Associated style declaration. + CSSStyle style + # CSS property at-rule representation. type CSSPropertyRule extends object properties @@ -1972,6 +2021,10 @@ experimental domain CSS string ruleText # Text position of a new rule in the target style sheet. SourceRange location + # NodeId for the DOM node in whose context custom property declarations for registered properties should be + # validated. If omitted, declarations in the new rule text can only be validated statically, which may produce + # incorrect results if the declaration contains a var() for example. + experimental optional DOM.NodeId nodeForPropertySyntaxValidation returns # The newly created rule. CSSRule rule @@ -2070,6 +2123,8 @@ experimental domain CSS optional array of CSSPropertyRule cssPropertyRules # A list of CSS property registrations matching this node. optional array of CSSPropertyRegistration cssPropertyRegistrations + # A font-palette-values rule matching this node. + optional CSSFontPaletteValuesRule cssFontPaletteValuesRule # Id of the first parent element that does not have display: contents. experimental optional DOM.NodeId parentLayoutNodeId @@ -2213,6 +2268,10 @@ experimental domain CSS command setStyleTexts parameters array of StyleDeclarationEdit edits + # NodeId for the DOM node in whose context custom property declarations for registered properties should be + # validated. If omitted, declarations in the new rule text can only be validated statically, which may produce + # incorrect results if the declaration contains a var() for example. + experimental optional DOM.NodeId nodeForPropertySyntaxValidation returns # The resulting styles after modification. array of CSSStyle styles @@ -2529,6 +2588,12 @@ domain DOM Block Both + # Physical scroll orientation + type ScrollOrientation extends string + enum + horizontal + vertical + # DOM interaction is implemented in terms of mirror objects that represent the actual DOM nodes. # DOMNode is a base node mirror type. type Node extends object @@ -2708,7 +2773,7 @@ domain DOM # Scrolls the specified rect of the given node into view if not already visible. # Note: exactly one between nodeId, backendNodeId and objectId should be passed # to identify the node. - experimental command scrollIntoViewIfNeeded + command scrollIntoViewIfNeeded parameters # Identifier of the node. optional NodeId nodeId @@ -2753,7 +2818,7 @@ domain DOM # Returns attributes for the specified node. command getAttributes parameters - # Id of the node to retrieve attibutes for. + # Id of the node to retrieve attributes for. NodeId nodeId returns # An interleaved array of node attribute names and values. @@ -3899,6 +3964,13 @@ domain Emulation # A display feature that only splits content will have a 0 mask_length. integer maskLength + type DevicePosture extends object + properties + # Current posture of the device + enum type + continuous + folded + type MediaFeature extends object properties string name @@ -3914,13 +3986,13 @@ domain Emulation pause pauseIfNetworkFetchesPending - # Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints + # Used to specify User Agent Client Hints to emulate. See https://wicg.github.io/ua-client-hints experimental type UserAgentBrandVersion extends object properties string brand string version - # Used to specify User Agent Cient Hints to emulate. See https://wicg.github.io/ua-client-hints + # Used to specify User Agent Client Hints to emulate. See https://wicg.github.io/ua-client-hints # Missing optional values will be filled in by the target with what it would normally use. experimental type UserAgentMetadata extends object properties @@ -4009,7 +4081,7 @@ domain Emulation optional boolean enabled # Enables CPU throttling to emulate slow CPUs. - experimental command setCPUThrottlingRate + command setCPUThrottlingRate parameters # Throttling rate as a slowdown factor (1 is no throttle, 2 is 2x slowdown, etc). number rate @@ -4056,6 +4128,9 @@ domain Emulation # If set, the display feature of a multi-segment screen. If not set, multi-segment support # is turned-off. experimental optional DisplayFeature displayFeature + # If set, the posture of a foldable device. If not set the posture is set + # to continuous. + experimental optional DevicePosture devicePosture experimental command setScrollbarsHidden parameters @@ -4085,7 +4160,7 @@ domain Emulation optional array of MediaFeature features # Emulates the given vision deficiency. - experimental command setEmulatedVisionDeficiency + command setEmulatedVisionDeficiency parameters # Vision deficiency to emulate. Order: best-effort emulations come first, followed by any # physiologically accurate emulations for medically recognized color vision deficiencies. @@ -4126,7 +4201,7 @@ domain Emulation SensorType type optional SensorMetadata metadata - # Updates the sensor readings reported by a sensor type previously overriden + # Updates the sensor readings reported by a sensor type previously overridden # by setSensorOverrideEnabled. experimental command setSensorOverrideReadings parameters @@ -4134,7 +4209,7 @@ domain Emulation SensorReading reading # Overrides the Idle state. - experimental command setIdleOverride + command setIdleOverride parameters # Mock isUserActive boolean isUserActive @@ -4142,7 +4217,7 @@ domain Emulation boolean isScreenUnlocked # Clears Idle state overrides. - experimental command clearIdleOverride + command clearIdleOverride # Overrides value returned by the javascript navigator object. experimental deprecated command setNavigatorOverrides @@ -4195,10 +4270,11 @@ domain Emulation optional string locale # Overrides default host system timezone with the specified one. - experimental command setTimezoneOverride + command setTimezoneOverride parameters - # The timezone identifier. If empty, disables the override and - # restores default host system timezone. + # The timezone identifier. List of supported timezones: + # https://source.chromium.org/chromium/chromium/deps/icu.git/+/faee8bc70570192d82d2978a71e2a615788597d1:source/data/misc/metaZones.txt + # If empty, disables the override and restores default host system timezone. string timezoneId # Resizes the frame/viewport of the page. Note that this does not affect the frame's container @@ -4231,11 +4307,12 @@ domain Emulation integer hardwareConcurrency # Allows overriding user agent with the given string. + # `userAgentMetadata` must be set for Client Hint headers to be sent. command setUserAgentOverride parameters # User agent to use. string userAgent - # Browser langugage to emulate. + # Browser language to emulate. optional string acceptLanguage # The platform navigator.platform should return. optional string platform @@ -4317,7 +4394,7 @@ domain IO parameters # Handle of the stream to read. StreamHandle handle - # Seek to the specified offset before reading (if not specificed, proceed with offset + # Seek to the specified offset before reading (if not specified, proceed with offset # following the last read). Some types of streams may only support sequential reads. optional integer offset # Maximum number of bytes to read (left upon the agent discretion if not specified). @@ -4701,7 +4778,7 @@ domain Input # The text to insert. string text - # This method sets the current candidate text for ime. + # This method sets the current candidate text for IME. # Use imeCommitComposition to commit the final text. # Use imeSetComposition with empty string as text to cancel composition. experimental command imeSetComposition @@ -5081,7 +5158,7 @@ experimental domain LayerTree event layerTreeDidChange parameters - # Layer tree, absent if not in the comspositing mode. + # Layer tree, absent if not in the compositing mode. optional array of Layer layers # Provides access to log entries. @@ -5458,7 +5535,7 @@ domain Network # passed by the developer (e.g. via "fetch") as understood by the backend. experimental optional TrustTokenParams trustTokenParams # True if this resource request is considered to be the 'same site' as the - # request correspondinfg to the main frame. + # request corresponding to the main frame. experimental optional boolean isSameSite # Details of a signed certificate timestamp (SCT). @@ -5662,6 +5739,19 @@ domain Network # This value is used when the reason is unknown. unspecifiedReason + # Source of service worker router. + type ServiceWorkerRouterSource extends string + enum + network + cache + fetch-event + race-network-and-fetch-handler + + experimental type ServiceWorkerRouterInfo extends object + properties + integer ruleIdMatched + ServiceWorkerRouterSource matchedSourceType + # HTTP response data. type Response extends object properties @@ -5677,6 +5767,8 @@ domain Network deprecated optional string headersText # Resource mimeType as determined by the browser. string mimeType + # Resource charset as determined by the browser (if applicable). + string charset # Refined HTTP request headers that were actually transmitted over the network. optional Headers requestHeaders # HTTP request headers text. This has been replaced by the headers in Network.requestWillBeSentExtraInfo. @@ -5695,6 +5787,8 @@ domain Network optional boolean fromServiceWorker # Specifies that the request was served from the prefetch cache. optional boolean fromPrefetchCache + # Information about how Service Worker Static Router was used. + experimental optional ServiceWorkerRouterInfo serviceWorkerRouterInfo # Total number of bytes received for this request so far. number encodedDataLength # Timing information for the given request. @@ -5810,7 +5904,7 @@ domain Network # Cookie Priority experimental CookiePriority priority # True if cookie is SameParty. - experimental boolean sameParty + experimental deprecated boolean sameParty # Cookie source scheme type. experimental CookieSourceScheme sourceScheme # Cookie source port. Valid values are {-1, [1, 65535]}, -1 indicates an unspecified port. @@ -5829,7 +5923,7 @@ domain Network # The cookie had the "Secure" attribute but was not received over a secure connection. SecureOnly # The cookie had the "SameSite=Strict" attribute but came from a cross-origin response. - # This includes navigation requests intitiated by other origins. + # This includes navigation requests initiated by other origins. SameSiteStrict # The cookie had the "SameSite=Lax" attribute but came from a cross-origin response. SameSiteLax @@ -5863,7 +5957,7 @@ domain Network UnknownError # The cookie had the "SameSite=Strict" attribute but came from a response # with the same registrable domain but a different scheme. - # This includes navigation requests intitiated by other origins. + # This includes navigation requests initiated by other origins. # This is the "Schemeful Same-Site" version of the blocked reason. SchemefulSameSiteStrict # The cookie had the "SameSite=Lax" attribute but came from a response @@ -5925,7 +6019,7 @@ domain Network UnknownError # The cookie had the "SameSite=Strict" attribute but came from a response # with the same registrable domain but a different scheme. - # This includes navigation requests intitiated by other origins. + # This includes navigation requests initiated by other origins. # This is the "Schemeful Same-Site" version of the blocked reason. SchemefulSameSiteStrict # The cookie had the "SameSite=Lax" attribute but came from a response @@ -5943,6 +6037,28 @@ domain Network # RFC6265bis. NameValuePairExceedsMaxSize + # Types of reasons why a cookie should have been blocked by 3PCD but is exempted for the request. + experimental type CookieExemptionReason extends string + enum + # The default value. Cookie with this reason could either be blocked or included. + None + # The cookie should have been blocked by 3PCD but is exempted by explicit user setting. + UserSetting + # The cookie should have been blocked by 3PCD but is exempted by metadata mitigation. + TPCDMetadata + # The cookie should have been blocked by 3PCD but is exempted by Deprecation Trial mitigation. + TPCDDeprecationTrial + # The cookie should have been blocked by 3PCD but is exempted by heuristics mitigation. + TPCDHeuristics + # The cookie should have been blocked by 3PCD but is exempted by Enterprise Policy. + EnterprisePolicy + # The cookie should have been blocked by 3PCD but is exempted by Storage Access API. + StorageAccess + # The cookie should have been blocked by 3PCD but is exempted by Top-level Storage Access API. + TopLevelStorageAccess + # The cookie should have been blocked by 3PCD but is exempted by CORS opt-in. + CorsOptIn + # A cookie which was not stored from a response with the corresponding reason. experimental type BlockedSetCookieWithReason extends object properties @@ -5956,13 +6072,26 @@ domain Network # errors. optional Cookie cookie - # A cookie with was not sent with a request with the corresponding reason. - experimental type BlockedCookieWithReason extends object + # A cookie should have been blocked by 3PCD but is exempted and stored from a response with the + # corresponding reason. A cookie could only have at most one exemption reason. + experimental type ExemptedSetCookieWithReason extends object + properties + # The reason the cookie was exempted. + CookieExemptionReason exemptionReason + # The cookie object representing the cookie. + Cookie cookie + + # A cookie associated with the request which may or may not be sent with it. + # Includes the cookies itself and reasons for blocking or exemption. + experimental type AssociatedCookie extends object properties - # The reason(s) the cookie was blocked. - array of CookieBlockedReason blockedReasons # The cookie object representing the cookie which was not sent. Cookie cookie + # The reason(s) the cookie was blocked. If empty means the cookie is included. + array of CookieBlockedReason blockedReasons + # The reason the cookie should have been blocked by 3PCD but is exempted. A cookie could + # only have at most one exemption reason. + optional CookieExemptionReason exemptionReason # Cookie parameter object type CookieParam extends object @@ -6117,7 +6246,7 @@ domain Network optional SignedExchangeHeader header # Security details for the signed exchange header. optional SecurityDetails securityDetails - # Errors occurred while handling the signed exchagne. + # Errors occurred while handling the signed exchange. optional array of SignedExchangeError errors # List of content encodings supported by the backend. @@ -6190,7 +6319,7 @@ domain Network # Response to a requestIntercepted with an authChallenge. Must not be set otherwise. optional AuthChallengeResponse authChallengeResponse - # Deletes browser cookies with matching name and url or domain/path pair. + # Deletes browser cookies with matching name and url or domain/path/partitionKey pair. command deleteCookies parameters # Name of the cookies to remove. @@ -6202,6 +6331,9 @@ domain Network optional string domain # If specified, deletes only cookies with the exact path. optional string path + # If specified, deletes only cookies with the the given name and partitionKey where domain + # matches provided URL. + optional string partitionKey # Disables network tracking, prevents network events from being sent to the client. command disable @@ -6329,7 +6461,7 @@ domain Network array of string urls # Toggles ignoring of service worker for each request. - experimental command setBypassServiceWorker + command setBypassServiceWorker parameters # Bypass service worker and load from network. boolean bypass @@ -6412,7 +6544,7 @@ domain Network parameters # User agent to use. string userAgent - # Browser langugage to emulate. + # Browser language to emulate. optional string acceptLanguage # The platform navigator.platform should return. optional string platform @@ -6431,6 +6563,18 @@ domain Network integer dataLength # Actual bytes received (might be less than dataLength for compressed encodings). integer encodedDataLength + # Data that was received. + experimental optional binary data + + # Enables streaming of the response for the given requestId. + # If enabled, the dataReceived event contains the data that was received during streaming. + experimental command streamResourceContent + parameters + # Identifier of the request to stream. + RequestId requestId + returns + # Data that has been buffered until streaming is enabled. + binary bufferedData # Fired when EventSource message is received. event eventSourceMessageReceived @@ -6455,7 +6599,7 @@ domain Network MonotonicTime timestamp # Resource type. ResourceType type - # User friendly error message. + # Error message. List of network errors: https://cs.chromium.org/chromium/src/net/base/net_error_list.h string errorText # True if loading was canceled. optional boolean canceled @@ -6719,8 +6863,8 @@ domain Network # Request identifier. Used to match this information to an existing requestWillBeSent event. RequestId requestId # A list of cookies potentially associated to the requested URL. This includes both cookies sent with - # the request and the ones not sent; the latter are distinguished by having blockedReason field set. - array of BlockedCookieWithReason associatedCookies + # the request and the ones not sent; the latter are distinguished by having blockedReasons field set. + array of AssociatedCookie associatedCookies # Raw request headers as they will be sent over the wire. Headers headers # Connection timing information for the request. @@ -6756,8 +6900,11 @@ domain Network # The cookie partition key that will be used to store partitioned cookies set in this response. # Only sent when partitioned cookies are enabled. optional string cookiePartitionKey - # True if partitioned cookies are enabled, but the partition key is not serializeable to string. + # True if partitioned cookies are enabled, but the partition key is not serializable to string. optional boolean cookiePartitionKeyOpaque + # A list of cookies which should have been blocked by 3PCD but are exempted and stored from + # the response with the corresponding reason. + optional array of ExemptedSetCookieWithReason exemptedCookies # Fired exactly once for each Trust Token operation. Depending on # the type of the operation and whether the operation succeeded or @@ -6997,7 +7144,7 @@ experimental domain Overlay # Configuration data for drawing the source order of an elements children. type SourceOrderConfig extends object properties - # the color to outline the givent element in. + # the color to outline the given element in. DOM.RGBA parentOutlineColor # the color to outline the child elements in. DOM.RGBA childOutlineColor @@ -7197,7 +7344,7 @@ experimental domain Overlay properties # Whether the title bar CSS should be shown when emulating the Window Controls Overlay. boolean showCSS - # Seleted platforms to show the overlay. + # Selected platforms to show the overlay. string selectedPlatform # The theme color defined in app manifest. string themeColor @@ -7285,8 +7432,8 @@ experimental domain Overlay command hideHighlight # Highlights owner element of the frame with given id. - # Deprecated: Doesn't work reliablity and cannot be fixed due to process - # separatation (the owner node might be in a different process). Determine + # Deprecated: Doesn't work reliably and cannot be fixed due to process + # separation (the owner node might be in a different process). Determine # the owner node in the client and use highlightNode. deprecated command highlightFrame parameters @@ -7561,6 +7708,7 @@ domain Page bluetooth browsing-topics camera + captured-surface-control ch-dpr ch-device-memory ch-downlink @@ -7616,6 +7764,7 @@ domain Page private-aggregation private-state-token-issuance private-state-token-redemption + publickey-credentials-create publickey-credentials-get run-ad-auction screen-wake-lock @@ -7624,11 +7773,15 @@ domain Page shared-storage shared-storage-select-url smart-card + speaker-selection storage-access + sub-apps sync-xhr unload usb + usb-unrestricted vertical-scroll + web-printing web-share # Alias for 'window-placement' (crbug.com/1328581). window-management @@ -7847,7 +8000,7 @@ domain Page properties # Error message. string message - # If criticial, this is a non-recoverable parse error. + # If critical, this is a non-recoverable parse error. integer critical # Error line. integer line @@ -8137,16 +8290,6 @@ domain Page # as an ad. Only sent if frame is labelled as an ad and id is available. optional AdScriptId adScriptId - # Returns all browser cookies for the page and all of its subframes. Depending - # on the backend support, will return detailed cookie information in the - # `cookies` field. - experimental deprecated command getCookies - # Use 'Network.getCookies' instead - redirect Network - returns - # Array of cookie objects. - array of Network.Cookie cookies - # Returns present frame tree structure. command getFrameTree returns @@ -8289,6 +8432,8 @@ domain Page ReturnAsStream # Whether or not to generate tagged (accessible) PDF. Defaults to embedder choice. experimental optional boolean generateTaggedPDF + # Whether or not to embed the document outline into the PDF. + experimental optional boolean generateDocumentOutline returns # Base64-encoded pdf data. Empty if |returnAsStream| is specified. binary data @@ -8344,7 +8489,7 @@ domain Page boolean enabled # Enable page Content Security Policy by-passing. - experimental command setBypassCSP + command setBypassCSP parameters # Whether to bypass page CSP. boolean enabled @@ -8456,7 +8601,7 @@ domain Page optional number accuracy # Controls whether page will emit lifecycle events. - experimental command setLifecycleEventsEnabled + command setLifecycleEventsEnabled parameters # If true, starts emitting lifecycle events. boolean enabled @@ -8496,7 +8641,7 @@ domain Page experimental command crash # Tries to close page, running its beforeunload hooks, if any. - experimental command close + command close # Tries to update the web lifecycle state of the page. # It will transition the page to the given state according to: @@ -8512,7 +8657,7 @@ domain Page experimental command stopScreencast # Requests backend to produce compilation cache for the specified scripts. - # `scripts` are appeneded to the list of scripts for which the cache + # `scripts` are appended to the list of scripts for which the cache # would be produced. The list may be reset during page navigation. # When script with a matching URL is encountered, the cache is optionally # produced upon backend discretion, based on internal heuristics. @@ -8532,7 +8677,7 @@ domain Page # Clears seeded compilation cache. experimental command clearCompilationCache - # Enum of possible auto-reponse for permisison / prompt dialogs. + # Enum of possible auto-response for permission / prompt dialogs. experimental type AutoResponseMode extends string enum none @@ -8566,7 +8711,7 @@ domain Page # Intercept file chooser requests and transfer control to protocol clients. # When file chooser interception is enabled, native file chooser dialog is not shown. # Instead, a protocol event `Page.fileChooserOpened` is emitted. - experimental command setInterceptFileChooserDialog + command setInterceptFileChooserDialog parameters boolean enabled @@ -8727,7 +8872,7 @@ domain Page string message # Dialog type. DialogType type - # True iff browser is capable showing or acting on the given dialog. When browser has no + # True if browser is capable showing or acting on the given dialog. When browser has no # dialog handler for given target, calling alert while Page domain is engaged will stall # the page execution. Execution can be resumed via calling Page.handleJavaScriptDialog. boolean hasBrowserHandler @@ -8813,7 +8958,6 @@ domain Page SubresourceHasCacheControlNoCache ContainsPlugins DocumentLoaded - DedicatedWorkerOrWorklet OutstandingNetworkRequestOthers RequestedMIDIPermission RequestedAudioCapturePermission @@ -8851,6 +8995,10 @@ domain Page WebRTCSticky WebTransportSticky WebSocketSticky + SmartCard + LiveMediaStreamTrack + UnloadHandler + ParserAborted # Disabled for RenderFrameHost reasons # See content/browser/renderer_host/back_forward_cache_disable.h for explanations. ContentSecurityHandler @@ -8927,7 +9075,7 @@ domain Page # when bfcache navigation fails. experimental event backForwardCacheNotUsed parameters - # The loader id for the associated navgation. + # The loader id for the associated navigation. Network.LoaderId loaderId # The frame id of the associated frame. FrameId frameId @@ -9084,7 +9232,7 @@ experimental domain PerformanceTimeline # Identifies the frame that this event is related to. Empty for non-frame targets. Page.FrameId frameId # The event type, as specified in https://w3c.github.io/performance-timeline/#dom-performanceentry-entrytype - # This determines which of the optional "details" fiedls is present. + # This determines which of the optional "details" fields is present. string type # Name may be empty depending on the type. string name @@ -9160,7 +9308,7 @@ domain Security Network.TimeSinceEpoch validTo # The highest priority network error code, if the certificate has an error. optional string certificateNetworkError - # True if the certificate uses a weak signature aglorithm. + # True if the certificate uses a weak signature algorithm. boolean certificateHasWeakSignature # True if the certificate has a SHA1 signature in the chain. boolean certificateHasSha1Signature @@ -9249,7 +9397,7 @@ domain Security command enable # Enable/disable whether all certificate errors should be ignored. - experimental command setIgnoreCertificateErrors + command setIgnoreCertificateErrors parameters # If true, all certificate errors will be ignored. boolean ignore @@ -9346,6 +9494,7 @@ experimental domain ServiceWorker optional number scriptResponseTime optional array of Target.TargetID controlledClients optional Target.TargetID targetId + optional string routerRules # ServiceWorker error message. type ServiceWorkerErrorMessage extends object @@ -9461,6 +9610,9 @@ experimental domain Storage string issuerOrigin number count + # Protected audience interest group auction identifier. + type InterestGroupAuctionId extends string + # Enum of interest group access types. type InterestGroupAccessType extends string enum @@ -9472,8 +9624,25 @@ experimental domain Storage win additionalBid additionalBidWin + topLevelBid + topLevelAdditionalBid clear + # Enum of auction events. + type InterestGroupAuctionEventType extends string + enum + started + configResolved + + # Enum of network fetches auctions can do. + type InterestGroupAuctionFetchType extends string + enum + bidderJs + bidderWasm + sellerJs + bidderTrustedSignals + sellerTrustedSignals + # Ad advertising element inside an interest group. type InterestGroupAd extends object properties @@ -9525,9 +9694,15 @@ experimental domain Storage # Details for an origin's shared storage. type SharedStorageMetadata extends object properties + # Time when the origin's shared storage was last created. Network.TimeSinceEpoch creationTime + # Number of key-value pairs stored in origin's shared storage. integer length + # Current amount of bits of entropy remaining in the navigation budget. number remainingBudget + # Total number of bytes stored as key-value pairs in origin's shared + # storage. + integer bytesUsed # Pair of reporting metadata details for a candidate URL for `selectURL()`. type SharedStorageReportingMetadata extends object @@ -9753,6 +9928,12 @@ experimental domain Storage parameters boolean enable + # Enables/Disables issuing of interestGroupAuctionEventOccurred and + # interestGroupAuctionNetworkRequestCreated. + experimental command setInterestGroupAuctionTracking + parameters + boolean enable + # Gets metadata for an origin's shared storage. experimental command getSharedStorageMetadata parameters @@ -9860,13 +10041,47 @@ experimental domain Storage # Storage bucket to update. string bucketId - # One of the interest groups was accessed by the associated page. + # One of the interest groups was accessed. Note that these events are global + # to all targets sharing an interest group store. event interestGroupAccessed parameters Network.TimeSinceEpoch accessTime InterestGroupAccessType type string ownerOrigin string name + # For topLevelBid/topLevelAdditionalBid, and when appropriate, + # win and additionalBidWin + optional string componentSellerOrigin + # For bid or somethingBid event, if done locally and not on a server. + optional number bid + optional string bidCurrency + # For non-global events --- links to interestGroupAuctionEvent + optional InterestGroupAuctionId uniqueAuctionId + + # An auction involving interest groups is taking place. These events are + # target-specific. + event interestGroupAuctionEventOccurred + parameters + Network.TimeSinceEpoch eventTime + InterestGroupAuctionEventType type + InterestGroupAuctionId uniqueAuctionId + # Set for child auctions. + optional InterestGroupAuctionId parentAuctionId + # Set for started and configResolved + optional object auctionConfig + + # Specifies which auctions a particular network fetch may be related to, and + # in what role. Note that it is not ordered with respect to + # Network.requestWillBeSent (but will happen before loadingFinished + # loadingFailed). + event interestGroupAuctionNetworkRequestCreated + parameters + InterestGroupAuctionFetchType type + Network.RequestId requestId + # This is the set of the auctions using the worklet that issued this + # request. In the case of trusted signals, it's possible that only some of + # them actually care about the keys being queried. + array of InterestGroupAuctionId auctions # Shared storage was accessed by the associated page. # The following parameters are included in all events. @@ -9880,7 +10095,7 @@ experimental domain Storage Page.FrameId mainFrameId # Serialized origin for the context that invoked the Shared Storage API. string ownerOrigin - # The sub-parameters warapped by `params` are all optional and their + # The sub-parameters wrapped by `params` are all optional and their # presence/absence depends on `type`. SharedStorageAccessParams params @@ -9917,6 +10132,17 @@ experimental domain Storage string key array of string values + experimental type AttributionReportingFilterConfig extends object + properties + array of AttributionReportingFilterDataEntry filterValues + # duration in seconds + optional integer lookbackWindow + + experimental type AttributionReportingFilterPair extends object + properties + array of AttributionReportingFilterConfig filters + array of AttributionReportingFilterConfig notFilters + experimental type AttributionReportingAggregationKeysEntry extends object properties string key @@ -9929,6 +10155,13 @@ 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 @@ -9939,7 +10172,7 @@ experimental domain Storage Network.TimeSinceEpoch time # duration in seconds integer expiry - AttributionReportingEventReportWindows eventReportWindows + array of AttributionReportingTriggerSpec triggerSpecs # duration in seconds integer aggregatableReportWindow AttributionReportingSourceType type @@ -9968,13 +10201,104 @@ experimental domain Storage reportingOriginsPerSiteLimitReached exceedsMaxChannelCapacity - # TODO(crbug.com/1458532): Add other Attribution Reporting events, e.g. - # trigger registration. experimental event attributionReportingSourceRegistered parameters AttributionReportingSourceRegistration registration AttributionReportingSourceRegistrationResult result + experimental type AttributionReportingSourceRegistrationTimeConfig extends string + enum + include + exclude + + experimental type AttributionReportingAggregatableValueDictEntry extends object + properties + string key + # number instead of integer because not all uint32 can be represented by + # int + number value + + experimental type AttributionReportingAggregatableValueEntry extends object + properties + array of AttributionReportingAggregatableValueDictEntry values + AttributionReportingFilterPair filters + + experimental type AttributionReportingEventTriggerData extends object + properties + UnsignedInt64AsBase10 data + SignedInt64AsBase10 priority + optional UnsignedInt64AsBase10 dedupKey + AttributionReportingFilterPair filters + + experimental type AttributionReportingAggregatableTriggerData extends object + properties + UnsignedInt128AsBase16 keyPiece + array of string sourceKeys + AttributionReportingFilterPair filters + + experimental type AttributionReportingAggregatableDedupKey extends object + properties + optional UnsignedInt64AsBase10 dedupKey + AttributionReportingFilterPair filters + + experimental type AttributionReportingTriggerRegistration extends object + properties + AttributionReportingFilterPair filters + optional UnsignedInt64AsBase10 debugKey + array of AttributionReportingAggregatableDedupKey aggregatableDedupKeys + array of AttributionReportingEventTriggerData eventTriggerData + array of AttributionReportingAggregatableTriggerData aggregatableTriggerData + array of AttributionReportingAggregatableValueEntry aggregatableValues + boolean debugReporting + optional string aggregationCoordinatorOrigin + AttributionReportingSourceRegistrationTimeConfig sourceRegistrationTimeConfig + optional string triggerContextId + + experimental type AttributionReportingEventLevelResult extends string + enum + success + successDroppedLowerPriority + internalError + noCapacityForAttributionDestination + noMatchingSources + deduplicated + excessiveAttributions + priorityTooLow + neverAttributedSource + excessiveReportingOrigins + noMatchingSourceFilterData + prohibitedByBrowserPolicy + noMatchingConfigurations + excessiveReports + falselyAttributedSource + reportWindowPassed + notRegistered + reportWindowNotStarted + noMatchingTriggerData + + experimental type AttributionReportingAggregatableResult extends string + enum + success + internalError + noCapacityForAttributionDestination + noMatchingSources + excessiveAttributions + excessiveReportingOrigins + noHistograms + insufficientBudget + noMatchingSourceFilterData + notRegistered + prohibitedByBrowserPolicy + deduplicated + reportWindowPassed + excessiveReports + + experimental event attributionReportingTriggerRegistered + parameters + AttributionReportingTriggerRegistration registration + AttributionReportingEventLevelResult eventLevel + AttributionReportingAggregatableResult aggregatable + # The SystemInfo domain defines methods and events for querying low-level system information. experimental domain SystemInfo @@ -10127,6 +10451,7 @@ domain Target properties TargetID targetId string type + # List of types: https://source.chromium.org/chromium/chromium/src/+/main:content/browser/devtools/devtools_agent_host_impl.cc?ss=chromium&q=f:devtools%20-f:out%20%22::kTypeTab%5B%5D%22 string title string url # Whether the target has an attached client. @@ -10145,7 +10470,7 @@ domain Target # A filter used by target query/discovery/auto-attach operations. experimental type FilterEntry extends object properties - # If set, causes exclusion of mathcing targets from the list. + # If set, causes exclusion of matching targets from the list. optional boolean exclude # If not present, matches any type. optional string type @@ -10199,7 +10524,7 @@ domain Target # # Injected object will be available as `window[bindingName]`. # - # The object has the follwing API: + # The object has the following API: # - `binding.send(json)` - a method to send messages over the remote debugging protocol # - `binding.onmessage = json => handleMessage(json)` - a callback that will be called for the protocol notifications and command responses. experimental command exposeDevToolsProtocol @@ -10210,23 +10535,23 @@ domain Target # Creates a new empty BrowserContext. Similar to an incognito profile but you can have more than # one. - experimental command createBrowserContext + command createBrowserContext parameters # If specified, disposes this context when debugging session disconnects. - optional boolean disposeOnDetach + experimental optional boolean disposeOnDetach # Proxy server, similar to the one passed to --proxy-server - optional string proxyServer + experimental optional string proxyServer # Proxy bypass list, similar to the one passed to --proxy-bypass-list - optional string proxyBypassList + experimental optional string proxyBypassList # An optional list of origins to grant unlimited cross-origin access to. # Parts of the URL other than those constituting origin are ignored. - optional array of string originsWithUniversalNetworkAccess + experimental optional array of string originsWithUniversalNetworkAccess returns # The id of the context created. Browser.BrowserContextID browserContextId # Returns all browser contexts created with `Target.createBrowserContext` method. - experimental command getBrowserContexts + command getBrowserContexts returns # An array of browser context ids. array of Browser.BrowserContextID browserContextIds @@ -10266,7 +10591,7 @@ domain Target # Deletes a BrowserContext. All the belonging pages will be closed without calling their # beforeunload hooks. - experimental command disposeBrowserContext + command disposeBrowserContext parameters Browser.BrowserContextID browserContextId @@ -10304,7 +10629,7 @@ domain Target # 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. - experimental command setAutoAttach + command setAutoAttach parameters # Whether to auto-attach to related targets. boolean autoAttach @@ -10314,7 +10639,7 @@ domain Target # Enables "flat" access to the session via specifying sessionId attribute in the commands. # We plan to make this the default, deprecate non-flattened mode, # and eventually retire it. See crbug.com/991325. - optional boolean flatten + experimental optional boolean flatten # Only targets matching filter will be attached. experimental optional TargetFilter filter @@ -10424,47 +10749,47 @@ experimental domain Tethering # Connection id to be used. string connectionId -experimental domain Tracing +domain Tracing depends on IO # Configuration for memory dump. Used only when "memory-infra" category is enabled. - type MemoryDumpConfig extends object + experimental type MemoryDumpConfig extends object type TraceConfig extends object properties # Controls how the trace buffer stores data. - optional enum recordMode + experimental optional enum recordMode recordUntilFull recordContinuously recordAsMuchAsPossible echoToConsole # Size of the trace buffer in kilobytes. If not specified or zero is passed, a default value # of 200 MB would be used. - optional number traceBufferSizeInKb + experimental optional number traceBufferSizeInKb # Turns on JavaScript stack sampling. - optional boolean enableSampling + experimental optional boolean enableSampling # Turns on system tracing. - optional boolean enableSystrace + experimental optional boolean enableSystrace # Turns on argument filter. - optional boolean enableArgumentFilter + experimental optional boolean enableArgumentFilter # Included category filters. optional array of string includedCategories # Excluded category filters. optional array of string excludedCategories # Configuration to synthesize the delays in tracing. - optional array of string syntheticDelays + experimental optional array of string syntheticDelays # Configuration for memory dump triggers. Used only when "memory-infra" category is enabled. - optional MemoryDumpConfig memoryDumpConfig + experimental optional MemoryDumpConfig memoryDumpConfig # Data format of a trace. Can be either the legacy JSON format or the # protocol buffer format. Note that the JSON format will be deprecated soon. - type StreamFormat extends string + experimental type StreamFormat extends string enum json proto # Compression type to use for traces returned via streams. - type StreamCompression extends string + experimental type StreamCompression extends string enum none gzip @@ -10472,7 +10797,7 @@ experimental domain Tracing # Details exposed when memory request explicitly declared. # Keep consistent with memory_dump_request_args.h and # memory_instrumentation.mojom - type MemoryDumpLevelOfDetail extends string + experimental type MemoryDumpLevelOfDetail extends string enum background light @@ -10483,7 +10808,7 @@ experimental domain Tracing # supported on Chrome OS and uses the Perfetto system tracing service. # `auto` chooses `system` when the perfettoConfig provided to Tracing.start # specifies at least one non-Chrome data source; otherwise uses `chrome`. - type TracingBackend extends string + experimental type TracingBackend extends string enum auto chrome @@ -10493,19 +10818,19 @@ experimental domain Tracing command end # Gets supported tracing categories. - command getCategories + experimental command getCategories returns # A list of supported tracing categories. array of string categories # Record a clock sync marker in the trace. - command recordClockSyncMarker + experimental command recordClockSyncMarker parameters # The ID of this clock sync marker string syncId # Request a global memory dump. - command requestMemoryDump + experimental command requestMemoryDump parameters # Enables more deterministic results by forcing garbage collection optional boolean deterministic @@ -10521,11 +10846,11 @@ experimental domain Tracing command start parameters # Category/tag filter - deprecated optional string categories + experimental deprecated optional string categories # Tracing options - deprecated optional string options + experimental deprecated optional string options # If set, the agent will issue bufferUsage events at this interval, specified in milliseconds - optional number bufferUsageReportingInterval + experimental optional number bufferUsageReportingInterval # Whether to report trace events as series of dataCollected events or to save trace to a # stream (defaults to `ReportEvents`). optional enum transferMode @@ -10536,16 +10861,16 @@ experimental domain Tracing optional StreamFormat streamFormat # Compression format to use. This only applies when using `ReturnAsStream` # transfer mode (defaults to `none`) - optional StreamCompression streamCompression + experimental optional StreamCompression streamCompression optional TraceConfig traceConfig # Base64-encoded serialized perfetto.protos.TraceConfig protobuf message # When specified, the parameters `categories`, `options`, `traceConfig` # are ignored. - optional binary perfettoConfig + experimental optional binary perfettoConfig # Backend type (defaults to `auto`) - optional TracingBackend tracingBackend + experimental optional TracingBackend tracingBackend - event bufferUsage + experimental event bufferUsage parameters # A number in range [0..1] that indicates the used size of event buffer as a fraction of its # total size. @@ -10558,7 +10883,7 @@ experimental domain Tracing # Contains a bucket of collected trace events. When tracing is stopped collected events will be # sent as a sequence of dataCollected events followed by tracingComplete event. - event dataCollected + experimental event dataCollected parameters array of object value @@ -11078,6 +11403,14 @@ experimental domain WebAuthn # Sets whether User Verification succeeds or fails for an authenticator. # Defaults to false. optional boolean isUserVerified + # Credentials created by this authenticator will have the backup + # eligibility (BE) flag set to this value. Defaults to false. + # https://w3c.github.io/webauthn/#sctn-credential-backup + optional boolean defaultBackupEligibility + # Credentials created by this authenticator will have the backup state + # (BS) flag set to this value. Defaults to false. + # https://w3c.github.io/webauthn/#sctn-credential-backup + optional boolean defaultBackupState type Credential extends object properties @@ -11098,6 +11431,14 @@ experimental domain WebAuthn # The large blob associated with the credential. # See https://w3c.github.io/webauthn/#sctn-large-blob-extension optional binary largeBlob + # Assertions returned by this credential will have the backup eligibility + # (BE) flag set to this value. Defaults to the authenticator's + # defaultBackupEligibility value. + optional boolean backupEligibility + # Assertions returned by this credential will have the backup state (BS) + # flag set to this value. Defaults to the authenticator's + # defaultBackupState value. + optional boolean backupState # Enable the WebAuthn domain and start intercepting credential storage and # retrieval with a virtual authenticator. @@ -11186,6 +11527,15 @@ experimental domain WebAuthn AuthenticatorId authenticatorId boolean enabled + # Allows setting credential properties. + # https://w3c.github.io/webauthn/#sctn-automation-set-credential-properties + command setCredentialProperties + parameters + AuthenticatorId authenticatorId + binary credentialId + optional boolean backupEligibility + optional boolean backupState + # Triggered when a credential is added to an authenticator. event credentialAdded parameters @@ -11369,7 +11719,7 @@ experimental domain Preload optional string url optional Network.RequestId requestId # Error information - # `errorMessage` is null iff `errorType` is null. + # `errorMessage` is null if `errorType` is null. optional RuleSetErrorType errorType # TODO(https://crbug.com/1425354): Replace this property with structured error. deprecated optional string errorMessage @@ -11411,7 +11761,7 @@ experimental domain Preload # that had a speculation rule that triggered the attempt, and the # BackendNodeIds of or elements that triggered the # attempt (in the case of attempts triggered by a document rule). It is - # possible for mulitple rule sets and links to trigger a single attempt. + # possible for multiple rule sets and links to trigger a single attempt. type PreloadingAttemptSource extends object properties PreloadingAttemptKey key @@ -11533,7 +11883,8 @@ experimental domain Preload PrefetchFailedNetError PrefetchFailedNon2XX PrefetchFailedPerPageLimitExceeded - PrefetchEvicted + PrefetchEvictedAfterCandidateRemoved + PrefetchEvictedForNewerPrefetch PrefetchHeldback # A previous prefetch to the origin got a HTTP 503 response with an # Retry-After header that has no elapsed yet. @@ -11573,6 +11924,13 @@ experimental domain Preload PrefetchStatus prefetchStatus Network.RequestId requestId + # Information of headers to be displayed when the header mismatch occurred. + type PrerenderMismatchedHeaders extends object + properties + string headerName + optional string initialValue + optional string activationValue + # Fired when a prerender attempt is updated. event prerenderStatusUpdated parameters @@ -11582,6 +11940,7 @@ experimental domain Preload # This is used to give users more information about the name of Mojo interface # that is incompatible with prerender and has caused the cancellation of the attempt. optional string disallowedMojoInterface + optional array of PrerenderMismatchedHeaders mismatchedHeaders # Send a list of sources for all preloading attempts in a document. event preloadingAttemptSourcesUpdated @@ -11598,12 +11957,26 @@ experimental domain FedCm SignIn SignUp - # Whether the dialog shown is an account chooser or an auto re-authentication dialog. + # The types of FedCM dialogs. type DialogType extends string enum AccountChooser AutoReauthn ConfirmIdpLogin + Error + + # The buttons on the FedCM dialog. + type DialogButton extends string + enum + ConfirmIdpLoginContinue + ErrorGotIt + ErrorMoreDetails + + # The URLs that each account has + type AccountUrlType extends string + enum + TermsOfService + PrivacyPolicy # Corresponds to IdentityRequestAccount type Account extends object @@ -11630,6 +12003,12 @@ experimental domain FedCm string title optional string subtitle + # Triggered when a dialog is closed, either by user action, JS abort, + # or a command below. + event dialogClosed + parameters + string dialogId + command enable parameters # Allows callers to disable the promise rejection delay that would @@ -11644,11 +12023,16 @@ experimental domain FedCm string dialogId integer accountIndex - # Only valid if the dialog type is ConfirmIdpLogin. Acts as if the user had - # clicked the continue button. - command confirmIdpLogin + command clickDialogButton + parameters + string dialogId + DialogButton dialogButton + + command openUrl parameters string dialogId + integer accountIndex + AccountUrlType accountUrlType command dismissDialog parameters diff --git a/common/devtools/chromium/v120/js_protocol.pdl b/common/devtools/chromium/v123/js_protocol.pdl similarity index 99% rename from common/devtools/chromium/v120/js_protocol.pdl rename to common/devtools/chromium/v123/js_protocol.pdl index 4754f17c5b02d..8dad9c98de9f6 100644 --- a/common/devtools/chromium/v120/js_protocol.pdl +++ b/common/devtools/chromium/v123/js_protocol.pdl @@ -1665,7 +1665,7 @@ domain Runtime # Binding function takes exactly one argument, this argument should be string, # in case of any other input, function throws an exception. # Each binding function call produces Runtime.bindingCalled notification. - experimental command addBinding + command addBinding parameters string name # If specified, the binding would only be exposed to the specified @@ -1675,17 +1675,17 @@ domain Runtime # Deprecated in favor of `executionContextName` due to an unclear use case # and bugs in implementation (crbug.com/1169639). `executionContextId` will be # removed in the future. - deprecated optional ExecutionContextId executionContextId + experimental deprecated optional ExecutionContextId executionContextId # If specified, the binding is exposed to the executionContext with # matching name, even for contexts created after the binding is added. # See also `ExecutionContext.name` and `worldName` parameter to # `Page.addScriptToEvaluateOnNewDocument`. # This parameter is mutually exclusive with `executionContextId`. - experimental optional string executionContextName + optional string executionContextName # This method does not remove binding function from global object but # unsubscribes current runtime agent from Runtime.bindingCalled notifications. - experimental command removeBinding + command removeBinding parameters string name diff --git a/common/selenium_manager.bzl b/common/selenium_manager.bzl index 1e9cc60db6bb0..1a18775e68116 100644 --- a/common/selenium_manager.bzl +++ b/common/selenium_manager.bzl @@ -6,20 +6,20 @@ def selenium_manager(): http_file( name = "download_sm_linux", executable = True, - sha256 = "ec6db2c8ea49cf4fafaf52e70ffcbcac3d49d07df7ca11dba49652b9d51d2d1a", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-8fab886/selenium-manager-linux", + sha256 = "90d9d61bf25af93e4302b6184a45b132ee3c02b68c6665bf83eef6edb7e9fca5", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-6a15586/selenium-manager-linux", ) http_file( name = "download_sm_macos", executable = True, - sha256 = "43168f3c79747b5dd86a6aeb5fc8fb642614899c4ce427e8dcd57737cf70be7f", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-8fab886/selenium-manager-macos", + sha256 = "85475ae5ff6721b371f9806ec1bb869cbb2e5c1b1b70862a2e3d5eec5c0384c0", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-6a15586/selenium-manager-macos", ) http_file( name = "download_sm_windows", executable = True, - sha256 = "c85785e6738ad1759c1e424b2a96f79f0f3ad3a5b5def8a7130dd98c290731c4", - url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-8fab886/selenium-manager-windows.exe", + sha256 = "13bd63fa51a75bbf1b98beb221edceed3f33bacf2e3b25cd39ef4e6ac84371eb", + url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-6a15586/selenium-manager-windows.exe", ) diff --git a/dotnet/CHANGELOG b/dotnet/CHANGELOG index d3982cb4c05bc..d89d18181495a 100644 --- a/dotnet/CHANGELOG +++ b/dotnet/CHANGELOG @@ -1,3 +1,15 @@ +v4.19.0 +====== + +* Add CDP for Chrome 123 and remove 120 +* Correct `ChromiumDriverService.AllowedIPAddresses` property name (#13626) +* Fixed parsing of the year in ConsoleApiCalledEventArgs cdp event args (Fixes #13654) +* Add dispose on constructor failure to ensure driver closes (#13673) +* Rename assembly prerequisites to AssemblyFixture +* Support setting timeouts in capabilities (#13698) +* Treat unsuccessful http responses as errored commands (#13608) +* Enable internal logging at trace level for unit tests (#13727) + v4.18.1 ====== diff --git a/dotnet/selenium-dotnet-version.bzl b/dotnet/selenium-dotnet-version.bzl index 1fa52f1559877..e8287496e68b5 100644 --- a/dotnet/selenium-dotnet-version.bzl +++ b/dotnet/selenium-dotnet-version.bzl @@ -1,13 +1,13 @@ # BUILD FILE SYNTAX: STARLARK -SE_VERSION = "4.18.1" +SE_VERSION = "4.19.0" ASSEMBLY_VERSION = "4.0.0.0" SUPPORTED_NET_STANDARD_VERSIONS = ["netstandard2.0"] SUPPORTED_DEVTOOLS_VERSIONS = [ "v85", "v122", - "v120", + "v123", "v121", ] diff --git a/dotnet/src/webdriver/DevTools/DevToolsDomains.cs b/dotnet/src/webdriver/DevTools/DevToolsDomains.cs index ae1278572c99a..970dbe58fc978 100644 --- a/dotnet/src/webdriver/DevTools/DevToolsDomains.cs +++ b/dotnet/src/webdriver/DevTools/DevToolsDomains.cs @@ -36,7 +36,7 @@ public abstract class DevToolsDomains private static readonly Dictionary SupportedDevToolsVersions = new Dictionary() { { 121, typeof(V121.V121Domains) }, - { 120, typeof(V120.V120Domains) }, + { 123, typeof(V123.V123Domains) }, { 122, typeof(V122.V122Domains) }, { 85, typeof(V85.V85Domains) } }; diff --git a/dotnet/src/webdriver/DevTools/v120/V120Domains.cs b/dotnet/src/webdriver/DevTools/v123/V123Domains.cs similarity index 78% rename from dotnet/src/webdriver/DevTools/v120/V120Domains.cs rename to dotnet/src/webdriver/DevTools/v123/V123Domains.cs index 6fcfa469ef410..1e6045d03843a 100644 --- a/dotnet/src/webdriver/DevTools/v120/V120Domains.cs +++ b/dotnet/src/webdriver/DevTools/v123/V123Domains.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 @@ -15,20 +15,20 @@ // See the License for the specific language governing permissions and // limitations under the License. -namespace OpenQA.Selenium.DevTools.V120 +namespace OpenQA.Selenium.DevTools.V123 { /// - /// Class containing the domain implementation for version 120 of the DevTools Protocol. + /// Class containing the domain implementation for version 123 of the DevTools Protocol. /// - public class V120Domains : DevToolsDomains + public class V123Domains : DevToolsDomains { private DevToolsSessionDomains domains; /// - /// Initializes a new instance of the V120Domains class. + /// Initializes a new instance of the V123Domains class. /// /// The DevToolsSession to use with this set of domains. - public V120Domains(DevToolsSession session) + public V123Domains(DevToolsSession session) { this.domains = new DevToolsSessionDomains(session); } @@ -36,7 +36,7 @@ public V120Domains(DevToolsSession session) /// /// Gets the DevTools Protocol version for which this class is valid. /// - public static int DevToolsVersion => 120; + public static int DevToolsVersion => 123; /// /// Gets the version-specific domains for the DevTools session. This value must be cast to a version specific type to be at all useful. @@ -46,21 +46,21 @@ public V120Domains(DevToolsSession session) /// /// Gets the object used for manipulating network information in the browser. /// - public override DevTools.Network Network => new V120Network(domains.Network, domains.Fetch); + public override DevTools.Network Network => new V123Network(domains.Network, domains.Fetch); /// /// Gets the object used for manipulating the browser's JavaScript execution. /// - public override JavaScript JavaScript => new V120JavaScript(domains.Runtime, domains.Page); + public override JavaScript JavaScript => new V123JavaScript(domains.Runtime, domains.Page); /// /// Gets the object used for manipulating DevTools Protocol targets. /// - public override DevTools.Target Target => new V120Target(domains.Target); + public override DevTools.Target Target => new V123Target(domains.Target); /// /// Gets the object used for manipulating the browser's logs. /// - public override DevTools.Log Log => new V120Log(domains.Log); + public override DevTools.Log Log => new V123Log(domains.Log); } } diff --git a/dotnet/src/webdriver/DevTools/v120/V120JavaScript.cs b/dotnet/src/webdriver/DevTools/v123/V123JavaScript.cs similarity index 94% rename from dotnet/src/webdriver/DevTools/v120/V120JavaScript.cs rename to dotnet/src/webdriver/DevTools/v123/V123JavaScript.cs index 4fe0a7c3074f6..9364b1f416728 100644 --- a/dotnet/src/webdriver/DevTools/v120/V120JavaScript.cs +++ b/dotnet/src/webdriver/DevTools/v123/V123JavaScript.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 @@ -15,28 +15,28 @@ // See the License for the specific language governing permissions and // limitations under the License. -using OpenQA.Selenium.DevTools.V120.Page; -using OpenQA.Selenium.DevTools.V120.Runtime; +using OpenQA.Selenium.DevTools.V123.Page; +using OpenQA.Selenium.DevTools.V123.Runtime; using System; using System.Collections.Generic; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V120 +namespace OpenQA.Selenium.DevTools.V123 { /// - /// Class containing the JavaScript implementation for version 120 of the DevTools Protocol. + /// Class containing the JavaScript implementation for version 123 of the DevTools Protocol. /// - public class V120JavaScript : JavaScript + public class V123JavaScript : JavaScript { private RuntimeAdapter runtime; private 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. - public V120JavaScript(RuntimeAdapter runtime, PageAdapter page) + public V123JavaScript(RuntimeAdapter runtime, PageAdapter page) { this.runtime = runtime; this.page = page; diff --git a/dotnet/src/webdriver/DevTools/v120/V120Log.cs b/dotnet/src/webdriver/DevTools/v123/V123Log.cs similarity index 88% rename from dotnet/src/webdriver/DevTools/v120/V120Log.cs rename to dotnet/src/webdriver/DevTools/v123/V123Log.cs index 89684bba95593..36cd598bc491f 100644 --- a/dotnet/src/webdriver/DevTools/v120/V120Log.cs +++ b/dotnet/src/webdriver/DevTools/v123/V123Log.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 @@ -15,23 +15,23 @@ // See the License for the specific language governing permissions and // limitations under the License. -using OpenQA.Selenium.DevTools.V120.Log; +using OpenQA.Selenium.DevTools.V123.Log; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V120 +namespace OpenQA.Selenium.DevTools.V123 { /// - /// Class containing the browser's log as referenced by version 120 of the DevTools Protocol. + /// Class containing the browser's log as referenced by version 123 of the DevTools Protocol. /// - public class V120Log : DevTools.Log + public class V123Log : 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. - public V120Log(LogAdapter adapter) + public V123Log(LogAdapter adapter) { this.adapter = adapter; this.adapter.EntryAdded += OnAdapterEntryAdded; diff --git a/dotnet/src/webdriver/DevTools/v120/V120Network.cs b/dotnet/src/webdriver/DevTools/v123/V123Network.cs similarity index 95% rename from dotnet/src/webdriver/DevTools/v120/V120Network.cs rename to dotnet/src/webdriver/DevTools/v123/V123Network.cs index 5e310954cd925..40795be9d4927 100644 --- a/dotnet/src/webdriver/DevTools/v120/V120Network.cs +++ b/dotnet/src/webdriver/DevTools/v123/V123Network.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 @@ -16,29 +16,29 @@ // limitations under the License. // -using OpenQA.Selenium.DevTools.V120.Fetch; -using OpenQA.Selenium.DevTools.V120.Network; +using OpenQA.Selenium.DevTools.V123.Fetch; +using OpenQA.Selenium.DevTools.V123.Network; using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V120 +namespace OpenQA.Selenium.DevTools.V123 { /// - /// Class providing functionality for manipulating network calls using version 120 of the DevTools Protocol + /// Class providing functionality for manipulating network calls using version 123 of the DevTools Protocol /// - public class V120Network : DevTools.Network + public class V123Network : 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. - public V120Network(NetworkAdapter network, FetchAdapter fetch) + public V123Network(NetworkAdapter network, FetchAdapter fetch) { this.network = network; this.fetch = fetch; @@ -216,9 +216,9 @@ public override async Task ContinueWithAuth(string requestId, string userName, s await fetch.ContinueWithAuth(new ContinueWithAuthCommandSettings() { RequestId = requestId, - AuthChallengeResponse = new V120.Fetch.AuthChallengeResponse() + AuthChallengeResponse = new V123.Fetch.AuthChallengeResponse() { - Response = V120.Fetch.AuthChallengeResponseResponseValues.ProvideCredentials, + Response = V123.Fetch.AuthChallengeResponseResponseValues.ProvideCredentials, Username = userName, Password = password } @@ -235,9 +235,9 @@ public override async Task CancelAuth(string requestId) await fetch.ContinueWithAuth(new ContinueWithAuthCommandSettings() { RequestId = requestId, - AuthChallengeResponse = new OpenQA.Selenium.DevTools.V120.Fetch.AuthChallengeResponse() + AuthChallengeResponse = new OpenQA.Selenium.DevTools.V123.Fetch.AuthChallengeResponse() { - Response = V120.Fetch.AuthChallengeResponseResponseValues.CancelAuth + Response = V123.Fetch.AuthChallengeResponseResponseValues.CancelAuth } }).ConfigureAwait(false); } diff --git a/dotnet/src/webdriver/DevTools/v120/V120Target.cs b/dotnet/src/webdriver/DevTools/v123/V123Target.cs similarity index 94% rename from dotnet/src/webdriver/DevTools/v120/V120Target.cs rename to dotnet/src/webdriver/DevTools/v123/V123Target.cs index 60588f8dec2ab..4b25f21a23c75 100644 --- a/dotnet/src/webdriver/DevTools/v120/V120Target.cs +++ b/dotnet/src/webdriver/DevTools/v123/V123Target.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 @@ -16,26 +16,26 @@ // limitations under the License. // -using OpenQA.Selenium.DevTools.V120.Target; +using OpenQA.Selenium.DevTools.V123.Target; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Threading.Tasks; -namespace OpenQA.Selenium.DevTools.V120 +namespace OpenQA.Selenium.DevTools.V123 { /// - /// Class providing functionality for manipulating targets for version 120 of the DevTools Protocol + /// Class providing functionality for manipulating targets for version 123 of the DevTools Protocol /// - public class V120Target : DevTools.Target + public class V123Target : DevTools.Target { private TargetAdapter adapter; /// - /// Initializes a new instance of the class. + /// Initializes a new instance of the class. /// /// The adapter for the Target domain. - public V120Target(TargetAdapter adapter) + public V123Target(TargetAdapter adapter) { this.adapter = adapter; adapter.DetachedFromTarget += OnDetachedFromTarget; diff --git a/dotnet/src/webdriver/WebDriver.csproj b/dotnet/src/webdriver/WebDriver.csproj index 6f3be90614998..da4168d17a8cc 100644 --- a/dotnet/src/webdriver/WebDriver.csproj +++ b/dotnet/src/webdriver/WebDriver.csproj @@ -106,7 +106,7 @@ - + diff --git a/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs b/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs index 840be91cc6083..70cd32bb7d9b5 100644 --- a/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs +++ b/dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs @@ -20,7 +20,7 @@ public StableChannelChromeDriver(ChromeDriverService service, ChromeOptions opti public static ChromeOptions DefaultOptions { - get { return new ChromeOptions() { BrowserVersion = "122" }; } + get { return new ChromeOptions() { BrowserVersion = "123" }; } } } } diff --git a/dotnet/test/common/DevTools/DevToolsConsoleTest.cs b/dotnet/test/common/DevTools/DevToolsConsoleTest.cs index 673927f7ee58b..5cead3f577df2 100644 --- a/dotnet/test/common/DevTools/DevToolsConsoleTest.cs +++ b/dotnet/test/common/DevTools/DevToolsConsoleTest.cs @@ -6,7 +6,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsConsoleTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsLogTest.cs b/dotnet/test/common/DevTools/DevToolsLogTest.cs index f300ccd3f3488..3aedea1ff8704 100644 --- a/dotnet/test/common/DevTools/DevToolsLogTest.cs +++ b/dotnet/test/common/DevTools/DevToolsLogTest.cs @@ -6,7 +6,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsLogTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsNetworkTest.cs b/dotnet/test/common/DevTools/DevToolsNetworkTest.cs index f0fa79034b88d..35342b3f0bcb3 100644 --- a/dotnet/test/common/DevTools/DevToolsNetworkTest.cs +++ b/dotnet/test/common/DevTools/DevToolsNetworkTest.cs @@ -6,7 +6,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsNetworkTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs b/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs index 306c525479d2b..daa6bb2dcb047 100644 --- a/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs +++ b/dotnet/test/common/DevTools/DevToolsPerformanceTest.cs @@ -3,7 +3,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsPerformanceTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsProfilerTest.cs b/dotnet/test/common/DevTools/DevToolsProfilerTest.cs index 5d70ea90bea69..d5b0c2244fc6f 100644 --- a/dotnet/test/common/DevTools/DevToolsProfilerTest.cs +++ b/dotnet/test/common/DevTools/DevToolsProfilerTest.cs @@ -5,7 +5,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsProfilerTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsSecurityTest.cs b/dotnet/test/common/DevTools/DevToolsSecurityTest.cs index 2a11803b5af70..a677e2fe0ea90 100644 --- a/dotnet/test/common/DevTools/DevToolsSecurityTest.cs +++ b/dotnet/test/common/DevTools/DevToolsSecurityTest.cs @@ -6,7 +6,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsSecurityTest : DevToolsTestFixture diff --git a/dotnet/test/common/DevTools/DevToolsTargetTest.cs b/dotnet/test/common/DevTools/DevToolsTargetTest.cs index 25894499d6715..2ad05969b99d8 100644 --- a/dotnet/test/common/DevTools/DevToolsTargetTest.cs +++ b/dotnet/test/common/DevTools/DevToolsTargetTest.cs @@ -6,7 +6,7 @@ namespace OpenQA.Selenium.DevTools { - using CurrentCdpVersion = V122; + using CurrentCdpVersion = V123; [TestFixture] public class DevToolsTargetTest : DevToolsTestFixture diff --git a/java/CHANGELOG b/java/CHANGELOG index fa727d5375275..455cff40822be 100644 --- a/java/CHANGELOG +++ b/java/CHANGELOG @@ -1,3 +1,22 @@ +v4.19.0 +====== + +* Add CDP for Chrome 123 and remove 120 +* Use daemon threads in JdkHttpClient #13601 +* Use a static class for ProxySelector #13622 +* Improve memory allocation of an idle relay node #13643 +* Close the httpclient after checking the service status #13643 +* [bidi] Add storage module (#13675) +* [bidi] Add browser module (#13677) +* [bidi] Add continueRequest and continueResponse command (#13692) +* [bidi] Add provide response command (#13708) +* [bidi] Add setFiles command of the Input Module (#13711) +* Add JSON serialization for ShadowRoot (#13680) +* [grid] Ensure the original RemoteNode stays DOWN #13646 (#13647) +* Removed usage of FileBackedOutputStream in the client (#13308) +* [grid] Remove "se:bidi" (#13528) +* [bidi] Update the capture screenshot APIs to include all parameters and remove scroll parameter (#13743) + v4.18.1 ====== diff --git a/java/maven_deps.bzl b/java/maven_deps.bzl index 3e9c2c15d3763..ac6aa21942bfc 100644 --- a/java/maven_deps.bzl +++ b/java/maven_deps.bzl @@ -4,43 +4,43 @@ def selenium_java_deps(): maven_install( artifacts = [ "com.beust:jcommander:1.82", - "com.github.javaparser:javaparser-core:3.25.8", + "com.github.javaparser:javaparser-core:3.25.9", "com.github.spotbugs:spotbugs:4.8.3", "com.github.stephenc.jcip:jcip-annotations:1.0-1", "com.google.code.gson:gson:2.10.1", - "com.google.guava:guava:33.0.0-jre", + "com.google.guava:guava:33.1.0-jre", "com.google.auto:auto-common:1.2.2", "com.google.auto.service:auto-service:1.1.1", "com.google.auto.service:auto-service-annotations:1.1.1", - "com.google.googlejavaformat:google-java-format:jar:1.19.2", + "com.google.googlejavaformat:google-java-format:jar:1.21.0", "com.graphql-java:graphql-java:20.2", "com.graphql-java:java-dataloader:3.2.0", "dev.failsafe:failsafe:3.3.2", - "io.grpc:grpc-context:1.61.1", - "io.lettuce:lettuce-core:6.3.1.RELEASE", - "io.netty:netty-buffer:4.1.107.Final", - "io.netty:netty-codec-http:4.1.107.Final", - "io.netty:netty-codec-http2:4.1.107.Final", - "io.netty:netty-common:4.1.107.Final", - "io.netty:netty-handler:4.1.107.Final", - "io.netty:netty-handler-proxy:4.1.107.Final", - "io.netty:netty-transport:4.1.107.Final", - "io.opentelemetry:opentelemetry-api:1.35.0", - "io.opentelemetry:opentelemetry-context:1.35.0", - "io.opentelemetry:opentelemetry-exporter-logging:1.35.0", - "io.opentelemetry:opentelemetry-sdk:1.35.0", - "io.opentelemetry:opentelemetry-sdk-common:1.35.0", - "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:1.35.0", - "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:1.35.0", - "io.opentelemetry:opentelemetry-sdk-testing:1.35.0", - "io.opentelemetry:opentelemetry-sdk-trace:1.35.0", + "io.grpc:grpc-context:1.62.2", + "io.lettuce:lettuce-core:6.3.2.RELEASE", + "io.netty:netty-buffer:4.1.108.Final", + "io.netty:netty-codec-http:4.1.108.Final", + "io.netty:netty-codec-http2:4.1.108.Final", + "io.netty:netty-common:4.1.108.Final", + "io.netty:netty-handler:4.1.108.Final", + "io.netty:netty-handler-proxy:4.1.108.Final", + "io.netty:netty-transport:4.1.108.Final", + "io.opentelemetry:opentelemetry-api:1.36.0", + "io.opentelemetry:opentelemetry-context:1.36.0", + "io.opentelemetry:opentelemetry-exporter-logging:1.36.0", + "io.opentelemetry:opentelemetry-sdk:1.36.0", + "io.opentelemetry:opentelemetry-sdk-common:1.36.0", + "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure:1.36.0", + "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi:1.36.0", + "io.opentelemetry:opentelemetry-sdk-testing:1.36.0", + "io.opentelemetry:opentelemetry-sdk-trace:1.36.0", "io.opentelemetry.semconv:opentelemetry-semconv:1.23.1-alpha", "io.ous:jtoml:2.0.0", "it.ozimov:embedded-redis:0.7.3", "net.bytebuddy:byte-buddy:1.14.12", "org.htmlunit:htmlunit-core-js:3.11.0", "org.apache.commons:commons-exec:1.3", - "org.apache.logging.log4j:log4j-core:2.22.1", + "org.apache.logging.log4j:log4j-core:2.23.1", "org.assertj:assertj-core:3.25.3", "org.bouncycastle:bcpkix-jdk18on:1.77", "org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5", @@ -52,9 +52,9 @@ def selenium_java_deps(): "org.junit.platform:junit-platform-reporting:1.10.2", "org.junit.platform:junit-platform-commons:1.10.2", "org.junit.platform:junit-platform-engine:1.10.2", - "org.mockito:mockito-core:5.10.0", + "org.mockito:mockito-core:5.11.0", "org.mockito:mockito-inline:5.2.0", - "org.redisson:redisson:3.26.1", + "org.redisson:redisson:3.27.2", "org.slf4j:slf4j-api:2.0.12", "org.slf4j:slf4j-jdk14:2.0.12", "org.zeromq:jeromq:0.6.0", diff --git a/java/maven_install.json b/java/maven_install.json index de6e1558b64ca..a83eb0c269bce 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": 589092532, - "__RESOLVED_ARTIFACTS_HASH": 1053491738, + "__INPUT_ARTIFACTS_HASH": -1952716863, + "__RESOLVED_ARTIFACTS_HASH": 519538364, "artifacts": { "com.beust:jcommander": { "shasums": { @@ -61,10 +61,10 @@ }, "com.github.javaparser:javaparser-core": { "shasums": { - "jar": "3ac2c42a234c1ee43a55bc22911934ddd537bba78931265d072ed34c22b06d96", - "sources": "b6eb63a106b16e0c2953b985d15c3126fa772e550d9f9be60c0cdd2d4d29880d" + "jar": "97bf378a54c5508adcf96a581ce904e8b165d5d091a872a5dde75a47b0c28126", + "sources": "17ceb95148911ae9c33ede5a34e3e7de2620bc01966eb0ebf6f222d2731c7ef2" }, - "version": "3.25.8" + "version": "3.25.9" }, "com.github.spotbugs:spotbugs": { "shasums": { @@ -124,17 +124,17 @@ }, "com.google.errorprone:error_prone_annotations": { "shasums": { - "jar": "ec6f39f068b6ff9ac323c68e28b9299f8c0a80ca512dccb1d4a70f40ac3ec054", - "sources": "5b4504609bb93d3c24b87cd839cf0bb7d878135d0a917a05081d0dc9b2a9973f" + "jar": "de25f2d9a2156529bd765f51d8efdfc0dfa7301e04efb9cc75b7f10cf5d0e0fb", + "sources": "32b1720fa97a3d7f24fc017014e285d812ff66a5b6c5c1819e165bfe6fdc2110" }, - "version": "2.23.0" + "version": "2.26.1" }, "com.google.googlejavaformat:google-java-format": { "shasums": { - "jar": "bac84458eb12499585f2fabb1ac13bbe5b455c120bf3d19db21597814a27c863", - "sources": "003cadae4d160a84e9ce62ffb375e5e13b4cd129c4581a93739f0209d289d80b" + "jar": "829e6aa5f6e6b9fb80ddbcfc368bfc9071843670c7505155c8db710051776f1c", + "sources": "777290d865387f77b428817bd90330d52a42a0b9de49cddceda890c12b7d7c5d" }, - "version": "1.19.2" + "version": "1.21.0" }, "com.google.guava:failureaccess": { "shasums": { @@ -145,10 +145,10 @@ }, "com.google.guava:guava": { "shasums": { - "jar": "f4d85c3e4d411694337cb873abea09b242b664bb013320be6105327c45991537", - "sources": "0c17d911785e8a606d091aa6740d6d520f307749c2bddf6e35066d52fe0036e5" + "jar": "346aec0eb8c8987360c8a264e70ff10c2fba760446eb27e8ab07e78e787a75fe", + "sources": "fe357db754046d94b79a0392c523c44671e71c1ac7b6e289bc0382a06bd5cd51" }, - "version": "33.0.0-jre" + "version": "33.1.0-jre" }, "com.google.guava:listenablefuture": { "shasums": { @@ -159,10 +159,10 @@ }, "com.google.j2objc:j2objc-annotations": { "shasums": { - "jar": "f02a95fa1a5e95edb3ed859fd0fb7df709d121a35290eff8b74dce2ab7f4d6ed", - "sources": "7413eed41f111453a08837f5ac680edded7faed466cbd35745e402e13f4cc3f5" + "jar": "88241573467ddca44ffd4d74aa04c2bbfd11bf7c17e0c342c94c9de7a70a7c64", + "sources": "bd60019a0423c3a025ef6ab24fe0761f5f45ffb48a8cca74a01b678de1105d38" }, - "version": "2.8" + "version": "3.0.0" }, "com.graphql-java:graphql-java": { "shasums": { @@ -215,115 +215,115 @@ }, "io.grpc:grpc-api": { "shasums": { - "jar": "98ef2ee2c3d7c6aba2fda2074afb307bbe7a64a2bc86258a07ec5fc0e99001f6", - "sources": "43c67ac16cd7cebaa0d5f9f298d23f0c817c1d33d1052b3cbb96df99b3b6b4a7" + "jar": "2e896944cf513e0e5cfd32bcd72c89601a27c6ca56916f84b20f3a13bacf1b1f", + "sources": "aa2974982805cc998f79e7c4d5d536744fd5520b56eb15b0179f9331c1edb3b7" }, - "version": "1.61.1" + "version": "1.62.2" }, "io.grpc:grpc-context": { "shasums": { - "jar": "3d717ab7b8872ab2c9356011efc96e86fbcbaf990231de42c2a6fcaa551510e9", - "sources": "dd338f353881b243e8394fc77cbc7dee21d6f21b36d290fd1c958f70efb9b07e" + "jar": "9959747df6a753119e1c1a3dff01aa766d2455f5e4860acaa305359e1d533a05", + "sources": "c656b874e58c84ca975c3708f2e001dba76233385b6a5b7cb098868bd6ce38b1" }, - "version": "1.61.1" + "version": "1.62.2" }, "io.lettuce:lettuce-core": { "shasums": { - "jar": "bc74138f8be5a2eac27a7a91fa076d012fc882a363d5b171e7f9d7fd481ae935", - "sources": "021f28d8ac9b1d125ce0407316440c032245a73b7bf0166489eb28d09c78b490" + "jar": "96c28d1152bc6970904ce1e3eaa22e90f09aaadef52c79805da725135859406b", + "sources": "024dc38f282ad20212972ce350c41bd9d6adf87ae16671b30f29128c299e09f0" }, - "version": "6.3.1.RELEASE" + "version": "6.3.2.RELEASE" }, "io.netty:netty-buffer": { "shasums": { - "jar": "04eb1231c86a7011c48cd443a25dc2f397137e5ee0aac2f12f1c503f11f09e2a", - "sources": "ae50a44004296e0481f9910b3778e01ed9f0b063dbc34a7baae59bf4c7ac7810" + "jar": "348e3ff64c7129ca661bc09d4bdda09c824474cfd1f5918368bdc56f5ee17f79", + "sources": "d0d090b39bba11f5ceb61f00147a92fbe6785b89a9991f6e2f6eee7e1c2de386" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-codec": { "shasums": { - "jar": "3a1f361b405f9ea30fe6aabe1907d719c0c99fe30c03932fee558214dbd638cc", - "sources": "41abc66c77a8595e0386a9da6f9d504a262fc093f789437e9a3ec995e8262db1" + "jar": "32c220dea93756fba28f9302481bc657738cc40d07440daa985a2ba21df226f1", + "sources": "0d08bc0933beba1d0fab7e39624b6c3e8c05b6458c7a82e7ea77d9d4d7277ef4" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-codec-dns": { "shasums": { - "jar": "9ca9e403a9bee24d53aa52704d23923c4c56b257c6ddce931bdbf19c3e7539f1", - "sources": "edcacafb9b8c5d7341932b760237251f419c667f89c7c0714dd233e59d600f3d" + "jar": "6014ce28b4cd32c23bd03b57823c3d682b83dc47c3fdaf4c5cef258b436accda", + "sources": "81e9ac7458a639824ad2ac18002118a0356461c5c0d8e1958fdf1ab3e58ac879" }, - "version": "4.1.106.Final" + "version": "4.1.107.Final" }, "io.netty:netty-codec-http": { "shasums": { - "jar": "0f35f57ecc11e1227d0c65d65582adc1075474a30a8fd3cff0f6e9a66c9e2a74", - "sources": "0a3d015c1994070e87959832f0ebe3e1f742174b315d504bd508e79093c47715" + "jar": "2bdb276d40c2293014638a7e065bea977b574fb6a978e1197f514f2e13b695a6", + "sources": "c6afefd3666f4476f1ad042fcfe689be4fd25e6f8ff452234e8f53a8d2254a6c" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-codec-http2": { "shasums": { - "jar": "5d83fe14a537ea6ddecc782df256da23ee49754044a4cacc2d8ec5225f338c72", - "sources": "9232a5d1e97d9630b84de9dabebd417f5b40990a6a426402293e311ca7fec911" + "jar": "a813e1810f7c1959b90fc7f221e03ce15e66005ee56e29cd0d68312b9679c772", + "sources": "4bac91d9d56373576eb5e02b94fba41e5a276448a4f31762e419a5d11710e9d3" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-codec-socks": { "shasums": { - "jar": "7974a03d949fcaf1996c83e5d58f76ec993a9a15b386a5c518114738ed209ab8", - "sources": "41a051af3d6310c82cf7f2a0f6f58746fafde36c2ebbcd3ebf8c778689d36381" + "jar": "6a1340535f24ab997e1e5fec8bf2649108550a0816ee8e3728c14c2e55921bd8", + "sources": "96442ffa09c9b43151c7d932f5162772a2bb4774d7c85dcb366a8edaf0af3d62" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-common": { "shasums": { - "jar": "1231e7bd5f523d97280b89adefb3521132d45c22791318b9e0d462bd3ba1b8e9", - "sources": "9670d56708f14394201e1704ec4eb74ccf3fb1b0c5fd30f7bd346e6678b7b421" + "jar": "8e3649fc6bab84a88ad47af82e38f9c36ab3725de478632c8a59e4bd74d16e08", + "sources": "4104a190511c03cfadefe6e05d0c13d5d297e087e0a2eca417ca265f2bb90c18" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-handler": { "shasums": { - "jar": "ce135be15a4afe717db7c5a1d5bf1d10bdfdee50c8ce77a5a39e4694b97071db", - "sources": "f6426e8a148e23559da871f21afac1e63f87977b7fac2e7e16c4561d203c06a5" + "jar": "55b2458011527d94abc868086afd039cd00cc3a547e7322569e0fb4f906d9d80", + "sources": "85e3a994544dbd5c4eb5b8c7708fb47f66277afd4ee9855a7e931703fe034c2c" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-handler-proxy": { "shasums": { - "jar": "4dc4cddca45536cd2666a56976c3b4e6f54efce856fdb08de566b7a700bbead9", - "sources": "976a4d3a56d4e5159a481a6adea7dc6221f84d3cb9e68922281a46fc88df7603" + "jar": "0e11683b57e75393d6ea710e0c6a8ebcb5c0913e7938ab2a8a8667ba740219da", + "sources": "f9b6ace4f1528610f5d1390588f405e3b1b89f4eef3a55226abfd4eeb7049e70" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-resolver": { "shasums": { - "jar": "303244791c040229315845e2236bb7b75249cffb308f99d48b0bab199bc6be63", - "sources": "39f041fd6513ec00c49669dcb1177edc8db8eb0f60fed27f43bfa03149afc607" + "jar": "55279fdcf6c0e1819b6561cc70b0eb2de1b1cf1ef5635fc46334d7e06faa9dd9", + "sources": "60b7eab02a29079044bde0eb4129a8f039b746659bf387b5ca2b0d70c21854b5" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-resolver-dns": { "shasums": { - "jar": "c2c1906c8134593b97c4920dce0ddddd3451cb4378c8d036b9e87420a53b7ee1", - "sources": "ea3648fd0208b0bf44520bc25d905377bf213603d1d1fd3c24512f8a586cb130" + "jar": "65a87e79b1966140947e6b020a455e823e967e47eec9ec90512c13cb17e98762", + "sources": "9e1657878bc6c5003b48df7ae70737944b976011d7b0bf905983cd362d53c9e3" }, - "version": "4.1.106.Final" + "version": "4.1.107.Final" }, "io.netty:netty-transport": { "shasums": { - "jar": "8b3107c684c5fcf53bc437e78db9f186008184210fdb96798efb835c073cfa86", - "sources": "4eddf82135f7ccfe287a22324e1556e9759e2b9ae4cbe086295115a24c341318" + "jar": "fef2ec66fe01aa89734db40f292676719da3985786512fc31a9efe1ca4d2e0ff", + "sources": "494f8ccdd2c892cfe590ff39c1c35822d50228657fd598890e7450d66994b0a4" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.netty:netty-transport-native-unix-common": { "shasums": { - "jar": "40eb2e471d88f9e7d09d59284297d1d46de37fb1441215b1b73e9b8691061e27", - "sources": "4e8e2f8ef27856f8ef502c739cd10c1c38a4de519eb5eaa01ead8e52a3c91151" + "jar": "c3f324a6f526313e432235bf1a3a12e3db283e3b8669e02f26f569c421036bcb", + "sources": "b8f2463e6f7b135c9a89c8875fb4ffdbeece230b713c34a4aeb619081e9b18ff" }, - "version": "4.1.107.Final" + "version": "4.1.108.Final" }, "io.opentelemetry.semconv:opentelemetry-semconv": { "shasums": { @@ -334,94 +334,94 @@ }, "io.opentelemetry:opentelemetry-api": { "shasums": { - "jar": "829fb1414188d1b7ecccc6d3fb0f42629f76c6b5019f7f219c0ef31d5a7c540f", - "sources": "8e8030fb2fb21e475667d48eb10d248366400c659b6d2276ba48f69520e22871" + "jar": "a5873dc1f6cf36a098dfdb50a11974527a9e253e2ae08b1b23975eb6c59b9837", + "sources": "3921744942d746fd4e6131dd4db1c37cb754af39d525e9196c077445a5071c85" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-api-events": { "shasums": { - "jar": "96872b1ee7527e223e7a387b4bec1649acf9e9a60e21099a020f76f31bfabe5d", - "sources": "c7abd83e331215905958e162fe10dbae1c3ed15e0813c2f6444a14d5f3225df6" + "jar": "fba746fd9a3168b5669e107f38c0e50acec9a8bbda59fdae64a85690f5384fe6", + "sources": "6f01fb5022e63b2d72fb93cee32a4a619962bfb82cfca8487b0895820de0fa2c" }, - "version": "1.35.0-alpha" + "version": "1.36.0-alpha" }, "io.opentelemetry:opentelemetry-context": { "shasums": { - "jar": "6a11b6639e48515ae78e010292758cbcd2467023b564465aa5a96c1501731464", - "sources": "4439c4f1231178df94849f02a8b300440a041217be19c3ca4e94d5dad89e5c16" + "jar": "a31b52203341dafae2d9b5502e3a11eb28a3297d3540be8262d6d9ed2a8d70ab", + "sources": "d126c982465b883e0c3898b915f056b44c76850cfc789630c25c843418678050" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-exporter-logging": { "shasums": { - "jar": "f790acd24ba63ea5ced5f6eccd491790ffdaabaf5b12d5ddcf4b36f3ba94f2be", - "sources": "1433a601b901674f722b202375343055d40c7995a0ebd03e583fd4f2e0f43971" + "jar": "6f1acff2b065b5b8c067ec3b8d824ebd8cbfae375d5cbb6296728510d0833d60", + "sources": "078267d3d79705535294849bfff6e05c6747d085346deea604e5d6cc79cda627" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-extension-incubator": { "shasums": { - "jar": "5ca38a9ecdf2c93183069dae1d7d76ec12e9cf4feb3c2209d04566e82fc4df3c", - "sources": "2469ad678701e0871b39288de539915afa5d0f7c4c266d0f464677fec88fa3d1" + "jar": "41192a43a0a210d6151f3eb4bc35ec297e5b7d6110f0db1a8d0bc94c88d34ff1", + "sources": "eb1ad75ee2752283b15e59237b29e231fef5bc696335b452828a9806ce62511a" }, - "version": "1.35.0-alpha" + "version": "1.36.0-alpha" }, "io.opentelemetry:opentelemetry-sdk": { "shasums": { - "jar": "e045c5f881a3f40d80ef336ce2e482609a7877109b480a97e755ab7ac711835c", - "sources": "7f3a5bcf8fd6a9d783ec21a062989825343239a2d06323ef28bbe2630b3dafdd" + "jar": "8caa440a9102e3aa2158f2ad6ab392be60e659e0ac0a81d729cf75222a3c1bf4", + "sources": "42071d2a8249710dbeafe514e2cb696d6db495a521aa214a7253f6fbb4a4927b" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-common": { "shasums": { - "jar": "9290ccec42fe696ab0dba44d44996fcc3d978dbbb0d8f9f97e3778844a767c69", - "sources": "adad25c8d20580450ab1ba7f233b72a34797e7aeca22bdcc8a0dece5ba6ed285" + "jar": "ed4a4697ce6a6746195726ef84c873ccfc0f42b6a54c81bafc5eac7d91dc129a", + "sources": "7e5be9e13e318052a6e53a9b46a0292b69c9c5ab4af273785da39e5c11ee4503" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure": { "shasums": { - "jar": "a5e6b3aecafecd25c2363e0b7107d718eaa605853dc05e2fe8220f9323f0a3b3", - "sources": "19928daf75e9aef485b1daa9fc350ef70b28993b9d02068cb850e3709b372be6" + "jar": "3af5d325a1df60761e19a4c75e53dff5d185c1a5bfc0be68ca2c48b121c2becb", + "sources": "9dd70364b90576ac43549c79f49a2572ae1771c4b310831e2a39e5a079f49b03" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-extension-autoconfigure-spi": { "shasums": { - "jar": "3309583cb0506f5f0f5b2df3ad903812c0abf55c92d48279414b57a9da2ba1d4", - "sources": "08e72524a80d979b45cf73359882a292bb24343c3ec51ddbbcabfd064bc9da78" + "jar": "56f2449abde232311ff258d17956e82168fd178113e19ba197e7159b51ea09f2", + "sources": "811fd77447ece77c8ce5c1ed0a40f900b2d3eb7113a083cd7fd957fc1f0d647e" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-logs": { "shasums": { - "jar": "1ac2e39563669095f2ef0269924c0df3bee76f143b3a577bc0559ca9a273aaab", - "sources": "ddb9421305bc45b3d07e5a6e503cb8048597491993a3e0adf41c596836e572d1" + "jar": "ec47eb13d162a23a6a761ea13f8ad6bfd404539531e016f8a64f6ea0bfa569c9", + "sources": "183cd71d7e02d21e580ac5d624f2e7e9592d0035a80edf8b8f8c103469c256e3" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-metrics": { "shasums": { - "jar": "1032f86dac2d44c1c32459356f6bd6428d89b2d62e369764ae1434665b571e40", - "sources": "3fe382b3c5037bf63589ccb71006627e47c52c83474a9f96d7c7cdf7e3fe38a2" + "jar": "d57a4cef030a95fc1666f6ab420a2c8cb3a5386124a2c7460154bced1f4c702c", + "sources": "bd4e3c51c741d53a6aeebec649c7e9e93b1acbed08b90b46e1a49832bc8db9c3" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-testing": { "shasums": { - "jar": "4d324fd497b5367c39914cc15ceed1ee431bcd4cafcc44abe22937fdc50b9646", - "sources": "002b70421ebb5e53baf63d30e7f81fcc30e2ea6701fd739a2e6724de5ae5dd9d" + "jar": "a65587442ae17a0036f047977e57acfb3f656a29cf6e0b62f80308ce7a095097", + "sources": "3ce821e524f1aa48e992fef5d535fdf9d08ed8abe718dcd86cee7a73b70d2d7c" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.opentelemetry:opentelemetry-sdk-trace": { "shasums": { - "jar": "0c3715deed39924d0d4e67e74e43c25745b77ff27d3e15d548fa8729dab14ab6", - "sources": "78ce2fff445f29304ec874d5afef5e1181c1d4d6c9794a4fbf95e6a0b12da2d5" + "jar": "0a699cd0e0b4956a85ed3389d930e341e95a18379d5d73de4dd49bf95635207b", + "sources": "4e45072b6d7acd4f93ac86fe90f606c86fbaa8bbffe04a31b8a4c1b88004cf74" }, - "version": "1.35.0" + "version": "1.36.0" }, "io.ous:jtoml": { "shasums": { @@ -432,10 +432,10 @@ }, "io.projectreactor:reactor-core": { "shasums": { - "jar": "6e235f0be9732ebd6a42c585dfd53274065978bfbc28d721d7ecf487fde27b52", - "sources": "57e48b121636923ec362aa337556150edc8bc29ccba686c21d36016e05207b23" + "jar": "46ab18fce8c4834da85985bc01e6d37a52ec1c70d71946f1d66680abba304287", + "sources": "cce62c6ebf0ed34ffeb572b2736fd0a011413ac31e77f8d4f6162015b8cf4774" }, - "version": "3.6.2" + "version": "3.6.4" }, "io.reactivex.rxjava3:rxjava": { "shasums": { @@ -474,10 +474,10 @@ }, "net.bytebuddy:byte-buddy-agent": { "shasums": { - "jar": "2f537a621a64fa7013d68c695a76a34ee8d79dad74e635caca16dd56257aeb80", - "sources": "1e3618de3b0f81a43c7480aea392dd7905f9dce275e6665003ec331b4531ced4" + "jar": "2b309a9300092e0b696f7c471fd51d9969001df784c8ab9f07997437d757ad6d", + "sources": "4973308b6309e6ce0e98223a38c1c123c8b2429d1f1b68dea286d3c06e50a73b" }, - "version": "1.14.11" + "version": "1.14.12" }, "net.sf.saxon:Saxon-HE": { "shasums": { @@ -537,17 +537,17 @@ }, "org.apache.logging.log4j:log4j-api": { "shasums": { - "jar": "5d7beae7ff15d8516d6517121d7f12a79a6ac180df64b5fcec55d5be21056e53", - "sources": "da73464bd4887421a2b0677f8e29158e5af8642f0a8523a99cec6064b637197d" + "jar": "92ec1fd36ab3bc09de6198d2d7c0914685c0f7127ea931acc32fd2ecdd82ea89", + "sources": "d5cf646b25ee4ee16b27aea90d919aa0b35846feae811abc8cb389331420a059" }, - "version": "2.22.1" + "version": "2.23.1" }, "org.apache.logging.log4j:log4j-core": { "shasums": { - "jar": "46dccecac556623d8e2ce8648496824a82951d139062a4e61148aff1a25ed18d", - "sources": "07eaa7939a5940c7c99f5acfda3a06dbb04d74f083455b535e42811a45c1b07e" + "jar": "7079368005fc34f56248f57f8a8a53361c3a53e9007d556dbc66fc669df081b5", + "sources": "3da91ab04815b5506efa7b7ec3bca6f8dacc398a8f25329ff8e8c734e98d1678" }, - "version": "2.22.1" + "version": "2.23.1" }, "org.apiguardian:apiguardian-api": { "shasums": { @@ -586,10 +586,10 @@ }, "org.checkerframework:checker-qual": { "shasums": { - "jar": "2f9f245bf68e4259d610894f2406dc1f6363dc639302bd566e8272e4f4541172", - "sources": "8308220bbdd4e12b49fa06a91de685faf9cc1a376464478c80845be3e87b7d4f" + "jar": "ccaedd33af0b7894d9f2f3b644f4d19e43928e32902e61ac4d10777830f5aac7", + "sources": "efb65eb479f61f53c6dcafbd42ed59dad09b0a0d5a7f44b7bc68df25c2dcf8fd" }, - "version": "3.41.0" + "version": "3.42.0" }, "org.dom4j:dom4j": { "shasums": { @@ -698,10 +698,10 @@ }, "org.mockito:mockito-core": { "shasums": { - "jar": "0323f591b04d3a0d7ca9ebeebb9e9f34a07c0ec9169b7444ee3951b71d4cad56", - "sources": "de416c7c3f519da04575bfc5587aada7cf8ad1c4ea40e00d5999273941fde309" + "jar": "f076c96b1f49b8d9bc42e46b0969aaf5684c40c8b5b679d400e5d880073a0e00", + "sources": "83df46b0b44f232d76b40e46583334eaf2dfbe1699174bb8e76376b96cbac709" }, - "version": "5.10.0" + "version": "5.11.0" }, "org.mockito:mockito-inline": { "shasums": { @@ -768,10 +768,10 @@ }, "org.redisson:redisson": { "shasums": { - "jar": "329bcc2f6cffd3d01c5537128932c8584db79e0e77f3aff5b9e64e56f6554b22", - "sources": "c219b6fd5f8c891d3360c522494d8dfbddad80cada2489d8ec80c746a2448408" + "jar": "11c5345b7ce90a822c65e184434e237f135d82537b379dcf1f9420363bf54d9a", + "sources": "83dd2463d9fbf433cbe368e0d852617c249378f46d479aede953ce282315f9ab" }, - "version": "3.26.1" + "version": "3.27.2" }, "org.slf4j:slf4j-api": { "shasums": { @@ -2456,7 +2456,7 @@ "org.checkerframework.common.reflection.qual", "org.checkerframework.common.returnsreceiver.qual", "org.checkerframework.common.subtyping.qual", - "org.checkerframework.common.util.report.qual", + "org.checkerframework.common.util.count.report.qual", "org.checkerframework.common.value.qual", "org.checkerframework.dataflow.qual", "org.checkerframework.framework.qual" diff --git a/java/src/org/openqa/selenium/devtools/v120/BUILD.bazel b/java/src/org/openqa/selenium/devtools/v123/BUILD.bazel similarity index 98% rename from java/src/org/openqa/selenium/devtools/v120/BUILD.bazel rename to java/src/org/openqa/selenium/devtools/v123/BUILD.bazel index de423298215d3..0f2a82576852b 100644 --- a/java/src/org/openqa/selenium/devtools/v120/BUILD.bazel +++ b/java/src/org/openqa/selenium/devtools/v123/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 = "v120" +cdp_version = "v123" java_export( name = cdp_version, diff --git a/java/src/org/openqa/selenium/devtools/v120/v120CdpInfo.java b/java/src/org/openqa/selenium/devtools/v123/v123CdpInfo.java similarity index 86% rename from java/src/org/openqa/selenium/devtools/v120/v120CdpInfo.java rename to java/src/org/openqa/selenium/devtools/v123/v123CdpInfo.java index 6d43aba2f4bb7..98adf28eaa97e 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120CdpInfo.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123CdpInfo.java @@ -15,15 +15,15 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; import com.google.auto.service.AutoService; import org.openqa.selenium.devtools.CdpInfo; @AutoService(CdpInfo.class) -public class v120CdpInfo extends CdpInfo { +public class v123CdpInfo extends CdpInfo { - public v120CdpInfo() { - super(120, v120Domains::new); + public v123CdpInfo() { + super(123, v123Domains::new); } } diff --git a/java/src/org/openqa/selenium/devtools/v120/v120Domains.java b/java/src/org/openqa/selenium/devtools/v123/v123Domains.java similarity index 77% rename from java/src/org/openqa/selenium/devtools/v120/v120Domains.java rename to java/src/org/openqa/selenium/devtools/v123/v123Domains.java index 84d207fb3f565..eaf7f440c03e7 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120Domains.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123Domains.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; 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 v120Domains implements Domains { +public class v123Domains implements Domains { - private final v120Javascript js; - private final v120Events events; - private final v120Log log; - private final v120Network network; - private final v120Target target; + private final v123Javascript js; + private final v123Events events; + private final v123Log log; + private final v123Network network; + private final v123Target target; - public v120Domains(DevTools devtools) { + public v123Domains(DevTools devtools) { Require.nonNull("DevTools", devtools); - events = new v120Events(devtools); - js = new v120Javascript(devtools); - log = new v120Log(); - network = new v120Network(devtools); - target = new v120Target(); + events = new v123Events(devtools); + js = new v123Javascript(devtools); + log = new v123Log(); + network = new v123Network(devtools); + target = new v123Target(); } @Override diff --git a/java/src/org/openqa/selenium/devtools/v120/v120Events.java b/java/src/org/openqa/selenium/devtools/v123/v123Events.java similarity index 86% rename from java/src/org/openqa/selenium/devtools/v120/v120Events.java rename to java/src/org/openqa/selenium/devtools/v123/v123Events.java index 3262c64a61c52..47b74477ddcc5 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120Events.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123Events.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; 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.v120.runtime.Runtime; -import org.openqa.selenium.devtools.v120.runtime.model.ConsoleAPICalled; -import org.openqa.selenium.devtools.v120.runtime.model.ExceptionDetails; -import org.openqa.selenium.devtools.v120.runtime.model.ExceptionThrown; -import org.openqa.selenium.devtools.v120.runtime.model.StackTrace; +import org.openqa.selenium.devtools.v123.runtime.Runtime; +import org.openqa.selenium.devtools.v123.runtime.model.ConsoleAPICalled; +import org.openqa.selenium.devtools.v123.runtime.model.ExceptionDetails; +import org.openqa.selenium.devtools.v123.runtime.model.ExceptionThrown; +import org.openqa.selenium.devtools.v123.runtime.model.StackTrace; -public class v120Events extends Events { +public class v123Events extends Events { - public v120Events(DevTools devtools) { + public v123Events(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/v120/v120Javascript.java b/java/src/org/openqa/selenium/devtools/v123/v123Javascript.java similarity index 85% rename from java/src/org/openqa/selenium/devtools/v120/v120Javascript.java rename to java/src/org/openqa/selenium/devtools/v123/v123Javascript.java index 781c0b5d5a21a..3f752551a6c17 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120Javascript.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123Javascript.java @@ -15,21 +15,21 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; 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.v120.page.Page; -import org.openqa.selenium.devtools.v120.page.model.ScriptIdentifier; -import org.openqa.selenium.devtools.v120.runtime.Runtime; -import org.openqa.selenium.devtools.v120.runtime.model.BindingCalled; +import org.openqa.selenium.devtools.v123.page.Page; +import org.openqa.selenium.devtools.v123.page.model.ScriptIdentifier; +import org.openqa.selenium.devtools.v123.runtime.Runtime; +import org.openqa.selenium.devtools.v123.runtime.model.BindingCalled; -public class v120Javascript extends Javascript { +public class v123Javascript extends Javascript { - public v120Javascript(DevTools devtools) { + public v123Javascript(DevTools devtools) { super(devtools); } diff --git a/java/src/org/openqa/selenium/devtools/v120/v120Log.java b/java/src/org/openqa/selenium/devtools/v123/v123Log.java similarity index 89% rename from java/src/org/openqa/selenium/devtools/v120/v120Log.java rename to java/src/org/openqa/selenium/devtools/v123/v123Log.java index 563eaee11fdfc..9c7f80cafc9d9 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120Log.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123Log.java @@ -15,19 +15,19 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; 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.v120.log.Log; -import org.openqa.selenium.devtools.v120.log.model.LogEntry; -import org.openqa.selenium.devtools.v120.runtime.model.Timestamp; +import org.openqa.selenium.devtools.v123.log.Log; +import org.openqa.selenium.devtools.v123.log.model.LogEntry; +import org.openqa.selenium.devtools.v123.runtime.model.Timestamp; import org.openqa.selenium.json.JsonInput; -public class v120Log implements org.openqa.selenium.devtools.idealized.log.Log { +public class v123Log implements org.openqa.selenium.devtools.idealized.log.Log { @Override public Command enable() { diff --git a/java/src/org/openqa/selenium/devtools/v120/v120Network.java b/java/src/org/openqa/selenium/devtools/v123/v123Network.java similarity index 92% rename from java/src/org/openqa/selenium/devtools/v120/v120Network.java rename to java/src/org/openqa/selenium/devtools/v123/v123Network.java index e7202df1d62c9..c0686a3c98fab 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120Network.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123Network.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; 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.v120.fetch.Fetch; -import org.openqa.selenium.devtools.v120.fetch.model.*; -import org.openqa.selenium.devtools.v120.network.model.Request; +import org.openqa.selenium.devtools.v123.fetch.Fetch; +import org.openqa.selenium.devtools.v123.fetch.model.*; +import org.openqa.selenium.devtools.v123.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 v120Network extends Network { +public class v123Network extends Network { - private static final Logger LOG = Logger.getLogger(v120Network.class.getName()); + private static final Logger LOG = Logger.getLogger(v123Network.class.getName()); - public v120Network(DevTools devTools) { + public v123Network(DevTools devTools) { super(devTools); } @Override protected Command setUserAgentOverride(UserAgent userAgent) { - return org.openqa.selenium.devtools.v120.network.Network.setUserAgentOverride( + return org.openqa.selenium.devtools.v123.network.Network.setUserAgentOverride( userAgent.userAgent(), userAgent.acceptLanguage(), userAgent.platform(), Optional.empty()); } @Override protected Command enableNetworkCaching() { - return org.openqa.selenium.devtools.v120.network.Network.setCacheDisabled(false); + return org.openqa.selenium.devtools.v123.network.Network.setCacheDisabled(false); } @Override protected Command disableNetworkCaching() { - return org.openqa.selenium.devtools.v120.network.Network.setCacheDisabled(true); + return org.openqa.selenium.devtools.v123.network.Network.setCacheDisabled(true); } @Override diff --git a/java/src/org/openqa/selenium/devtools/v120/v120Target.java b/java/src/org/openqa/selenium/devtools/v123/v123Target.java similarity index 83% rename from java/src/org/openqa/selenium/devtools/v120/v120Target.java rename to java/src/org/openqa/selenium/devtools/v123/v123Target.java index 06f87dfe9ebd0..e4c91af71efb6 100644 --- a/java/src/org/openqa/selenium/devtools/v120/v120Target.java +++ b/java/src/org/openqa/selenium/devtools/v123/v123Target.java @@ -15,7 +15,7 @@ // specific language governing permissions and limitations // under the License. -package org.openqa.selenium.devtools.v120; +package org.openqa.selenium.devtools.v123; 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.v120.target.Target; -import org.openqa.selenium.devtools.v120.target.model.TargetInfo; +import org.openqa.selenium.devtools.v123.target.Target; +import org.openqa.selenium.devtools.v123.target.model.TargetInfo; import org.openqa.selenium.json.JsonInput; import org.openqa.selenium.json.TypeToken; -public class v120Target implements org.openqa.selenium.devtools.idealized.target.Target { +public class v123Target 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.v120.target.model.SessionID(id.toString())), + id -> new org.openqa.selenium.devtools.v123.target.model.SessionID(id.toString())), targetId.map( - id -> new org.openqa.selenium.devtools.v120.target.model.TargetID(id.toString()))); + id -> new org.openqa.selenium.devtools.v123.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.v120.target.model.SessionID.class); + "sessionId", org.openqa.selenium.devtools.v123.target.model.SessionID.class); return new Command<>( "Target.attachToTarget", Map.of( "targetId", - new org.openqa.selenium.devtools.v120.target.model.TargetID(targetId.toString()), + new org.openqa.selenium.devtools.v123.target.model.TargetID(targetId.toString()), "flatten", true), input -> { - org.openqa.selenium.devtools.v120.target.model.SessionID id = mapper.apply(input); + org.openqa.selenium.devtools.v123.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.v120.target.model.TargetID.class); + "targetId", org.openqa.selenium.devtools.v123.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 b66e9f88da819..ae5db7ab81c12 100644 --- a/java/src/org/openqa/selenium/devtools/versions.bzl +++ b/java/src/org/openqa/selenium/devtools/versions.bzl @@ -1,7 +1,7 @@ CDP_VERSIONS = [ "v85", # Required by Firefox "v122", - "v120", + "v123", "v121", ] diff --git a/java/version.bzl b/java/version.bzl index 86a5ae9265944..84bf4814f1279 100644 --- a/java/version.bzl +++ b/java/version.bzl @@ -1,2 +1,2 @@ -SE_VERSION = "4.19.0-SNAPSHOT" +SE_VERSION = "4.19.0" TOOLS_JAVA_VERSION = "17" diff --git a/javascript/node/selenium-webdriver/BUILD.bazel b/javascript/node/selenium-webdriver/BUILD.bazel index 124eab805f557..e331fed00b3a4 100644 --- a/javascript/node/selenium-webdriver/BUILD.bazel +++ b/javascript/node/selenium-webdriver/BUILD.bazel @@ -14,7 +14,7 @@ VERSION = "4.16.0" BROWSER_VERSIONS = [ "v85", "v122", - "v120", + "v123", "v121", ] diff --git a/javascript/node/selenium-webdriver/CHANGES.md b/javascript/node/selenium-webdriver/CHANGES.md index 0fea541b521ef..ace0ca17aefba 100644 --- a/javascript/node/selenium-webdriver/CHANGES.md +++ b/javascript/node/selenium-webdriver/CHANGES.md @@ -1,3 +1,15 @@ +## 4.19.0 + +- Add CDP for Chrome 123 and remove 120 +- [bidi] Add browser module (#13677) +- [bidi] Add storage module (#13684) +- [bidi] Add fail request command +- [bidi] Add error handling to check BytesValue instance +- [bidi] Add continueRequest and continueResponse command (#13704) +- [bidi] Add provide response command (#13708) +- [bidi] Add setFiles command of the Input Module (#13711) +- [atoms] use css locators in dom.js (#13430) + ## 4.18.1 - Add CDP for Chrome 122 and remove 119 diff --git a/javascript/node/selenium-webdriver/package.json b/javascript/node/selenium-webdriver/package.json index 8791944b9387b..97c27d2a3ac58 100644 --- a/javascript/node/selenium-webdriver/package.json +++ b/javascript/node/selenium-webdriver/package.json @@ -1,6 +1,6 @@ { "name": "selenium-webdriver", - "version": "4.18.1", + "version": "4.19.0", "description": "The official WebDriver JavaScript bindings from the Selenium project", "license": "Apache-2.0", "keywords": [ diff --git a/package-lock.json b/package-lock.json index 1dea84b16e3ca..a071d591b0383 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10977,7 +10977,7 @@ "dependencies": { "@babel/code-frame": "^7.16.0", "address": "^1.1.2", - "browserslist": "^4.18.1", + "browserslist": "^4.19.0", "chalk": "^4.1.2", "cross-spawn": "^7.0.3", "detect-port-alt": "^1.1.6", @@ -11123,7 +11123,7 @@ "babel-plugin-named-asset-import": "^0.3.8", "babel-preset-react-app": "^10.0.1", "bfj": "^7.0.2", - "browserslist": "^4.18.1", + "browserslist": "^4.19.0", "camelcase": "^6.2.1", "case-sensitive-paths-webpack-plugin": "^2.4.0", "css-loader": "^6.5.1", @@ -13502,7 +13502,7 @@ "license": "ISC" }, "javascript/node/selenium-webdriver": { - "version": "4.18.1", + "version": "4.19.0", "license": "Apache-2.0", "dependencies": { "jszip": "^3.10.1", diff --git a/py/BUILD.bazel b/py/BUILD.bazel index 7e26fa9b3e1ed..7b59c9bc2c795 100644 --- a/py/BUILD.bazel +++ b/py/BUILD.bazel @@ -40,12 +40,12 @@ compile_pip_requirements( ], ) -SE_VERSION = "4.19.0.dev202403101143" +SE_VERSION = "4.19.0" BROWSER_VERSIONS = [ "v85", "v122", - "v120", + "v123", "v121", ] diff --git a/py/CHANGES b/py/CHANGES index 8be020484fbd6..02111233266b1 100644 --- a/py/CHANGES +++ b/py/CHANGES @@ -1,3 +1,12 @@ +Selenium 4.19.0 + +* Add CDP for Chrome 123 and remove 120 +* Add more network interfaces to detect lan ip (#13663) +* install_addon() didn't take into account dir paths with trailing slashes (#13694) +* Explicitly export Select and WebDriverWait from selenium.webdriver.support.ui (#13491) +* Add return type to webelement.submit (#13490) +* Add type to parameter of webelement.WebElement.send_keys (#13492) + Selenium 4.18.1 * Add CDP for Chrome 122 and remove 119 diff --git a/py/docs/source/conf.py b/py/docs/source/conf.py index 433869b30a80f..aa001ffd1b07a 100644 --- a/py/docs/source/conf.py +++ b/py/docs/source/conf.py @@ -49,7 +49,7 @@ # General information about the project. project = 'Selenium' -copyright = '2009-2023 Software Freedom Conservancy' +copyright = '2009-2024 Software Freedom Conservancy' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the @@ -58,7 +58,7 @@ # The short X.Y version. version = '4.19' # The full version, including alpha/beta/rc tags. -release = '4.19.0.dev202403101143' +release = '4.19.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/py/selenium/__init__.py b/py/selenium/__init__.py index 8c6af30de0afe..d561986493cd4 100644 --- a/py/selenium/__init__.py +++ b/py/selenium/__init__.py @@ -16,4 +16,4 @@ # under the License. -__version__ = "4.19.0.dev202403101143" +__version__ = "4.19.0" diff --git a/py/selenium/webdriver/__init__.py b/py/selenium/webdriver/__init__.py index aa5540ba9400d..bca431203c94d 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.19.0.dev202403101143" +__version__ = "4.19.0" # We need an explicit __all__ because the above won't otherwise be exported. __all__ = [ diff --git a/py/setup.py b/py/setup.py index 39fd531b3f5d6..27fb5e9958c34 100755 --- a/py/setup.py +++ b/py/setup.py @@ -27,7 +27,7 @@ setup_args = { 'cmdclass': {'install': install}, 'name': 'selenium', - 'version': "4.19.0.dev202403101143", + 'version': "4.19.0", 'license': 'Apache 2.0', 'description': 'Python bindings for Selenium', 'long_description': open(join(abspath(dirname(__file__)), "README.rst")).read(), diff --git a/rb/CHANGES b/rb/CHANGES index c873f72f8ec18..5935bb10ec13d 100644 --- a/rb/CHANGES +++ b/rb/CHANGES @@ -1,3 +1,10 @@ +4.19.0 (2024-03-27) +========================= + +* Add CDP for Chrome 123 and remove 120 +* Avoid over-escaping browser path (#13632) +* Add full RBS support (#13234) + 4.18.1 (2024-02-19) ========================= diff --git a/rb/Gemfile.lock b/rb/Gemfile.lock index 0e008eb132082..5be99ce235edb 100644 --- a/rb/Gemfile.lock +++ b/rb/Gemfile.lock @@ -1,9 +1,9 @@ PATH remote: . specs: - selenium-devtools (0.122.0) + selenium-devtools (0.123.0) selenium-webdriver (~> 4.2) - selenium-webdriver (4.19.0.nightly) + selenium-webdriver (4.19.0) base64 (~> 0.2) rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 3.0) @@ -13,7 +13,7 @@ GEM remote: https://rubygems.org/ specs: abbrev (0.1.2) - activesupport (7.1.3) + activesupport (7.1.3.2) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) @@ -27,44 +27,41 @@ GEM public_suffix (>= 2.0.2, < 6.0) ast (2.4.2) base64 (0.2.0) - bigdecimal (3.1.6) - bigdecimal (3.1.6-java) + bigdecimal (3.1.7) + bigdecimal (3.1.7-java) concurrent-ruby (1.2.3) connection_pool (2.4.1) crack (1.0.0) bigdecimal rexml - csv (3.2.8) + csv (3.3.0) debug (1.9.1) irb (~> 1.10) reline (>= 0.3.8) diff-lcs (1.5.1) - drb (2.2.0) - ruby2_keywords + drb (2.2.1) ffi (1.16.3) - ffi (1.16.3-java) - ffi (1.16.3-x64-mingw32) fileutils (1.7.2) git (1.19.1) addressable (~> 2.8) rchardet (~> 1.8) hashdiff (1.1.0) - i18n (1.14.1) + i18n (1.14.4) concurrent-ruby (~> 1.0) io-console (0.7.2) io-console (0.7.2-java) - irb (1.11.2) + irb (1.12.0) rdoc reline (>= 0.4.2) jar-dependencies (0.4.1) json (2.7.1) json (2.7.1-java) language_server-protocol (3.17.0.3) - listen (3.8.0) + listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) logger (1.6.0) - minitest (5.22.2) + minitest (5.22.3) mutex_m (0.2.0) parallel (1.24.0) parser (3.3.0.5) @@ -77,7 +74,7 @@ GEM public_suffix (5.0.4) racc (1.7.3) racc (1.7.3-java) - rack (2.2.8.1) + rack (2.2.9) rainbow (3.1.1) rake (13.1.0) rb-fsevent (0.11.2) @@ -86,10 +83,10 @@ GEM rbs (3.4.4) abbrev rchardet (1.8.0) - rdoc (6.6.2) + rdoc (6.6.3.1) psych (>= 4.0.0) regexp_parser (2.9.0) - reline (0.4.2) + reline (0.5.0) io-console (~> 0.5) rexml (3.2.6) rspec (3.13.0) @@ -104,8 +101,8 @@ GEM rspec-mocks (3.13.0) diff-lcs (>= 1.2.0, < 2.0) rspec-support (~> 3.13.0) - rspec-support (3.13.0) - rubocop (1.60.2) + rspec-support (3.13.1) + rubocop (1.62.1) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) @@ -113,11 +110,11 @@ GEM rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.30.0, < 2.0) + rubocop-ast (>= 1.31.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.30.0) - parser (>= 3.2.1.0) + rubocop-ast (1.31.2) + parser (>= 3.3.0.4) rubocop-capybara (2.20.0) rubocop (~> 1.41) rubocop-factory_bot (2.25.1) @@ -125,12 +122,11 @@ GEM rubocop-performance (1.20.2) rubocop (>= 1.48.1, < 2.0) rubocop-ast (>= 1.30.0, < 2.0) - rubocop-rspec (2.26.1) + rubocop-rspec (2.27.1) rubocop (~> 1.40) rubocop-capybara (~> 2.17) rubocop-factory_bot (~> 2.22) ruby-progressbar (1.13.0) - ruby2_keywords (0.0.5) rubyzip (2.3.2) securerandom (0.3.1) steep (1.5.3) @@ -156,7 +152,7 @@ GEM tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) - webmock (3.21.0) + webmock (3.23.0) addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) diff --git a/rb/lib/selenium/devtools/BUILD.bazel b/rb/lib/selenium/devtools/BUILD.bazel index e43ff8d029eb1..46097526abe28 100644 --- a/rb/lib/selenium/devtools/BUILD.bazel +++ b/rb/lib/selenium/devtools/BUILD.bazel @@ -6,7 +6,7 @@ package(default_visibility = ["//rb:__subpackages__"]) CDP_VERSIONS = [ "v85", "v122", - "v120", + "v123", "v121", ] diff --git a/rb/lib/selenium/devtools/version.rb b/rb/lib/selenium/devtools/version.rb index bc70f2b5ea9a3..807413f6c2f96 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.122.0' + VERSION = '0.123.0' end # DevTools end # Selenium diff --git a/rb/lib/selenium/webdriver/version.rb b/rb/lib/selenium/webdriver/version.rb index b6c4fceecb5fa..87a613b438371 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.19.0.nightly' + VERSION = '4.19.0' end # WebDriver end # Selenium diff --git a/rust/BUILD.bazel b/rust/BUILD.bazel index c8852a513c499..b02e206f90c9d 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.19-nightly", + version = "0.4.19", visibility = ["//visibility:public"], deps = [ ":selenium_manager", diff --git a/rust/CHANGELOG.md b/rust/CHANGELOG.md index cbd5e35d6a8b9..2925f824c6953 100644 --- a/rust/CHANGELOG.md +++ b/rust/CHANGELOG.md @@ -1,3 +1,11 @@ +0.4.19 +====== + +* Select release with artifact when filtering Edge response (#13735) +* Use apple-flat-package crate to extract PKG files (#13740) +* Fix Edge management in RPM-based Linux (#13705) +* Enhance logic to uncompress DEB files and set toolchain version (#13741) + 0.4.18 ====== diff --git a/rust/Cargo.Bazel.lock b/rust/Cargo.Bazel.lock index aef67d01182ae..03d1b78dea56c 100644 --- a/rust/Cargo.Bazel.lock +++ b/rust/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "ad22e2c56bec9cc2899d923af26cb07afe691cb81013d741f8588252270397a5", + "checksum": "c92c30dfcee338ee7a89723929f757bb27727238576facf2e007922d5f3b8643", "crates": { "addr2line 0.19.0": { "name": "addr2line", @@ -11135,9 +11135,9 @@ ], "license_file": "LICENSE" }, - "selenium-manager 0.4.19-nightly": { + "selenium-manager 0.4.19": { "name": "selenium-manager", - "version": "0.4.19-nightly", + "version": "0.4.19", "package_url": "https://github.com/SeleniumHQ/selenium", "repository": null, "targets": [ @@ -11270,7 +11270,7 @@ "selects": {} }, "edition": "2021", - "version": "0.4.19-nightly" + "version": "0.4.19" }, "license": "Apache-2.0", "license_ids": [ @@ -17916,7 +17916,7 @@ }, "binary_crates": [], "workspace_members": { - "selenium-manager 0.4.19-nightly": "rust" + "selenium-manager 0.4.19": "rust" }, "conditions": { "aarch64-apple-darwin": [ diff --git a/rust/Cargo.lock b/rust/Cargo.lock index ca313a2715345..b0bcdd796bc94 100644 --- a/rust/Cargo.lock +++ b/rust/Cargo.lock @@ -1680,7 +1680,7 @@ dependencies = [ [[package]] name = "selenium-manager" -version = "0.4.19-nightly" +version = "0.4.19" dependencies = [ "anyhow", "apple-flat-package", diff --git a/rust/Cargo.toml b/rust/Cargo.toml index dbe8eb7f27d57..1361adbc186b8 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "selenium-manager" -version = "0.4.19-nightly" # don't forget to update rust/BUILD.bazel +version = "0.4.19" # don't forget to update rust/BUILD.bazel edition = "2021" authors = ["Selenium