Skip to content

Commit 04bb2ce

Browse files
authored
Merge branch 'trunk' into rb-remove-prism-dep
2 parents 3e3b2f1 + b308fbf commit 04bb2ce

File tree

21 files changed

+257
-180
lines changed

21 files changed

+257
-180
lines changed

.github/workflows/bazel.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,11 @@ on:
5151
required: false
5252
type: string
5353
default: ''
54+
python-version:
55+
description: Custom Python version to use
56+
required: false
57+
type: string
58+
default: ''
5459
ruby-version:
5560
description: Custom Ruby version to use
5661
required: false
@@ -101,6 +106,9 @@ jobs:
101106
if: inputs.os != 'windows'
102107
run: |
103108
sudo rm -rf "$CHROMEWEBDRIVER" "$EDGEWEBDRIVER" "$GECKOWEBDRIVER"
109+
- name: Set Python version
110+
if: inputs.python-version != ''
111+
run: echo '${{ inputs.python-version }}' > py/.python-version
104112
- name: Set Ruby version
105113
if: inputs.ruby-version != ''
106114
run: echo '${{ inputs.ruby-version }}' > rb/.ruby-version

.github/workflows/ci-python.yml

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,40 +16,38 @@ jobs:
1616
1717
docs:
1818
name: Documentation
19-
needs: build
2019
runs-on: ubuntu-latest
2120
steps:
2221
- name: Checkout source tree
2322
uses: actions/checkout@v4
24-
- name: Set up Python 3.9
23+
- name: Set up Python 3.10
2524
uses: actions/setup-python@v6
2625
with:
27-
python-version: 3.9
26+
python-version: '3.10'
2827
- name: Install dependencies
2928
run: |
3029
python -m pip install --upgrade pip
31-
pip install tox==4.30.2
30+
pip install tox
3231
- name: Generate docs
3332
run: |
3433
tox -c py/tox.ini
3534
env:
3635
TOXENV: docs
3736

38-
mypy:
39-
name: Mypy
40-
needs: build
37+
typing:
38+
name: Type Checker
4139
runs-on: ubuntu-latest
4240
steps:
4341
- name: Checkout source tree
4442
uses: actions/checkout@v4
45-
- name: Set up Python 3.9
43+
- name: Set up Python 3.10
4644
uses: actions/setup-python@v6
4745
with:
48-
python-version: 3.9
46+
python-version: '3.10'
4947
- name: Install dependencies
5048
run: |
5149
python -m pip install --upgrade pip
52-
pip install tox==4.30.2
50+
pip install tox
5351
- name: Run type checking
5452
run: |
5553
tox -c py/tox.ini || true
@@ -64,12 +62,19 @@ jobs:
6462
fail-fast: false
6563
matrix:
6664
include:
67-
- os: ubuntu
68-
- os: macos
65+
- python-version: '3.10'
66+
os: ubuntu
67+
- python-version: '3.10'
68+
os: macos
69+
- python-version: '3.14'
70+
os: ubuntu
71+
- python-version: '3.14'
72+
os: macos
6973
with:
70-
name: Unit Tests (${{ matrix.os }})
74+
name: Unit Tests (${{ matrix.python-version }}, ${{ matrix.os }})
7175
os: ${{ matrix.os }}
72-
cache-key: python-unit-test-${{ matrix.os }}
76+
python-version: ${{ matrix.python-version }}
77+
cache-key: python-unit-test-${{ matrix.python-version }}
7378
run: |
7479
bazel test //py:unit
7580

.github/workflows/update-documentation.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ jobs:
6666
with:
6767
java-version: 17
6868
distribution: 'temurin'
69-
- name: Set up Python 3.9
69+
- name: Set up Python 3.10
7070
if: ${{ inputs.language == 'py' || inputs.language == 'all' }}
7171
uses: actions/setup-python@v6
7272
with:
73-
python-version: 3.9
73+
python-version: '3.10'
7474
- name: Install dependencies
7575
if: ${{ inputs.language == 'py' || inputs.language == 'all' }}
7676
run: |

MODULE.bazel

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ bazel_dep(name = "rules_multitool", version = "1.3.0")
2424
bazel_dep(name = "rules_nodejs", version = "6.3.2")
2525
bazel_dep(name = "rules_oci", version = "1.8.0")
2626
bazel_dep(name = "rules_pkg", version = "1.0.1")
27-
bazel_dep(name = "rules_python", version = "1.5.0")
27+
bazel_dep(name = "rules_python", version = "1.6.3")
2828
bazel_dep(name = "rules_proto", version = "7.0.2")
2929
bazel_dep(name = "rules_ruby", version = "0.19.0")
3030

@@ -123,12 +123,12 @@ use_repo(oci, "chrome_standalone", "firefox_standalone", "java_image_base")
123123
python = use_extension("@rules_python//python/extensions:python.bzl", "python")
124124
python.toolchain(
125125
is_default = True,
126-
python_version = "3.9",
126+
python_version = "3.10",
127127
)
128-
python.toolchain(python_version = "3.10")
129128
python.toolchain(python_version = "3.11")
130129
python.toolchain(python_version = "3.12")
131130
python.toolchain(python_version = "3.13")
131+
python.toolchain(python_version = "3.14")
132132
use_repo(python, "pythons_hub")
133133

134134
pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
@@ -140,11 +140,11 @@ pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip")
140140
requirements_lock = "//py:requirements_lock.txt",
141141
)
142142
for version in [
143-
"3.9",
144143
"3.10",
145144
"3.11",
146145
"3.12",
147146
"3.13",
147+
"3.14",
148148
]
149149
]
150150

common/repositories.bzl

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ def pin_browsers():
1111

1212
http_archive(
1313
name = "linux_firefox",
14-
url = "https://ftp.mozilla.org/pub/firefox/releases/143.0.4/linux-x86_64/en-US/firefox-143.0.4.tar.xz",
15-
sha256 = "2cb91bd5c8755a83d65e4ef46a2ce99cfcc0b94e04673669e5e5384320384339",
14+
url = "https://ftp.mozilla.org/pub/firefox/releases/144.0/linux-x86_64/en-US/firefox-144.0.tar.xz",
15+
sha256 = "c66a48222ff67d51560240d321895c6926c9b3af345cbf688ced8517781d88d1",
1616
build_file_content = """
1717
load("@aspect_rules_js//js:defs.bzl", "js_library")
1818
package(default_visibility = ["//visibility:public"])
@@ -33,8 +33,8 @@ js_library(
3333

3434
dmg_archive(
3535
name = "mac_firefox",
36-
url = "https://ftp.mozilla.org/pub/firefox/releases/143.0.4/mac/en-US/Firefox%20143.0.4.dmg",
37-
sha256 = "332ab6fdde189325a8118a401ae445c3caf72d7a696ec3ffd96323a9c11bc8ed",
36+
url = "https://ftp.mozilla.org/pub/firefox/releases/144.0/mac/en-US/Firefox%20144.0.dmg",
37+
sha256 = "1e444b80921bc999d56c05a7decc1eaf88c0297cac5b90416299af2c77f5ecc9",
3838
build_file_content = """
3939
load("@aspect_rules_js//js:defs.bzl", "js_library")
4040
package(default_visibility = ["//visibility:public"])
@@ -50,8 +50,8 @@ js_library(
5050

5151
http_archive(
5252
name = "linux_beta_firefox",
53-
url = "https://ftp.mozilla.org/pub/firefox/releases/144.0b9/linux-x86_64/en-US/firefox-144.0b9.tar.xz",
54-
sha256 = "e0911a670d058cd5ca9cdf1929ff006aaf047cdac7cdfd66e70d752a1643df95",
53+
url = "https://ftp.mozilla.org/pub/firefox/releases/145.0b1/linux-x86_64/en-US/firefox-145.0b1.tar.xz",
54+
sha256 = "f92c1704ab741bd2d663ae3bed8178a8ad00c84b664bef6fe4fdf486d3edaa4d",
5555
build_file_content = """
5656
load("@aspect_rules_js//js:defs.bzl", "js_library")
5757
package(default_visibility = ["//visibility:public"])
@@ -72,8 +72,8 @@ js_library(
7272

7373
dmg_archive(
7474
name = "mac_beta_firefox",
75-
url = "https://ftp.mozilla.org/pub/firefox/releases/144.0b9/mac/en-US/Firefox%20144.0b9.dmg",
76-
sha256 = "187cbf68493ad11041c47759fd2da68f79174a2317c171513324aff461c30664",
75+
url = "https://ftp.mozilla.org/pub/firefox/releases/145.0b1/mac/en-US/Firefox%20145.0b1.dmg",
76+
sha256 = "be24adf3ec50c911b2b1ee5b66e0c42418d981e2c484f4d09db7e7dd29563479",
7777
build_file_content = """
7878
load("@aspect_rules_js//js:defs.bzl", "js_library")
7979
package(default_visibility = ["//visibility:public"])
@@ -199,8 +199,8 @@ js_library(
199199

200200
http_archive(
201201
name = "linux_chrome",
202-
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.76/linux64/chrome-linux64.zip",
203-
sha256 = "ed9ae9c5767aee31757ad866ce059e3ecb337802e9e6388094012f243dcbb3fa",
202+
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.78/linux64/chrome-linux64.zip",
203+
sha256 = "7cef5dccaee22992de4297bd1a2ac732f7e4b47cf4543ec92e59b43f7132438c",
204204
build_file_content = """
205205
load("@aspect_rules_js//js:defs.bzl", "js_library")
206206
package(default_visibility = ["//visibility:public"])
@@ -220,8 +220,8 @@ js_library(
220220
)
221221
http_archive(
222222
name = "mac_chrome",
223-
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.76/mac-x64/chrome-mac-x64.zip",
224-
sha256 = "e04744a286a74bdd6eff77c0f815718e6ba5d132f38374851b67acc5ba69d988",
223+
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.78/mac-x64/chrome-mac-x64.zip",
224+
sha256 = "17fb7d9a18cdc02579641baacd88cfb726dc937372f01619b04c6e3faeee976f",
225225
strip_prefix = "chrome-mac-x64",
226226
patch_cmds = [
227227
"mv 'Google Chrome for Testing.app' Chrome.app",
@@ -241,8 +241,8 @@ js_library(
241241
)
242242
http_archive(
243243
name = "linux_chromedriver",
244-
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.76/linux64/chromedriver-linux64.zip",
245-
sha256 = "a4b7b6fa36f1e74cdaa9518f0ce874e35c23c959a8ac37419261d8cd3be70085",
244+
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.78/linux64/chromedriver-linux64.zip",
245+
sha256 = "91766fb286e64a2af8bf3356c43f2c316f61c2ee0b7c8aab634df3f8437b5c48",
246246
strip_prefix = "chromedriver-linux64",
247247
build_file_content = """
248248
load("@aspect_rules_js//js:defs.bzl", "js_library")
@@ -259,8 +259,8 @@ js_library(
259259

260260
http_archive(
261261
name = "mac_chromedriver",
262-
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.76/mac-x64/chromedriver-mac-x64.zip",
263-
sha256 = "44a1cb3ffd95c9682cd7781240eda81540211749fc68790a82ed0aacf6fe2293",
262+
url = "https://storage.googleapis.com/chrome-for-testing-public/141.0.7390.78/mac-x64/chromedriver-mac-x64.zip",
263+
sha256 = "2ed6bb0d416aeb81eea785fcb8e6b94f5d721300052907968ec5b2383b75ff17",
264264
strip_prefix = "chromedriver-mac-x64",
265265
build_file_content = """
266266
load("@aspect_rules_js//js:defs.bzl", "js_library")

java/test/org/openqa/selenium/bidi/browsingcontext/BrowsingContextInspectorTest.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,6 @@ void canListenToNavigationCommittedEvent()
235235

236236
@Test
237237
@NeedsFreshDriver
238-
@NotYetImplemented(FIREFOX)
239238
void canListenToDownloadWillBeginEvent()
240239
throws ExecutionException, InterruptedException, TimeoutException {
241240
try (BrowsingContextInspector inspector = new BrowsingContextInspector(driver)) {

javascript/selenium-webdriver/test/bidi/network_test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,8 @@ suite(
9797

9898
assert.equal(beforeRequestEvent[0].request.method, 'GET')
9999
assert(beforeRequestEvent[0].request.url.includes('redirected_http_equiv.html'))
100-
assert.equal(beforeRequestEvent[2].request.method, 'GET')
101-
assert(beforeRequestEvent[2].request.url.includes('redirected.html'))
100+
assert.equal(beforeRequestEvent[1].request.method, 'GET')
101+
assert(beforeRequestEvent[1].request.url.includes('redirected.html'))
102102
})
103103

104104
it('can subscribe to response started', async function () {

multitool.lock.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,41 +4,41 @@
44
"binaries": [
55
{
66
"kind": "archive",
7-
"url": "https://github.com/astral-sh/ruff/releases/download/0.13.0/ruff-aarch64-unknown-linux-musl.tar.gz",
7+
"url": "https://github.com/astral-sh/ruff/releases/download/0.14.0/ruff-aarch64-unknown-linux-musl.tar.gz",
88
"file": "ruff-aarch64-unknown-linux-musl/ruff",
9-
"sha256": "bdee6f1376470b74b1dc5ed48eca52ec9c3e4512bd7f3204e0df100f0bed4741",
9+
"sha256": "34a25398f03e7d32a4ec406c5c841c6e183fa0a96fbdd40b7e7eec1f177b360e",
1010
"os": "linux",
1111
"cpu": "arm64"
1212
},
1313
{
1414
"kind": "archive",
15-
"url": "https://github.com/astral-sh/ruff/releases/download/0.13.0/ruff-x86_64-unknown-linux-musl.tar.gz",
15+
"url": "https://github.com/astral-sh/ruff/releases/download/0.14.0/ruff-x86_64-unknown-linux-musl.tar.gz",
1616
"file": "ruff-x86_64-unknown-linux-musl/ruff",
17-
"sha256": "b56ac90cc6987401bafdcf1b931ef044074c5b9451286afa4606a983f64f4fdd",
17+
"sha256": "ed6d1b8407a1d228dc332fb19057e86e04a6cd3c2beacdb324ad6ff2a3f9071b",
1818
"os": "linux",
1919
"cpu": "x86_64"
2020
},
2121
{
2222
"kind": "archive",
23-
"url": "https://github.com/astral-sh/ruff/releases/download/0.13.0/ruff-aarch64-apple-darwin.tar.gz",
23+
"url": "https://github.com/astral-sh/ruff/releases/download/0.14.0/ruff-aarch64-apple-darwin.tar.gz",
2424
"file": "ruff-aarch64-apple-darwin/ruff",
25-
"sha256": "0d706798534537b6655b79fd95c2955c0a0013d4c54d36679d3306825a6bd6aa",
25+
"sha256": "0b7c193d5c45eda02226720eb75239fabeca995d5a0eb3830fd2973caa3030ec",
2626
"os": "macos",
2727
"cpu": "arm64"
2828
},
2929
{
3030
"kind": "archive",
31-
"url": "https://github.com/astral-sh/ruff/releases/download/0.13.0/ruff-x86_64-apple-darwin.tar.gz",
31+
"url": "https://github.com/astral-sh/ruff/releases/download/0.14.0/ruff-x86_64-apple-darwin.tar.gz",
3232
"file": "ruff-x86_64-apple-darwin/ruff",
33-
"sha256": "ac47ad1ac90f3070c064d2f5fceef4fe609fec7c073fd29d0814ed126c492e6d",
33+
"sha256": "880ae046b435eb306cd557a7481eed6da463b85f283ba1f2c1e2ad7c139ed6c5",
3434
"os": "macos",
3535
"cpu": "x86_64"
3636
},
3737
{
3838
"kind": "archive",
39-
"url": "https://github.com/astral-sh/ruff/releases/download/0.13.0/ruff-x86_64-pc-windows-msvc.zip",
39+
"url": "https://github.com/astral-sh/ruff/releases/download/0.14.0/ruff-x86_64-pc-windows-msvc.zip",
4040
"file": "ruff-x86_64-pc-windows-msvc/ruff.exe",
41-
"sha256": "3a8d8cb96333671f78a5d209ddb4f830287e3eb2796fe01dd043b02ec1c1c7f1",
41+
"sha256": "f81f957c862f310ac0be70ae7cef2e99afb4cc09648e40c039432e11465c2c1c",
4242
"os": "windows",
4343
"cpu": "x86_64"
4444
}

py/BUILD.bazel

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -314,24 +314,24 @@ py_wheel(
314314
"Topic :: Software Development :: Testing",
315315
"Topic :: Software Development :: Libraries",
316316
"Programming Language :: Python",
317-
"Programming Language :: Python :: 3.9",
318317
"Programming Language :: Python :: 3.10",
319318
"Programming Language :: Python :: 3.11",
320319
"Programming Language :: Python :: 3.12",
321320
"Programming Language :: Python :: 3.13",
321+
"Programming Language :: Python :: 3.14",
322322
],
323323
description_file = "README.rst",
324324
distribution = "selenium",
325325
homepage = "https://www.selenium.dev",
326326
license = "Apache-2.0",
327-
python_requires = ">=3.9",
327+
python_requires = ">=3.10",
328328
python_tag = "py3",
329329
requires = [
330330
"urllib3[socks]>=2.5.0,<3.0",
331-
"trio>=0.30.0,<1.0",
331+
"trio>=0.31.0,<1.0",
332332
"trio-websocket>=0.12.2,<1.0",
333-
"certifi>=2025.6.15",
334-
"typing_extensions>=4.14.0,<5.0",
333+
"certifi>=2025.10.5",
334+
"typing_extensions>=4.15.0,<5.0",
335335
"websocket-client>=1.8.0,<2.0",
336336
],
337337
strip_path_prefixes = [

py/conftest.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,9 @@ def options(self, cls_name):
256256
opts_cls = getattr(self.supported_options, cls_name.lower())
257257
self._options = getattr(webdriver, opts_cls)()
258258

259+
if cls_name.lower() in ("chrome", "edge"):
260+
self._options.add_argument("--disable-dev-shm-usage")
261+
259262
if self.browser_path or self.browser_args:
260263
if self.driver_class == self.supported_drivers.webkitgtk:
261264
self._options.overlay_scrollbars_enabled = False

0 commit comments

Comments
 (0)