selenium-webdriver 4.35.0 → 4.47.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 +111 -0
- data/Gemfile +1 -4
- data/LICENSE +1 -1
- data/NOTICE +1 -1
- data/README.md +43 -23
- data/bin/linux/selenium-manager +0 -0
- data/bin/macos/selenium-manager +0 -0
- data/bin/selenium-manager-THIRD-PARTY-NOTICES.txt +5971 -0
- data/bin/selenium-manager.cdx.json +11629 -0
- data/bin/windows/selenium-manager.exe +0 -0
- data/lib/selenium/server.rb +30 -5
- data/lib/selenium/webdriver/atoms/findElements.js +272 -54
- data/lib/selenium/webdriver/atoms/getAttribute.js +152 -6
- data/lib/selenium/webdriver/atoms/isDisplayed.js +385 -28
- data/lib/selenium/webdriver/bidi/browser.rb +71 -0
- data/lib/selenium/webdriver/bidi/browsing_context.rb +3 -2
- data/lib/selenium/webdriver/bidi/{log/filter_by.rb → error.rb} +20 -16
- data/lib/selenium/webdriver/bidi/log_handler.rb +5 -0
- data/lib/selenium/webdriver/bidi/network/cookies.rb +13 -9
- data/lib/selenium/webdriver/bidi/network/credentials.rb +4 -0
- data/lib/selenium/webdriver/bidi/network/headers.rb +4 -0
- data/lib/selenium/webdriver/bidi/network/intercepted_auth.rb +4 -0
- data/lib/selenium/webdriver/bidi/network/intercepted_item.rb +4 -0
- data/lib/selenium/webdriver/bidi/network/intercepted_request.rb +20 -4
- data/lib/selenium/webdriver/bidi/network/intercepted_response.rb +24 -6
- data/lib/selenium/webdriver/bidi/network/url_pattern.rb +4 -0
- data/lib/selenium/webdriver/bidi/network.rb +18 -9
- data/lib/selenium/webdriver/bidi/protocol/bluetooth.rb +495 -0
- data/lib/selenium/webdriver/bidi/protocol/browser.rb +250 -0
- data/lib/selenium/webdriver/bidi/protocol/browsing_context.rb +798 -0
- data/lib/selenium/webdriver/bidi/{log/base_log_entry.rb → protocol/domain.rb} +22 -11
- data/lib/selenium/webdriver/bidi/protocol/emulation.rb +448 -0
- data/lib/selenium/webdriver/bidi/protocol/error_code.rb +66 -0
- data/lib/selenium/webdriver/bidi/protocol/input.rb +354 -0
- data/lib/selenium/webdriver/bidi/protocol/log.rb +115 -0
- data/lib/selenium/webdriver/bidi/protocol/network.rb +720 -0
- data/lib/selenium/webdriver/bidi/protocol/permissions.rb +75 -0
- data/lib/selenium/webdriver/bidi/protocol/script.rb +1052 -0
- data/lib/selenium/webdriver/bidi/protocol/session.rb +286 -0
- data/lib/selenium/webdriver/bidi/protocol/speculation.rb +58 -0
- data/lib/selenium/webdriver/bidi/protocol/storage.rb +183 -0
- data/lib/selenium/webdriver/bidi/protocol/user_agent_client_hints.rb +88 -0
- data/lib/selenium/webdriver/bidi/protocol/web_extension.rb +132 -0
- data/lib/selenium/webdriver/bidi/protocol.rb +42 -0
- data/lib/selenium/webdriver/bidi/serialization/record.rb +402 -0
- data/lib/selenium/webdriver/bidi/serialization/union.rb +156 -0
- data/lib/selenium/webdriver/bidi/serialization.rb +90 -0
- data/lib/selenium/webdriver/bidi/session.rb +4 -0
- data/lib/selenium/webdriver/bidi/support/bidi_generate.rb +1420 -0
- data/lib/selenium/webdriver/bidi/support/check_generated.rb +63 -0
- data/lib/selenium/webdriver/bidi/transport.rb +57 -0
- data/lib/selenium/webdriver/bidi.rb +4 -1
- data/lib/selenium/webdriver/chrome/driver.rb +4 -3
- data/lib/selenium/webdriver/chrome/service.rb +13 -0
- data/lib/selenium/webdriver/chromium/driver.rb +0 -1
- data/lib/selenium/webdriver/chromium/options.rb +23 -1
- data/lib/selenium/webdriver/chromium/profile.rb +6 -0
- data/lib/selenium/webdriver/common/child_process.rb +2 -1
- data/lib/selenium/webdriver/common/client_config.rb +97 -0
- data/lib/selenium/webdriver/common/driver.rb +13 -7
- data/lib/selenium/webdriver/common/driver_extensions/has_log_events.rb +0 -7
- data/lib/selenium/webdriver/common/driver_extensions/has_network_interception.rb +0 -7
- data/lib/selenium/webdriver/common/driver_extensions/{has_bidi.rb → has_session_events.rb} +19 -7
- data/lib/selenium/webdriver/common/driver_finder.rb +35 -25
- data/lib/selenium/webdriver/common/error.rb +10 -3
- data/lib/selenium/webdriver/common/local_driver.rb +29 -12
- data/lib/selenium/webdriver/common/logger.rb +28 -0
- data/lib/selenium/webdriver/common/manager.rb +2 -0
- data/lib/selenium/webdriver/common/options.rb +41 -2
- data/lib/selenium/webdriver/common/platform.rb +1 -3
- data/lib/selenium/webdriver/common/proxy.rb +1 -9
- data/lib/selenium/webdriver/common/selenium_manager.rb +2 -1
- data/lib/selenium/webdriver/common/service.rb +4 -8
- data/lib/selenium/webdriver/common/service_manager.rb +36 -4
- data/lib/selenium/webdriver/common/socket_poller.rb +1 -1
- data/lib/selenium/webdriver/common/takes_screenshot.rb +1 -1
- data/lib/selenium/webdriver/common/virtual_authenticator/credential.rb +1 -1
- data/lib/selenium/webdriver/common/wait.rb +4 -1
- data/lib/selenium/webdriver/common/websocket_connection.rb +73 -37
- data/lib/selenium/webdriver/common.rb +2 -1
- data/lib/selenium/webdriver/devtools/response.rb +3 -3
- data/lib/selenium/webdriver/devtools.rb +1 -1
- data/lib/selenium/webdriver/edge/driver.rb +4 -3
- data/lib/selenium/webdriver/edge/service.rb +14 -0
- data/lib/selenium/webdriver/firefox/driver.rb +4 -6
- data/lib/selenium/webdriver/firefox/options.rb +19 -0
- data/lib/selenium/webdriver/firefox/profile.rb +13 -6
- data/lib/selenium/webdriver/firefox/service.rb +31 -2
- data/lib/selenium/webdriver/ie/driver.rb +4 -3
- data/lib/selenium/webdriver/ie/service.rb +10 -0
- data/lib/selenium/webdriver/remote/bidi_bridge.rb +44 -10
- data/lib/selenium/webdriver/remote/bridge.rb +20 -14
- data/lib/selenium/webdriver/remote/driver.rb +15 -4
- data/lib/selenium/webdriver/remote/features.rb +26 -1
- data/lib/selenium/webdriver/remote/http/common.rb +57 -12
- data/lib/selenium/webdriver/remote/http/curb.rb +6 -8
- data/lib/selenium/webdriver/remote/http/default.rb +56 -39
- data/lib/selenium/webdriver/safari/driver.rb +4 -3
- data/lib/selenium/webdriver/safari/options.rb +23 -4
- data/lib/selenium/webdriver/safari.rb +1 -6
- data/lib/selenium/webdriver/support/block_event_listener.rb +5 -1
- data/lib/selenium/webdriver/support/color.rb +14 -14
- data/lib/selenium/webdriver/support/event_firing_bridge.rb +5 -1
- data/lib/selenium/webdriver/support/guards/guard.rb +30 -14
- data/lib/selenium/webdriver/support/guards.rb +11 -4
- data/lib/selenium/webdriver/version.rb +1 -1
- data/lib/selenium/webdriver.rb +7 -2
- data/selenium-webdriver.gemspec +1 -1
- metadata +33 -11
- data/lib/selenium/webdriver/bidi/log/console_log_entry.rb +0 -35
- data/lib/selenium/webdriver/bidi/log/generic_log_entry.rb +0 -33
- data/lib/selenium/webdriver/bidi/log/javascript_log_entry.rb +0 -33
- data/lib/selenium/webdriver/bidi/log_inspector.rb +0 -147
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a9c3908f34dabbaac8d9ef6e43e0d601aa0e995252f99562f1b560fe38fc6772
|
|
4
|
+
data.tar.gz: cff07935d0474b84cbdcedf7b639aada938f2d95fc080a9b8a6896f1cc02b4ef
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d0e2aea11b7104e92b6e56c12685db3147b2fc890b5e7ca9569e176df22fb9a02bf479b7217b10236f88ae324d1638eca2420c701b929366327cf27c8803ce30
|
|
7
|
+
data.tar.gz: 0e4ccc42814a6b975ee9b032ef6325df09afe80144a93614b199951cf9a7e72ffa5ef0c310f63fc367114be7edb2cf9085d7d4c02bbed36cf31d17edb4fed16d
|
data/CHANGES
CHANGED
|
@@ -1,3 +1,114 @@
|
|
|
1
|
+
4.47.0 (2026-08-10)
|
|
2
|
+
=========================
|
|
3
|
+
* Support CDP versions: v149, v150, v151
|
|
4
|
+
* support WebDriver BiDi on Safari Preview and move #bidi onto Driver (#17729)
|
|
5
|
+
* link generated BiDi elements to their spec definitions (#17781)
|
|
6
|
+
* add objectOnly/preserveExtras/scalar-primitive BiDi schema signals (#17784)
|
|
7
|
+
* construct the BiDi transport inside the domain from a connection (#17796)
|
|
8
|
+
* route BiDiBridge navigation through the generated Protocol::BrowsingContext (#17785)
|
|
9
|
+
* resolve spec runfiles via Bazel::Runfiles (#17810)
|
|
10
|
+
* [build] standardize generated-file license and not to edit markers across generators (#17816)
|
|
11
|
+
* validate nullable-constant BiDi params outbound (#17818)
|
|
12
|
+
* [build] upgrade rules_ruby to 0.28.0 and drop vendored Bazel::Runfiles workaround (#17824)
|
|
13
|
+
* [build] Merge vendor cddl files into shared BiDi schema and implement custom Firefox webExtension options (#17840)
|
|
14
|
+
* [grid] honor client-advertised se:remoteUrl for reachable BiDi/CDP/VNC URLs (#17790)
|
|
15
|
+
* tolerate and warn on missing required inbound BiDi fields, with SE_BIDI_STRICT to escalate (#17844)
|
|
16
|
+
* remove deprecated FTP proxy support (#17846)
|
|
17
|
+
* prevent CDP access with Firefox (#17849)
|
|
18
|
+
* test matchers assert log entries by id and optional messages and match severity (#17848)
|
|
19
|
+
* [bidi] Correct float/enum type fidelity in the shared schema and validate primitives outbound in Ruby (#17852)
|
|
20
|
+
* [bidi] mark BiDi types extensible per spec and update Ruby handling (#17853)
|
|
21
|
+
* raise typed WebDriver errors for BiDi from a generated error-code map (#17855)
|
|
22
|
+
* allow pending test guards to require matching provided exception (#17859)
|
|
23
|
+
* pass --enable-chrome-logs unless CHROME_LOG_FILE is set (#17858)
|
|
24
|
+
* support custom vendor specific capabilities in options classes (#17862)
|
|
25
|
+
* validate BiDi outbound ref fields against their declared type (#17861)
|
|
26
|
+
* generate BiDi domain type accessors and union variant factories (#17865)
|
|
27
|
+
* deprecate invalid Firefox profile code (#17871)
|
|
28
|
+
* [build] Automated Browser Version Update with CDP (#17873)
|
|
29
|
+
|
|
30
|
+
4.46.0 (2026-07-10)
|
|
31
|
+
=========================
|
|
32
|
+
* Support CDP versions: v148, v149, v150
|
|
33
|
+
* trim whitespace around NO_PROXY entries (#17565)
|
|
34
|
+
* add ClientConfig for HTTP client customization (#17699)
|
|
35
|
+
* generate the BiDi protocol layer from the shared binding-neutral schema (#17731)
|
|
36
|
+
|
|
37
|
+
4.45.0 (2026-06-15)
|
|
38
|
+
=========================
|
|
39
|
+
* Support CDP versions: v147, v148, v149
|
|
40
|
+
* deprecate curb http client support (#17443)
|
|
41
|
+
* move Ruby bindings to use typescript get attribute atom (#17524)
|
|
42
|
+
* Move atoms to use the typescript versions (#17532)
|
|
43
|
+
* deprecate Chromium Profile classes (#17557)
|
|
44
|
+
* update bazel test tags (#17558)
|
|
45
|
+
* separate concerns between Service, DriverFinder, and Options (#17564)
|
|
46
|
+
* fix using environment variables to set drivers (#17571)
|
|
47
|
+
* create more obvious test guard keywords as aliases (#17636)
|
|
48
|
+
|
|
49
|
+
4.44.0 (2026-05-12)
|
|
50
|
+
=========================
|
|
51
|
+
* Support CDP versions: v146, v147, v148
|
|
52
|
+
* Modern Firefox does not like both the `-v` and `--log` flags at the same time (#17412)
|
|
53
|
+
* Fix credential issue with private key (#17188)
|
|
54
|
+
|
|
55
|
+
4.43.0 (2026-04-09)
|
|
56
|
+
=========================
|
|
57
|
+
* Support CDP versions: v145, v146, v147
|
|
58
|
+
|
|
59
|
+
4.42.0 (2026-04-08)
|
|
60
|
+
=========================
|
|
61
|
+
* Support CDP versions: v144, v145, v146
|
|
62
|
+
|
|
63
|
+
4.41.0 (2026-02-19)
|
|
64
|
+
=========================
|
|
65
|
+
* Support CDP versions: v143, v144, v145
|
|
66
|
+
* remove stored atoms these get generated by build (#16971)
|
|
67
|
+
* output driver logs when SE_DEBUG is enabled (#16901)
|
|
68
|
+
* Update lint configuration and fix rubocop offenses (#17008)
|
|
69
|
+
* add missing unit tests (#17025)
|
|
70
|
+
* [grid] Add session event API for server-side event bus integration (#17015)
|
|
71
|
+
* Update dependencies (#17111)
|
|
72
|
+
|
|
73
|
+
4.40.0 (2026-01-18)
|
|
74
|
+
=========================
|
|
75
|
+
* add synchronization and error handling for socket interactions (#16487)
|
|
76
|
+
* mark low level bidi implementation as private api (#16475)
|
|
77
|
+
* ensure driver process is always stopped (#15635)
|
|
78
|
+
* create user-friendly method for enabling bidi (#14284)
|
|
79
|
+
* Add force encoding to remove warnings caused by json 3.0 (#16728)
|
|
80
|
+
* use SE_DEBUG to enable debugging (#16816)
|
|
81
|
+
* ensure the grid is properly restarted in tests when there is a problem (#16842)
|
|
82
|
+
* wait for grid to be ready when starting server (#16896)
|
|
83
|
+
* check driver status endpoint rather than socket connection (#16877)
|
|
84
|
+
* [build] update ruby gems with bazel (#16924)
|
|
85
|
+
|
|
86
|
+
4.39.0 (2025-12-06)
|
|
87
|
+
=========================
|
|
88
|
+
* Add CDP for Chrome 143 and remove 140
|
|
89
|
+
|
|
90
|
+
4.38.0 (2025-10-24)
|
|
91
|
+
=========================
|
|
92
|
+
* Add CDP for Chrome 142 and remove 139
|
|
93
|
+
* Fix BiDi Network issue by removing nil values on network requests (#16442)
|
|
94
|
+
* Remove cruft from old CI environment (#16473)
|
|
95
|
+
* [bidi] remove deprecated classes for log inspector (#16474)
|
|
96
|
+
|
|
97
|
+
4.37.0 (2025-10-16)
|
|
98
|
+
=========================
|
|
99
|
+
* Add CDP for Chrome 141 and remove 138
|
|
100
|
+
* Update Chrome/Edge args for test environment (#16376)
|
|
101
|
+
* Remove `prism` dependency (#16437)
|
|
102
|
+
* Remove `json` version constraint (#16436)
|
|
103
|
+
|
|
104
|
+
4.36.0 (2025-09-18)
|
|
105
|
+
=========================
|
|
106
|
+
* Add CDP for Chrome 140 and remove 137
|
|
107
|
+
* [BiDi] Create browser module, added user context related methods (#15371)
|
|
108
|
+
* BiDi get client windows (#16211)
|
|
109
|
+
* Fix links to exception documentation on website (#16305)
|
|
110
|
+
* Update `unhandled_prompt_behavior` capability to support hash syntax (#16289)
|
|
111
|
+
|
|
1
112
|
4.35.0 (2025-08-12)
|
|
2
113
|
=========================
|
|
3
114
|
* Add CDP for Chrome 139 and remove 136
|
data/Gemfile
CHANGED
|
@@ -5,8 +5,5 @@ Dir["#{__dir__}/*.gemspec"].each do |spec|
|
|
|
5
5
|
gemspec name: File.basename(spec, '.gemspec')
|
|
6
6
|
end
|
|
7
7
|
|
|
8
|
-
# ActiveSupport 8.x requires Ruby 3.2+ (dependency of Steep)
|
|
9
|
-
gem 'activesupport', '~> 7.0', require: false, platforms: %i[mri mingw x64_mingw]
|
|
10
|
-
gem 'curb', '~> 1.0.5', require: false, platforms: %i[mri mingw x64_mingw]
|
|
11
8
|
gem 'debug', '~> 1.7', require: false, platforms: %i[mri mingw x64_mingw]
|
|
12
|
-
gem 'steep', '~>
|
|
9
|
+
gem 'steep', '~> 2.0', require: false, platforms: %i[mri mingw x64_mingw]
|
data/LICENSE
CHANGED
|
@@ -187,7 +187,7 @@
|
|
|
187
187
|
same "printed page" as the copyright notice for easier
|
|
188
188
|
identification within third-party archives.
|
|
189
189
|
|
|
190
|
-
Copyright
|
|
190
|
+
Copyright 2026 Software Freedom Conservancy (SFC)
|
|
191
191
|
|
|
192
192
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
193
193
|
you may not use this file except in compliance with the License.
|
data/NOTICE
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Copyright 2011-
|
|
1
|
+
Copyright 2011-2026 Software Freedom Conservancy
|
|
2
2
|
Copyright 2004-2011 Selenium committers
|
data/README.md
CHANGED
|
@@ -1,34 +1,54 @@
|
|
|
1
1
|
# selenium-webdriver
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Ruby language bindings for [Selenium WebDriver](https://www.selenium.dev).
|
|
4
|
+
Selenium automates browsers for testing and web-based task automation.
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
Supports MRI >= 3.3.
|
|
6
7
|
|
|
7
|
-
|
|
8
|
+
## Installation
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
```bash
|
|
11
|
+
gem install selenium-webdriver
|
|
12
|
+
```
|
|
10
13
|
|
|
11
|
-
|
|
12
|
-
* https://www.selenium.dev/selenium/docs/api/rb/index.html
|
|
13
|
-
* https://www.selenium.dev/documentation/?tab=ruby
|
|
14
|
-
* https://github.com/SeleniumHQ/selenium/issues
|
|
14
|
+
## Quick Start
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
```ruby
|
|
17
|
+
require "selenium-webdriver"
|
|
18
|
+
|
|
19
|
+
driver = Selenium::WebDriver.for :chrome
|
|
20
|
+
begin
|
|
21
|
+
driver.get "https://www.selenium.dev"
|
|
22
|
+
puts driver.title
|
|
23
|
+
ensure
|
|
24
|
+
driver.quit
|
|
25
|
+
end
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Selenium Manager automatically handles browser driver installation — no manual driver setup required.
|
|
29
|
+
|
|
30
|
+
## Documentation
|
|
31
|
+
|
|
32
|
+
- [Getting Started](https://www.selenium.dev/documentation/webdriver/getting_started/)
|
|
33
|
+
- [Ruby API Docs](https://www.selenium.dev/selenium/docs/api/rb/index.html)
|
|
34
|
+
- [Selenium Manager](https://www.selenium.dev/documentation/selenium_manager/)
|
|
35
|
+
- [Selenium Grid](https://www.selenium.dev/documentation/grid/)
|
|
17
36
|
|
|
18
|
-
|
|
37
|
+
## Support
|
|
19
38
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
distributed with this work for additional information
|
|
23
|
-
regarding copyright ownership. The SFC licenses this file
|
|
24
|
-
to you under the Apache License, Version 2.0 (the
|
|
25
|
-
"License"); you may not use this file except in compliance
|
|
26
|
-
with the License. You may obtain a copy of the License at
|
|
39
|
+
- [Selenium Chat](https://www.selenium.dev/support/#ChatRoom)
|
|
40
|
+
- [GitHub Issues](https://github.com/SeleniumHQ/selenium/issues)
|
|
27
41
|
|
|
28
|
-
|
|
42
|
+
## Contributing
|
|
43
|
+
|
|
44
|
+
Contributions are welcome via [GitHub](https://github.com/SeleniumHQ/selenium/) pull requests.
|
|
45
|
+
See the [source code](https://github.com/SeleniumHQ/selenium/tree/trunk/rb) for this binding.
|
|
46
|
+
|
|
47
|
+
## Links
|
|
48
|
+
|
|
49
|
+
- [RubyGems](https://rubygems.org/gems/selenium-webdriver)
|
|
50
|
+
- [Documentation](https://www.selenium.dev/documentation/?tab=ruby)
|
|
51
|
+
|
|
52
|
+
## License
|
|
29
53
|
|
|
30
|
-
|
|
31
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
|
32
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
33
|
-
See the License for the specific language governing permissions and
|
|
34
|
-
limitations under the License.
|
|
54
|
+
Licensed under the [Apache License 2.0](https://www.apache.org/licenses/LICENSE-2.0).
|
data/bin/linux/selenium-manager
CHANGED
|
Binary file
|
data/bin/macos/selenium-manager
CHANGED
|
Binary file
|