diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml
index cb4556e52d4d4..6efc3fe23f50f 100644
--- a/.github/ISSUE_TEMPLATE/bug-report.yml
+++ b/.github/ISSUE_TEMPLATE/bug-report.yml
@@ -50,7 +50,7 @@ body:
id: selenium-version
attributes:
label: What version of Selenium are you currently using?
- description: Important! The latest released version of Selenium is 4.35 and we can't fix old versions.
+ description: Important! The latest released version of Selenium is 4.36 and we can't fix old versions.
placeholder: e.g., 4.17.0
validations:
required: true
diff --git a/.github/label-commenter-config.yml b/.github/label-commenter-config.yml
index 4932a6aa025dd..890be6878ab68 100644
--- a/.github/label-commenter-config.yml
+++ b/.github/label-commenter-config.yml
@@ -117,7 +117,7 @@ labels:
This is related to code in the Support packages. The support packages contain example code that
many users find helpful, but they do not necessarily represent the best practices for using Selenium,
and the Selenium team is not prioritizing work on them right now.
- This doesn't mean that we won't ever work on them, but it is not on our roadmap as we push to release Selenium 5.
+ This doesn't mean that we won't ever work on them, but it is not on our long term roadmap.
We actively encourage people to create their own wrapper and helper code that makes sense for them.
If you have any questions, please [contact us](https://www.selenium.dev/support)
@@ -127,10 +127,12 @@ labels:
The support packages contain example code that many users find helpful, but they do not necessarily represent
the best practices for using Selenium, and the Selenium team is not currently merging changes to them.
+
+ After reviewing the change, unless it is a critical fix or a feature that is needed for Selenium
+ to work, we will likely close the PR.
We actively encourage people to add the wrapper and helper code that makes sense for them to their own frameworks.
If you have any questions, please [contact us](https://www.selenium.dev/support)
- action: close
diff --git a/.github/renovate.json b/.github/renovate.json
index 818b30e75f3f7..1926d485b79c4 100644
--- a/.github/renovate.json
+++ b/.github/renovate.json
@@ -1,3 +1,26 @@
{
- "labels": ["B-dependencies"]
+ "labels": [
+ "B-dependencies"
+ ],
+ "docker": {
+ "enabled": false
+ },
+ "packageRules": [
+ {
+ "matchDatasources": [
+ "docker"
+ ],
+ "enabled": false
+ },
+ {
+ "matchPackagePatterns": [
+ "^docker:",
+ "^gcr.io/",
+ "^registry.k8s.io/",
+ "^quay.io/",
+ "^ghcr.io/"
+ ],
+ "enabled": false
+ }
+ ]
}
diff --git a/.github/workflows/ci-python.yml b/.github/workflows/ci-python.yml
index 96bdbfefddf18..173cf2fa64613 100644
--- a/.github/workflows/ci-python.yml
+++ b/.github/workflows/ci-python.yml
@@ -21,13 +21,13 @@ jobs:
- name: Checkout source tree
uses: actions/checkout@v4
- name: Set up Python 3.9
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
- pip install tox==4.27.0
+ pip install tox==4.30.2
- name: Generate docs
run: tox -c py/tox.ini
env:
@@ -41,13 +41,13 @@ jobs:
- name: Checkout source tree
uses: actions/checkout@v4
- name: Set up Python 3.9
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
- pip install tox==4.27.0
+ pip install tox==4.30.2
- name: Run type checking
run: |
tox -c py/tox.ini || true
diff --git a/.github/workflows/ci-ruby.yml b/.github/workflows/ci-ruby.yml
index 91bfc322ab9b4..08cff26a7eda3 100644
--- a/.github/workflows/ci-ruby.yml
+++ b/.github/workflows/ci-ruby.yml
@@ -96,7 +96,7 @@ jobs:
matrix:
include:
- browser: edge
- os: windows
+ os: macos
with:
name: Remote Tests (${{ matrix.browser }}, ${{ matrix.os }})
browser: ${{ matrix.browser }}
diff --git a/.github/workflows/stage-release.yml b/.github/workflows/stage-release.yml
index ec787db2e8fc3..ec797a780abc4 100644
--- a/.github/workflows/stage-release.yml
+++ b/.github/workflows/stage-release.yml
@@ -81,3 +81,5 @@ jobs:
with:
version: ${{ needs.github-release.outputs.version }}
sha: ${{ github.sha }}
+ secrets:
+ SELENIUM_CI_TOKEN: ${{ secrets.SELENIUM_CI_TOKEN }}
diff --git a/.github/workflows/update-documentation.yml b/.github/workflows/update-documentation.yml
index fb8d579ea891f..d9d1ff83f197f 100644
--- a/.github/workflows/update-documentation.yml
+++ b/.github/workflows/update-documentation.yml
@@ -19,6 +19,11 @@ on:
- dotnet
- node
- all
+ force:
+ description: Force generation even if version is nightly, type "force" to enable
+ required: false
+ type: string
+ default: ""
workflow_call:
inputs:
@@ -32,6 +37,9 @@ on:
required: false
type: string
default: "all"
+ secrets:
+ SELENIUM_CI_TOKEN:
+ required: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -60,7 +68,7 @@ jobs:
distribution: 'temurin'
- name: Set up Python 3.9
if: ${{ inputs.language == 'py' || inputs.language == 'all' }}
- uses: actions/setup-python@v5
+ uses: actions/setup-python@v6
with:
python-version: 3.9
- name: Install dependencies
@@ -74,7 +82,7 @@ jobs:
npm install
npm install --prefix javascript/selenium-webdriver
- name: Generate Documentation for selected langauges
- run: ./go ${{ inputs.language }}:docs
+ run: ./go ${{ inputs.language }}:docs ${{ inputs.force }}
- name: Documentation Pull Request
id: cpr
uses: peter-evans/create-pull-request@v6
diff --git a/.idea/misc.xml b/.idea/misc.xml
index c052579f90a0f..43262c34163c2 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -6,4 +6,4 @@
-
\ No newline at end of file
+
diff --git a/.skipped-tests b/.skipped-tests
index 88eb59305ca8b..fba4d59fb1281 100644
--- a/.skipped-tests
+++ b/.skipped-tests
@@ -51,6 +51,4 @@
-//rb/spec/integration/selenium/webdriver:element-chrome
-//rb/spec/integration/selenium/webdriver:element-chrome-bidi
-//rb/spec/integration/selenium/webdriver:element-chrome-remote
--//rb/spec/integration/selenium/webdriver:manager-firefox-beta
--//rb/spec/integration/selenium/webdriver:manager-firefox-beta-remote
-//rb:lint
diff --git a/AUTHORS b/AUTHORS
index c2caea885e760..131093bad398f 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -78,6 +78,7 @@ Andrii Rohovets
Andy Duncan
Angie Jones
anonymous_sdet
+Anthony Richardson <26676+Osseta@users.noreply.github.com>
Anthony Sottile
Anton Usmansky
Anton Velma
@@ -318,6 +319,7 @@ GFHuang <4510984+GF-Huang@users.noreply.github.com>
ggkiokas <115367874+ggkiokas@users.noreply.github.com>
Ghjuvan Lacambre
Giorgos Tzampanakis
+Giulio Longfils
glaszig
Glib Briia
Godefroid Chapelle
@@ -367,6 +369,7 @@ Iain Dawson
Ian Lesperance
ian zhang
Iaroslav Naidon
+iDONi <30952073+Aidoni0797@users.noreply.github.com>
ifland
Ilya Kozhevnikov
Ilyas Bayraktar
@@ -681,6 +684,7 @@ Nirantak Raghav
Nitish
Noel Gordon
Noritaka Kobayashi
+NoStory-py
Nowell Strite
Nozomi Ito
no_author
@@ -703,6 +707,7 @@ Outsider
Paladin Wang <49390614+eversoutheast@users.noreply.github.com>
Pallavi
Palmer Bandy <37938675+palmermbandy@users.noreply.github.com>
+Paresh Gupta <123556346+Paresh-0007@users.noreply.github.com>
Pat Tullmann
Patrice Jaton
Patrick Beart
@@ -900,6 +905,7 @@ Ulf Adams
Ulrich Buchgraber
User253489
V24 <55334829+umarfarouk98@users.noreply.github.com>
+Vaibhav Gupta
Valery Yatsynovich
Varun Menon
varunsurapaneni <67070327+varunsurapaneni@users.noreply.github.com>
@@ -908,6 +914,8 @@ vedanthvdev <61700595+vedanthvdev@users.noreply.github.com>
vergiliu
vflame <0x484x0@gmail.com>
Victor Tang
+Victoria Ivanova
+Victoria Ivanova
Viet Nguyen Duc
Vijay Singh
Vijendarn Selvarajah <11275608+vijay44@users.noreply.github.com>
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 3905abcb1d9e9..822c21f4f1c12 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -14,12 +14,10 @@ the defect. If the issue can't be reproduced it will be closed.
Please provide [concise reproducible test cases](http://sscce.org/)
and describe what results you are seeing and what results you expect.
-Issues shouldn't be used for support. Please address questions to the
-[`selenium-users@` mailing list](https://groups.google.com/forum/#!forum/selenium-users).
+Issues shouldn't be used for support. To raise a bug, please go to the
+[Issue tracker](https://github.com/SeleniumHQ/selenium/issues).
Discussion of high level project ideas or non-technical topics should
-move to the
-[`selenium-developers@` mailing list](https://groups.google.com/forum/#!forum/selenium-developers)
-instead.
+move to the Selenium [Slack channel](https://inviter.co/seleniumhq).
We also need help with triaging
[issues that needs investigation](https://github.com/SeleniumHQ/selenium/labels/I-needs%20investigation).
@@ -34,7 +32,6 @@ with details describing what feature(s) you'd like added or changed.
If you'd like a hand at trying to implement the feature yourself, please refer to the [Code Contributions](#code-contributions) section of the document.
-
## Documentation
Selenium is a big software project and documentation is key to
@@ -57,7 +54,7 @@ significant and valuable contributions over time are made _Committers_
and given commit-access to the project.
If you're looking for easy bugs, have a look at
-[issues labelled E-easy](https://github.com/SeleniumHQ/selenium/issues?q=is%3Aopen+is%3Aissue+label%3AE-easy)
+[issues labelled: `good first issue`](https://github.com/SeleniumHQ/selenium/issues?q=is%3Aopen%20is%3Aissue%20label%3A%22good%20first%20issue%22)
on Github.
This document will guide you through the contribution process.
diff --git a/MODULE.bazel b/MODULE.bazel
index f73c55bc41d7b..dd60b47797859 100644
--- a/MODULE.bazel
+++ b/MODULE.bazel
@@ -15,11 +15,11 @@ bazel_dep(name = "platforms", version = "0.0.11")
bazel_dep(name = "protobuf", version = "29.2", dev_dependency = True, repo_name = "com_google_protobuf")
# Required for rules_rust to import the crates properly
-bazel_dep(name = "rules_cc", version = "0.1.1", dev_dependency = True)
+bazel_dep(name = "rules_cc", version = "0.2.0", dev_dependency = True)
bazel_dep(name = "rules_dotnet", version = "0.17.5")
bazel_dep(name = "rules_java", version = "8.7.1")
-bazel_dep(name = "rules_jvm_external", version = "6.6")
+bazel_dep(name = "rules_jvm_external", version = "6.8")
bazel_dep(name = "rules_multitool", version = "1.3.0")
bazel_dep(name = "rules_nodejs", version = "6.3.2")
bazel_dep(name = "rules_oci", version = "1.8.0")
@@ -29,12 +29,10 @@ bazel_dep(name = "rules_proto", version = "7.0.2")
bazel_dep(name = "rules_ruby", version = "0.19.0")
# Until `rules_jvm_external` 6.8 ships
-git_override(
+single_version_override(
module_name = "rules_jvm_external",
- commit = "aca619b117c1fe306ffdd20c5f47cc4dbd5effed",
patch_strip = 1,
patches = ["//java:rules_jvm_external_javadoc.patch"],
- remote = "https://github.com/bazel-contrib/rules_jvm_external.git",
)
multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool")
@@ -176,20 +174,22 @@ maven.install(
artifacts = [
"com.beust:jcommander:1.82",
"com.github.javaparser:javaparser-core:3.27.0",
- "com.github.spotbugs:spotbugs:4.9.4",
+ "com.github.spotbugs:spotbugs:4.9.6",
"com.github.stephenc.jcip:jcip-annotations:1.0-1",
"com.google.code.findbugs:jsr305:3.0.2",
- "com.google.code.gson:gson:2.13.1",
- "com.google.guava:guava:33.4.8-jre",
+ "com.google.code.gson:gson:2.13.2",
+ "com.google.guava:guava:33.5.0-jre",
"com.github.ben-manes.caffeine:caffeine:3.2.2",
"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:1.28.0",
+ "com.google.protobuf:protobuf-java:4.32.1",
+ "com.google.protobuf.nano:protobuf-javanano:3.1.0",
"com.graphql-java:graphql-java:24.1",
"dev.failsafe:failsafe:3.3.2",
- "io.grpc:grpc-context:1.74.0",
- "io.lettuce:lettuce-core:6.8.0.RELEASE",
+ "io.grpc:grpc-context:1.75.0",
+ "io.lettuce:lettuce-core:6.8.1.RELEASE",
"io.netty:netty-buffer",
"io.netty:netty-codec-http",
"io.netty:netty-codec-http2",
@@ -207,14 +207,15 @@ maven.install(
"io.opentelemetry:opentelemetry-sdk-testing",
"io.opentelemetry:opentelemetry-sdk-trace",
"it.ozimov:embedded-redis:0.7.3",
- "net.bytebuddy:byte-buddy:1.17.6",
- "org.htmlunit:htmlunit-core-js:4.14.0",
+ "net.bytebuddy:byte-buddy:1.17.7",
+ "org.htmlunit:htmlunit-core-js:4.16.0",
"org.apache.commons:commons-exec:1.5.0",
"org.apache.logging.log4j:log4j-core:2.25.1",
"org.assertj:assertj-core:3.27.4",
- "org.bouncycastle:bcpkix-jdk18on:1.81",
+ "org.bouncycastle:bcpkix-jdk18on:1.82",
"org.eclipse.mylyn.github:org.eclipse.egit.github.core:2.1.5",
"org.hsqldb:hsqldb:2.7.4",
+ "org.jboss.marshalling:jboss-marshalling:2.2.3.Final",
"org.jspecify:jspecify:1.0.0",
"org.junit.jupiter:junit-jupiter-api",
"org.junit.jupiter:junit-jupiter-engine",
@@ -223,8 +224,8 @@ maven.install(
"org.junit.platform:junit-platform-reporting",
"org.junit.platform:junit-platform-commons",
"org.junit.platform:junit-platform-engine",
- "org.mockito:mockito-core:5.18.0",
- "org.redisson:redisson:3.50.0",
+ "org.mockito:mockito-core:5.19.0",
+ "org.redisson:redisson:3.51.0",
"org.slf4j:slf4j-api:2.0.17",
"org.slf4j:slf4j-jdk14:2.0.17",
"org.tomlj:tomlj:1.1.1",
@@ -233,8 +234,8 @@ maven.install(
"uk.org.webcompere:system-stubs-core:2.1.8",
],
boms = [
- "io.opentelemetry:opentelemetry-bom:1.53.0",
- "io.netty:netty-bom:4.1.121.Final",
+ "io.opentelemetry:opentelemetry-bom:1.54.0",
+ "io.netty:netty-bom:4.2.6.Final",
"org.junit:junit-bom:5.13.4",
],
excluded_artifacts = [
@@ -272,23 +273,25 @@ ruby.bundle_fetch(
"//:rb/selenium-webdriver.gemspec",
],
gem_checksums = {
- "activesupport-7.2.2.1": "842bcbf8a92977f80fb4750661a237cf5dd4fdd442066b3c35e88afb488647f5",
+ "activesupport-7.2.2.2": "c54e84bb3d9027f1f372fb8f68203538fcfe0d5ff42801774c03974daa15bef0",
"addressable-2.8.7": "462986537cf3735ab5f3c0f557f14155d778f4b43ea4f485a9deb9c8f7c58232",
"ast-2.4.3": "954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383",
- "base64-0.2.0": "0f25e9b21a02a0cc0cea8ef92b2041035d39350946e8789c562b2d1a3da01507",
- "benchmark-0.4.0": "0f12f8c495545e3710c3e4f0480f63f06b4c842cc94cec7f33a956f5180e874a",
- "bigdecimal-3.1.9": "2ffc742031521ad69c2dfc815a98e426a230a3d22aeac1995826a75dabfad8cc",
- "bigdecimal-3.1.9-java": "dd9b8f7c870664cd9538a1325ce385ba57a6627969177258c4f0e661a7be4456",
+ "base64-0.3.0": "27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b",
+ "benchmark-0.4.1": "d4ef40037bba27f03b28013e219b950b82bace296549ec15a78016552f8d2cce",
+ "bigdecimal-3.2.3": "ffd11d1ac67a0d3b2f44aec0a6487210b3f813f363dd11f1fcccf5ba00da4e1b",
+ "bigdecimal-3.2.3-java": "7293e87efd050feac875bff1c62335dd5e8ce65d86ad22d7a4a3b5ed4f0ab48d",
"concurrent-ruby-1.3.5": "813b3e37aca6df2a21a3b9f1d497f8cbab24a2b94cab325bffe65ee0f6cbebc6",
- "connection_pool-2.5.3": "cfd74a82b9b094d1ce30c4f1a346da23ee19dc8a062a16a85f58eab1ced4305b",
+ "connection_pool-2.5.4": "e9e1922327416091f3f6542f5f4446c2a20745276b9aa796dd0bb2fd0ea1e70a",
"crack-1.0.0": "c83aefdb428cdc7b66c7f287e488c796f055c0839e6e545fec2c7047743c4a49",
- "csv-3.3.4": "e96ecd5a8c3494aa5b596282249daba5c6033203c199248e6146e36d2a78d8cd",
+ "csv-3.3.5": "6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f",
"curb-1.0.9": "07e5b74a4836103ce186827528f76a22d3991a9b7c45f5c10ee18ee7b03feb0d",
"date-3.4.1": "bf268e14ef7158009bfeaec40b5fa3c7271906e88b196d958a89d4b408abe64f",
"date-3.4.1-java": "74740d914c65a922a15657c25ff0e203c16f1d0f7aa910a9ebed712afe9819c4",
- "debug-1.10.0": "11e28ca74875979e612444104f3972bd5ffb9e79179907d7ad46dba44bd2e7a4",
- "diff-lcs-1.6.1": "12a5a83f3e37a8e2f4427268e305914d5f1879f22b4e73bb1a09f76a3dd86cd4",
- "drb-2.2.1": "e9d472bf785f558b96b25358bae115646da0dbfd45107ad858b0bc0d935cb340",
+ "debug-1.11.0": "1425db64cfa0130c952684e3dc974985be201dd62899bf4bbe3f8b5d6cf1aef2",
+ "diff-lcs-1.6.2": "9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962",
+ "drb-2.2.3": "0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373",
+ "erb-5.0.2": "d30f258143d4300fb4ecf430042ac12970c9bb4b33c974a545b8f58c1ec26c0f",
+ "erb-5.0.2-java": "d000d963afebc166ec7f2499b2b3198d526790cf962c37514d7a85843a60423c",
"ffi-1.17.2": "297235842e5947cc3036ebe64077584bff583cd7a4e94e9a02fdec399ef46da6",
"ffi-1.17.2-java": "94c8516d7c97b21915497b994e41f69e7e8e21d5fc085c498b68e52044e191ec",
"ffi-1.17.2-x64-mingw-ucrt": "15d2da54ee578657a333a6059ed16eaba1cbd794ceecd15944825b65c8381ac0",
@@ -296,57 +299,57 @@ ruby.bundle_fetch(
"ffi-1.17.2-x86_64-linux-gnu": "05d2026fc9dbb7cfd21a5934559f16293815b7ce0314846fee2ac8efbdb823ea",
"fileutils-1.7.3": "57271e854b694a87755d76f836f5c57b2c9538ebbaf4b2154bb66addf15eb5da",
"git-1.19.1": "b0a422d9f6517353c48a330d6114de4db9e0c82dbe7202964a1d9f1fbc827d70",
- "hashdiff-1.1.2": "2c30eeded6ed3dce8401d2b5b99e6963fe5f14ed85e60dd9e33c545a44b71a77",
+ "hashdiff-1.2.1": "9c079dbc513dfc8833ab59c0c2d8f230fa28499cc5efb4b8dd276cf931457cd1",
"i18n-1.14.7": "ceba573f8138ff2c0915427f1fc5bdf4aa3ab8ae88c8ce255eb3ecf0a11a5d0f",
- "io-console-0.8.0": "cd6a9facbc69871d69b2cb8b926fc6ea7ef06f06e505e81a64f14a470fddefa2",
- "io-console-0.8.0-java": "3cc6fd5c66e587145c1fdf8dc40c2e3d851e90722a5d0cc3f38da352f06fe1bd",
+ "io-console-0.8.1": "1e15440a6b2f67b6ea496df7c474ed62c860ad11237f29b3bd187f054b925fcb",
+ "io-console-0.8.1-java": "9457a61a7b23aab11e9e9ff67f71ae81d7f1a6a2e582bb5d65d754cbb546c06f",
"irb-1.15.2": "222f32952e278da34b58ffe45e8634bf4afc2dc7aa9da23fed67e581aa50fdba",
"jar-dependencies-0.5.5": "2972b9fcba4b014e6446a84b5c09674a3e8648b95b71768e729f0e8e40568059",
- "json-2.11.3": "9a10f658a2de67c0eb837eb795dd48132ce797c403e52b5ebef87dcdc7f9ccc1",
- "json-2.11.3-java": "cfe8db24e49073c5bcd93699d106a1c1c9e5bc301fcc0de05965e72fad999a34",
- "language_server-protocol-3.17.0.4": "c484626478664fd13482d8180947c50a8590484b1258b99b7aedb3b69df89669",
+ "json-2.13.2": "02e1f118d434c6b230a64ffa5c8dee07e3ec96244335c392eaed39e1199dbb68",
+ "json-2.13.2-java": "2e1292c45598a3642216820a821cba89c623f99387b8cb90adb345878f4e5c7d",
+ "language_server-protocol-3.17.0.5": "fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc",
"lint_roller-1.1.0": "2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87",
"listen-3.9.0": "db9e4424e0e5834480385197c139cb6b0ae0ef28cc13310cfd1ca78377d59c67",
"logger-1.7.0": "196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203",
"minitest-5.25.5": "391b6c6cb43a4802bfb7c93af1ebe2ac66a210293f4a3fb7db36f2fc7dc2c756",
"parallel-1.27.0": "4ac151e1806b755fb4e2dc2332cbf0e54f2e24ba821ff2d3dcf86bf6dc4ae130",
- "parser-3.3.8.0": "2476364142b307fa5a1b1ece44f260728be23858a9c71078e956131a75453c45",
+ "parser-3.3.9.0": "94d6929354b1a6e3e1f89d79d4d302cc8f5aa814431a6c9c7e0623335d7687f2",
"pp-0.6.2": "947ec3120c6f92195f8ee8aa25a7b2c5297bb106d83b41baa02983686577b6ff",
"prettyprint-0.2.0": "2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193",
"prism-1.4.0": "dc0e3e00e93160213dc2a65519d9002a4a1e7b962db57d444cf1a71565bb703e",
- "psych-5.2.4": "f2d9810f7f383a6b0fbc705202851e1a55b236bcb8e168ab5dfa5741842ec7c5",
- "psych-5.2.4-java": "a3ae584e85e11fd069f17a563ef18f204d3df0fde0c093d35ae494fd64164664",
+ "psych-5.2.6": "814328aa5dcb6d604d32126a20bc1cbcf05521a5b49dbb1a8b30a07e580f316e",
+ "psych-5.2.6-java": "0a5f65d47ed1ae3475d062b254e7b2035a259eac578038016d62172dd4cfbd91",
"public_suffix-6.0.2": "bfa7cd5108066f8c9602e0d6d4114999a5df5839a63149d3e8b0f9c1d3558394",
"racc-1.8.1": "4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f",
"racc-1.8.1-java": "54f2e6d1e1b91c154013277d986f52a90e5ececbe91465d29172e49342732b98",
- "rack-2.2.13": "ccee101719696a5da12ee9da6fb3b1d20cb329939e089e0e458be6e93667f0fb",
+ "rack-2.2.17": "5fe02a1ca80d6fb2271dba00985ee2962d6f5620b6f46dfed89f5301ac4699dd",
"rainbow-3.1.1": "039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a",
- "rake-13.2.1": "46cb38dae65d7d74b6020a4ac9d48afed8eb8149c040eccf0523bec91907059d",
+ "rake-13.3.0": "96f5092d786ff412c62fde76f793cc0541bd84d2eb579caa529aa8a059934493",
"rb-fsevent-0.11.2": "43900b972e7301d6570f64b850a5aa67833ee7d87b458ee92805d56b7318aefe",
"rb-inotify-0.11.1": "a0a700441239b0ff18eb65e3866236cd78613d6b9f78fea1f9ac47a85e47be6e",
- "rbs-3.9.2": "873b5d01a11f3dc15a7cc3bd66d9d50c3d05fad4fbb73b47704eb96f0ba6faf2",
- "rchardet-1.9.0": "26889486cdd83b378652baf7603f71d93e431bb11bc237b4cd8c65151af4a590",
- "rdoc-6.13.1": "62a0dac99493c94e8eb7a3fb44e55aefcb4cecb119f7991f25bddc5ed8d472f7",
- "regexp_parser-2.10.0": "cb6f0ddde88772cd64bff1dbbf68df66d376043fe2e66a9ef77fcb1b0c548c61",
- "reline-0.6.1": "1afcc9d7cb1029cdbe780d72f2f09251ce46d3780050f3ec39c3ccc6b60675fb",
- "rexml-3.4.1": "c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca",
- "rspec-3.13.0": "d490914ac1d5a5a64a0e1400c1d54ddd2a501324d703b8cfe83f458337bab993",
- "rspec-core-3.13.3": "25136507f4f9cf2e8977a2851e64e438b4331646054e345998714108745cdfe4",
- "rspec-expectations-3.13.4": "4e43459765dfee900b25aa1361e106ab0799895ede65fc57872069feb559ecd8",
- "rspec-mocks-3.13.3": "be08abadfe28e932d03b8e70215cd5972bd7693e0f1a45c7479b11e9a773c3c2",
- "rspec-support-3.13.3": "2a61e393f6e18b7228726e0c6869c5d5a1419d37206116c4d917d145276b3f43",
- "rubocop-1.75.4": "e0656af44d0811bb40f6d0bd4ed6c8d80c0f05f3444f0e8f0839833dd46d18c6",
- "rubocop-ast-1.44.1": "e3cc04203b2ef04f6d6cf5f85fe6d643f442b18cc3b23e3ada0ce5b6521b8e92",
- "rubocop-performance-1.25.0": "6f7d03568a770054117a78d0a8e191cefeffb703b382871ca7743831b1a52ec1",
+ "rbs-3.9.5": "eabaaf60aee84e38cbf94839c6e1b9cd145c7295fc3cc0e88c92e4069b1119b0",
+ "rchardet-1.10.0": "d5ea2ed61a720a220f1914778208e718a0c7ed2a484b6d357ba695aa7001390f",
+ "rdoc-6.14.2": "9fdd44df130f856ae70cc9a264dfd659b9b40de369b16581f4ab746e42439226",
+ "regexp_parser-2.11.3": "ca13f381a173b7a93450e53459075c9b76a10433caadcb2f1180f2c741fc55a4",
+ "reline-0.6.2": "1dad26a6008872d59c8e05244b119347c9f2ddaf4a53dce97856cd5f30a02846",
+ "rexml-3.4.4": "19e0a2c3425dfbf2d4fc1189747bdb2f849b6c5e74180401b15734bc97b5d142",
+ "rspec-3.13.1": "b9f9a58fa915b8d94a1d6b3195fe6dd28c4c34836a6097015142c4a9ace72140",
+ "rspec-core-3.13.5": "ab3f682897c6131c67f9a17cfee5022a597f283aebe654d329a565f9937a4fa3",
+ "rspec-expectations-3.13.5": "33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836",
+ "rspec-mocks-3.13.5": "e4338a6f285ada9fe56f5893f5457783af8194f5d08884d17a87321d5195ea81",
+ "rspec-support-3.13.6": "2e8de3702427eab064c9352fe74488cc12a1bfae887ad8b91cba480ec9f8afb2",
+ "rubocop-1.81.1": "352a9a6f314a4312f6c305f1f72bc466254d221c95445cd49e1b65d1f9411635",
+ "rubocop-ast-1.47.1": "592682017855408b046a8190689490763aecea175238232b1b526826349d01ae",
+ "rubocop-performance-1.26.0": "7bb0d9d9fb2ea122bf6f9a596dd7cf9dc93ab4950923d26c4ae4f328cef71ca9",
"rubocop-rake-0.7.1": "3797f2b6810c3e9df7376c26d5f44f3475eda59eb1adc38e6f62ecf027cbae4d",
- "rubocop-rspec-3.6.0": "c0e4205871776727e54dee9cc91af5fd74578001551ba40e1fe1a1ab4b404479",
+ "rubocop-rspec-3.7.0": "b7b214da112034db9c6d00f2d811a354847e870f7b6ed2482b29649c3d42058f",
"ruby-progressbar-1.13.0": "80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33",
- "rubyzip-2.4.1": "8577c88edc1fde8935eb91064c5cb1aef9ad5494b940cf19c775ee833e075615",
+ "rubyzip-3.1.1": "54c97dd156437018c6914d76df52d10560a3b7784de36b1551e4a0709f958273",
"securerandom-0.4.1": "cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1",
"steep-1.5.3": "7c6302a4d5932d0a46176ebc79766e52b853c223a85525aa2f8911e345123b85",
"stringio-3.1.7": "5b78b7cb242a315fb4fca61a8255d62ec438f58da2b90be66048546ade4507fa",
- "strscan-3.1.4": "8e130a503aa6c79352c6ac02a9819507c8b8720c174ce8335e3eb2c8cc2ae042",
- "strscan-3.1.4-java": "5551e01d215ba8ac7dadb6dab46b9fb4c33303ba63eaf3e1b0496c078b8d3fb8",
+ "strscan-3.1.5": "f8413b90ea9395a69609a4414a8c88551bcda64337e234272c24fcd4c83e5947",
+ "strscan-3.1.5-java": "84805eaad025f64854376608a6dbd49d4a22740ec3f21ba880434a6641621f1e",
"terminal-table-3.0.2": "f951b6af5f3e00203fb290a669e0a85c5dd5b051b3b023392ccfd67ba5abae91",
"tzinfo-2.0.6": "8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b",
"unicode-display_width-2.6.0": "12279874bba6d5e4d2728cef814b19197dbb10d7a7837a869bab65da943b7f5a",
diff --git a/Rakefile b/Rakefile
index 833ec94917f68..73936caa4ff04 100644
--- a/Rakefile
+++ b/Rakefile
@@ -96,7 +96,7 @@ task '//java/test/org/openqa/selenium/environment/webserver:webserver:uber' => [
JAVA_RELEASE_TARGETS = %w[
//java/src/org/openqa/selenium/chrome:chrome.publish
//java/src/org/openqa/selenium/chromium:chromium.publish
- //java/src/org/openqa/selenium/devtools/v137:v137.publish
+ //java/src/org/openqa/selenium/devtools/v140:v140.publish
//java/src/org/openqa/selenium/devtools/v138:v138.publish
//java/src/org/openqa/selenium/devtools/v139:v139.publish
//java/src/org/openqa/selenium/edge:edge.publish
@@ -1118,12 +1118,13 @@ namespace :all do
end
desc 'Update all API Documentation'
- task :docs do
- Rake::Task['java:docs'].invoke('skip_update')
- Rake::Task['py:docs'].invoke('skip_update')
- Rake::Task['rb:docs'].invoke('skip_update')
- Rake::Task['dotnet:docs'].invoke('skip_update')
- Rake::Task['node:docs'].invoke('skip_update')
+ task :docs do |_task, arguments|
+ args = arguments.to_a
+ Rake::Task['java:docs'].invoke(*(args + ['skip_update']))
+ Rake::Task['py:docs'].invoke(*(args + ['skip_update']))
+ Rake::Task['rb:docs'].invoke(*(args + ['skip_update']))
+ Rake::Task['dotnet:docs'].invoke(*(args + ['skip_update']))
+ Rake::Task['node:docs'].invoke(*(args + ['skip_update']))
update_gh_pages
end
diff --git a/WORKSPACE b/WORKSPACE
index e82b52f11fa56..151d0438675ff 100644
--- a/WORKSPACE
+++ b/WORKSPACE
@@ -26,15 +26,15 @@ rules_closure_toolchains()
http_archive(
name = "rules_rust",
- integrity = "sha256-eEXiHXSGUH6qD1bdI5KXZ/B04m0wIUeoyM7pmujzbbQ=",
- urls = ["https://github.com/bazelbuild/rules_rust/releases/download/0.55.5/rules_rust-0.55.5.tar.gz"],
+ integrity = "sha256-YrnH/f8jCpEqGAU+keNqauc+QSde9egtcFXqPtJuee4=",
+ urls = ["https://github.com/bazelbuild/rules_rust/releases/download/0.65.0/rules_rust-0.65.0.tar.gz"],
)
load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains")
rules_rust_dependencies()
-rust_register_toolchains()
+rust_register_toolchains(versions = ["1.89.0"])
load("@rules_rust//crate_universe:defs.bzl", "crates_repository")
@@ -48,3 +48,7 @@ crates_repository(
load("@crates//:defs.bzl", "crate_repositories")
crate_repositories()
+
+load("@rules_rust//cargo:deps.bzl", "cargo_dependencies")
+
+cargo_dependencies()
diff --git a/common/devtools/chromium/v137/BUILD.bazel b/common/devtools/chromium/v140/BUILD.bazel
similarity index 100%
rename from common/devtools/chromium/v137/BUILD.bazel
rename to common/devtools/chromium/v140/BUILD.bazel
diff --git a/common/devtools/chromium/v137/browser_protocol.pdl b/common/devtools/chromium/v140/browser_protocol.pdl
similarity index 97%
rename from common/devtools/chromium/v137/browser_protocol.pdl
rename to common/devtools/chromium/v140/browser_protocol.pdl
index db00f32e16afa..64b9c19d9a2fe 100644
--- a/common/devtools/chromium/v137/browser_protocol.pdl
+++ b/common/devtools/chromium/v140/browser_protocol.pdl
@@ -825,6 +825,13 @@ experimental domain Audits
ValidationFailedSignatureMismatch
ValidationFailedIntegrityMismatch
+ type UnencodedDigestError extends string
+ enum
+ MalformedDictionary
+ UnknownAlgorithm
+ IncorrectDigestType
+ IncorrectDigestLength
+
# Details for issues around "Attribution Reporting API" usage.
# Explainer: https://github.com/WICG/attribution-reporting-api
type AttributionReportingIssueDetails extends object
@@ -863,6 +870,11 @@ experimental domain Audits
array of string integrityAssertions
AffectedRequest request
+ type UnencodedDigestIssueDetails extends object
+ properties
+ UnencodedDigestError error
+ AffectedRequest request
+
type GenericIssueErrorType extends string
enum
FormLabelForNameError
@@ -1031,19 +1043,20 @@ experimental domain Audits
# Additional information about the Partitioning Blob URL issue.
PartitioningBlobURLInfo partitioningBlobURLInfo
- type SelectElementAccessibilityIssueReason extends string
+ type ElementAccessibilityIssueReason extends string
enum
DisallowedSelectChild
DisallowedOptGroupChild
NonPhrasingContentOptionChild
InteractiveContentOptionChild
InteractiveContentLegendChild
+ InteractiveContentSummaryDescendant
- # This issue warns about errors in the select element content model.
- type SelectElementAccessibilityIssueDetails extends object
+ # This issue warns about errors in the select or summary element content model.
+ type ElementAccessibilityIssueDetails extends object
properties
DOM.BackendNodeId nodeId
- SelectElementAccessibilityIssueReason selectElementAccessibilityIssueReason
+ ElementAccessibilityIssueReason elementAccessibilityIssueReason
boolean hasDisallowedAttributes
type StyleSheetLoadingIssueReason extends string
@@ -1079,6 +1092,19 @@ experimental domain Audits
# The value of the property rule property that failed to parse
optional string propertyValue
+ type UserReidentificationIssueType extends string
+ enum
+ BlockedFrameNavigation
+ BlockedSubresource
+
+ # This issue warns about uses of APIs that may be considered misuse to
+ # re-identify users.
+ type UserReidentificationIssueDetails extends object
+ properties
+ UserReidentificationIssueType type
+ # Applies to BlockedFrameNavigation and BlockedSubresource issue types.
+ optional AffectedRequest request
+
# A unique identifier for the type of issue. Each type may use one of the
# optional fields in InspectorIssueDetails to convey more specific
# information about the kind of issue.
@@ -1107,8 +1133,10 @@ experimental domain Audits
FederatedAuthUserInfoRequestIssue
PropertyRuleIssue
SharedDictionaryIssue
- SelectElementAccessibilityIssue
+ ElementAccessibilityIssue
SRIMessageSignatureIssue
+ UnencodedDigestIssue
+ UserReidentificationIssue
# This struct holds a list of optional fields with additional information
# specific to the kind of issue. When adding a new issue code, please also
@@ -1137,8 +1165,10 @@ experimental domain Audits
optional PropertyRuleIssueDetails propertyRuleIssueDetails
optional FederatedAuthUserInfoRequestIssueDetails federatedAuthUserInfoRequestIssueDetails
optional SharedDictionaryIssueDetails sharedDictionaryIssueDetails
- optional SelectElementAccessibilityIssueDetails selectElementAccessibilityIssueDetails
+ optional ElementAccessibilityIssueDetails elementAccessibilityIssueDetails
optional SRIMessageSignatureIssueDetails sriMessageSignatureIssueDetails
+ optional UnencodedDigestIssueDetails unencodedDigestIssueDetails
+ optional UserReidentificationIssueDetails userReidentificationIssueDetails
# A unique id for a DevTools inspector issue. Allows other entities (e.g.
# exceptions, CDP message, console messages, etc.) to reference an issue.
@@ -1619,6 +1649,10 @@ domain Browser
inProgress
completed
canceled
+ # If download is "completed", provides the path of the downloaded file.
+ # Depending on the platform, it is not guaranteed to be set, nor the file
+ # is guaranteed to exist.
+ experimental optional string filePath
# Close browser gracefully.
command close
@@ -1728,6 +1762,18 @@ domain Browser
# with 'left', 'top', 'width' or 'height'. Leaves unspecified fields unchanged.
Bounds bounds
+ # Set size of the browser contents resizing browser window as necessary.
+ experimental command setContentsSize
+ parameters
+ # Browser window id.
+ WindowID windowId
+ # The window contents width in DIP. Assumes current width if omitted.
+ # Must be specified if 'height' is omitted.
+ optional integer width
+ # The window contents height in DIP. Assumes current height if omitted.
+ # Must be specified if 'width' is omitted.
+ optional integer height
+
# Set dock tile details, platform-specific.
experimental command setDockTile
parameters
@@ -2102,6 +2148,8 @@ experimental domain CSS
optional DOM.LogicalAxes logicalAxes
# true if the query contains scroll-state() queries.
optional boolean queriesScrollState
+ # true if the query contains anchored() queries.
+ optional boolean queriesAnchored
# CSS Supports at-rule descriptor.
experimental type CSSSupports extends object
@@ -2527,6 +2575,11 @@ experimental domain CSS
# A list of CSS at-function rules referenced by styles of this node.
experimental optional array of CSSFunctionRule cssFunctionRules
+ # Returns the values of the default UA-defined environment variables used in env()
+ experimental command getEnvironmentVariables
+ returns
+ object environmentVariables
+
# Returns all media queries parsed by the rendering engine.
command getMediaQueries
returns
@@ -2987,12 +3040,14 @@ domain DOM
view-transition
view-transition-group
view-transition-image-pair
+ view-transition-group-children
view-transition-old
view-transition-new
placeholder
file-selector-button
details-content
picker
+ permission-icon
# Shadow root type.
type ShadowRootType extends string
@@ -3364,6 +3419,8 @@ domain DOM
optional BackendNodeId backendNodeId
# JavaScript object id of the node wrapper.
optional Runtime.RemoteObjectId objectId
+ # Include all shadow roots. Equals to false if not specified.
+ experimental optional boolean includeShadowDOM
returns
# Outer HTML markup.
string outerHTML
@@ -3496,8 +3553,12 @@ domain DOM
# Get the popover target for a given element. In this case, this given
# element can only be an HTMLFormControlElement (,