selenium-webdriver 4.24.0 → 4.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGES +7 -0
- data/bin/linux/selenium-manager +0 -0
- data/bin/macos/selenium-manager +0 -0
- data/bin/windows/selenium-manager.exe +0 -0
- data/lib/selenium/webdriver/chrome/service.rb +1 -0
- data/lib/selenium/webdriver/common/fedcm/account.rb +2 -2
- data/lib/selenium/webdriver/common/logger.rb +1 -1
- data/lib/selenium/webdriver/common/service.rb +11 -4
- data/lib/selenium/webdriver/common/target_locator.rb +1 -2
- data/lib/selenium/webdriver/common/wait.rb +1 -1
- data/lib/selenium/webdriver/edge/service.rb +1 -1
- data/lib/selenium/webdriver/firefox/service.rb +1 -0
- data/lib/selenium/webdriver/ie/service.rb +1 -0
- data/lib/selenium/webdriver/remote/response.rb +18 -0
- data/lib/selenium/webdriver/safari/service.rb +1 -1
- data/lib/selenium/webdriver/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 933e4204f7292ea54294b360eb588ee5ce965af527555629de203f11f6535931
|
4
|
+
data.tar.gz: fb8f77b1b744c4e3f7922e66d9e956e41f4eba67181f0aa306ae8362730c1159
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1c4ca19d4a8dca6fb0dc25e4ebae8aea5e3d7dd5797977b53048b5a460e1d08c65b11e335789e43d93ff64d2ac2a31c077a2631cf01041874bb0e82845509c4a
|
7
|
+
data.tar.gz: 1b3074dac91a3a612c64573218fb4accdc708dce7b78c31bfd8162575616da9c1cf9434463d45ef8d007fda7d28eee1d99d416f506a2c47e445f850e7a85a46d
|
data/CHANGES
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
4.25.0 (2024-09-19)
|
2
|
+
=========================
|
3
|
+
* Add CDP for Chrome 129 and remove 126
|
4
|
+
* Fix add_cause method not being able to process an array of hashes (#14433)
|
5
|
+
* replace `fedcm` links with new ones (#14478)
|
6
|
+
* Allow driver path to be set using ENV variables (#14287)
|
7
|
+
|
1
8
|
4.24.0 (2024-08-23)
|
2
9
|
=========================
|
3
10
|
* Deprecate WebStorage JS methods (#14276)
|
data/bin/linux/selenium-manager
CHANGED
Binary file
|
data/bin/macos/selenium-manager
CHANGED
Binary file
|
Binary file
|
@@ -21,8 +21,8 @@ module Selenium
|
|
21
21
|
module WebDriver
|
22
22
|
module FedCM
|
23
23
|
# Represents an account displayed in a FedCm account list.
|
24
|
-
# See: https://
|
25
|
-
# https://
|
24
|
+
# See: https://w3c-fedid.github.io/FedCM/#dictdef-identityprovideraccount
|
25
|
+
# https://w3c-fedid.github.io/FedCM/#webdriver-accountlist
|
26
26
|
class Account
|
27
27
|
LOGIN_STATE_SIGNIN = 'SignIn'
|
28
28
|
LOGIN_STATE_SIGNUP = 'SignUp'
|
@@ -69,6 +69,7 @@ module Selenium
|
|
69
69
|
def initialize(path: nil, port: nil, log: nil, args: nil)
|
70
70
|
port ||= self.class::DEFAULT_PORT
|
71
71
|
args ||= []
|
72
|
+
path ||= env_path
|
72
73
|
|
73
74
|
@executable_path = path
|
74
75
|
@host = Platform.localhost
|
@@ -87,16 +88,22 @@ module Selenium
|
|
87
88
|
end
|
88
89
|
|
89
90
|
def launch
|
90
|
-
@executable_path ||=
|
91
|
-
default_options = WebDriver.const_get("#{self.class.name&.split('::')&.[](2)}::Options").new
|
92
|
-
DriverFinder.new(default_options, self).driver_path
|
93
|
-
end
|
91
|
+
@executable_path ||= env_path || find_driver_path
|
94
92
|
ServiceManager.new(self).tap(&:start)
|
95
93
|
end
|
96
94
|
|
97
95
|
def shutdown_supported
|
98
96
|
self.class::SHUTDOWN_SUPPORTED
|
99
97
|
end
|
98
|
+
|
99
|
+
def find_driver_path
|
100
|
+
default_options = WebDriver.const_get("#{self.class.name&.split('::')&.[](2)}::Options").new
|
101
|
+
DriverFinder.new(default_options, self).driver_path
|
102
|
+
end
|
103
|
+
|
104
|
+
def env_path
|
105
|
+
ENV.fetch(self.class::DRIVER_PATH_ENV_KEY, nil)
|
106
|
+
end
|
100
107
|
end # Service
|
101
108
|
end # WebDriver
|
102
109
|
end # Selenium
|
@@ -96,12 +96,11 @@ module Selenium
|
|
96
96
|
@bridge.switch_to_window id
|
97
97
|
|
98
98
|
begin
|
99
|
-
|
99
|
+
yield
|
100
100
|
ensure
|
101
101
|
current_handles = @bridge.window_handles
|
102
102
|
original = current_handles.first unless current_handles.include? original
|
103
103
|
@bridge.switch_to_window original
|
104
|
-
returned
|
105
104
|
end
|
106
105
|
else
|
107
106
|
@bridge.switch_to_window id
|
@@ -58,12 +58,30 @@ module Selenium
|
|
58
58
|
|
59
59
|
def add_cause(ex, error, backtrace)
|
60
60
|
cause = Error::WebDriverError.new
|
61
|
+
backtrace = backtrace_from_remote(backtrace) if backtrace.is_a?(Array)
|
61
62
|
cause.set_backtrace(backtrace)
|
62
63
|
raise ex, cause: cause
|
63
64
|
rescue Error.for_error(error)
|
64
65
|
ex
|
65
66
|
end
|
66
67
|
|
68
|
+
def backtrace_from_remote(server_trace)
|
69
|
+
server_trace.filter_map do |frame|
|
70
|
+
next unless frame.is_a?(Hash)
|
71
|
+
|
72
|
+
file = frame['fileName']
|
73
|
+
line = frame['lineNumber']
|
74
|
+
method = frame['methodName']
|
75
|
+
|
76
|
+
class_name = frame['className']
|
77
|
+
file = "#{class_name}(#{file})" if class_name
|
78
|
+
|
79
|
+
method = 'unknown' if method.nil? || method.empty?
|
80
|
+
|
81
|
+
"[remote server] #{file}:#{line}:in `#{method}'"
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
67
85
|
def process_error
|
68
86
|
return unless self['value'].is_a?(Hash)
|
69
87
|
|
@@ -24,7 +24,7 @@ module Selenium
|
|
24
24
|
DEFAULT_PORT = 7050
|
25
25
|
EXECUTABLE = 'safaridriver'
|
26
26
|
SHUTDOWN_SUPPORTED = false
|
27
|
-
|
27
|
+
DRIVER_PATH_ENV_KEY = 'SE_SAFARIDRIVER'
|
28
28
|
def initialize(path: nil, port: nil, log: nil, args: nil)
|
29
29
|
raise Error::WebDriverError, 'Safari Service does not support setting log output' if log
|
30
30
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: selenium-webdriver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Rodionov
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2024-
|
13
|
+
date: 2024-09-20 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: base64
|