Skip to content

Commit a89b5e0

Browse files
authored
Merge branch 'trunk' into patch-3
2 parents b7faabc + 9f7a22b commit a89b5e0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

51 files changed

+553
-223
lines changed

.github/workflows/deploy.yml

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@ on:
44
push:
55
branches:
66
- trunk
7+
workflow_dispatch:
78

89
jobs:
910
deploy:
10-
if: contains(toJson(github.event.commits), '[deploy site]') == true
11+
if: contains(toJson(github.event.commits), '[deploy site]') == true || github.event_name == 'workflow_dispatch'
1112
runs-on: ubuntu-24.04
1213
steps:
1314
- name: Checkout repo

.github/workflows/dotnet-examples.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ jobs:
8585
distribution: 'temurin'
8686
java-version: 11
8787
- name: Run tests
88-
uses: nick-fields/[email protected].0
88+
uses: nick-fields/[email protected].2
8989
with:
9090
timeout_minutes: 20
9191
max_attempts: 3

.github/workflows/java-examples.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ jobs:
5858
run: keytool -import -noprompt -trustcacerts -alias SeleniumHQ -file examples/java/src/test/resources/tls.crt -keystore ${{ steps.java.outputs.path }}/lib/security/cacerts -storepass changeit
5959
- name: Run Tests Stable
6060
if: matrix.release == 'stable'
61-
uses: nick-invision/[email protected].0
61+
uses: nick-invision/[email protected].2
6262
with:
6363
timeout_minutes: 40
6464
max_attempts: 3
@@ -67,7 +67,7 @@ jobs:
6767
mvn -B test -D"jdk.internal.httpclient.disableHostnameVerification=true"
6868
- name: Run Tests Nightly Linux/macOS
6969
if: matrix.release == 'nightly' && matrix.os != 'windows'
70-
uses: nick-invision/[email protected].0
70+
uses: nick-invision/[email protected].2
7171
with:
7272
timeout_minutes: 40
7373
max_attempts: 3
@@ -81,7 +81,7 @@ jobs:
8181
8282
- name: Run Tests Nightly Windows
8383
if: matrix.release == 'nightly' && matrix.os == 'windows'
84-
uses: nick-invision/[email protected].0
84+
uses: nick-invision/[email protected].2
8585
with:
8686
timeout_minutes: 40
8787
max_attempts: 3

.github/workflows/js-examples.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ jobs:
116116
env:
117117
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
118118
- name: Run tests
119-
uses: nick-invision/[email protected].0
119+
uses: nick-invision/[email protected].2
120120
with:
121121
timeout_minutes: 20
122122
max_attempts: 3

.github/workflows/kotlin-examples.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ jobs:
8383
distribution: 'temurin'
8484
java-version: 11
8585
- name: Run tests
86-
uses: nick-invision/[email protected].0
86+
uses: nick-invision/[email protected].2
8787
with:
8888
timeout_minutes: 20
8989
max_attempts: 3

.github/workflows/python-examples.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ jobs:
9595
distribution: 'temurin'
9696
java-version: 11
9797
- name: Run tests
98-
uses: nick-invision/[email protected].0
98+
uses: nick-invision/[email protected].2
9999
with:
100100
timeout_minutes: 60
101101
max_attempts: 3

.github/workflows/ruby-examples.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ jobs:
8484
distribution: 'temurin'
8585
java-version: 11
8686
- name: Run tests
87-
uses: nick-invision/[email protected].0
87+
uses: nick-invision/[email protected].2
8888
with:
8989
timeout_minutes: 20
9090
max_attempts: 3

examples/dotnet/SeleniumDocs/BaseTest.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public class BaseTest
1717
protected IWebDriver driver;
1818
protected Uri GridUrl;
1919
private Process _webserverProcess;
20-
private const string ServerJarName = "selenium-server-4.28.1.jar";
20+
private const string ServerJarName = "selenium-server-4.29.0.jar";
2121
private static readonly string BaseDirectory = AppContext.BaseDirectory;
2222
private const string RelativePathToGrid = "../../../../../";
2323
private readonly string _examplesDirectory = Path.GetFullPath(Path.Combine(BaseDirectory, RelativePathToGrid));

examples/dotnet/SeleniumDocs/SeleniumDocs.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
<PackageReference Include="Microsoft.IdentityModel.Tokens" Version="7.7.1" />
1111
<PackageReference Include="MSTest.TestAdapter" Version="3.6.0" />
1212
<PackageReference Include="MSTest.TestFramework" Version="3.6.0" />
13-
<PackageReference Include="Selenium.Support" Version="4.28.0" />
14-
<PackageReference Include="Selenium.WebDriver" Version="4.28.0" />
13+
<PackageReference Include="Selenium.Support" Version="4.29.0" />
14+
<PackageReference Include="Selenium.WebDriver" Version="4.29.0" />
1515
</ItemGroup>
1616

1717
<ItemGroup>

examples/java/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ repositories {
1010
}
1111

1212
dependencies {
13-
testImplementation 'org.seleniumhq.selenium:selenium-java:4.28.1'
14-
testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.11.4'
13+
testImplementation 'org.seleniumhq.selenium:selenium-java:4.29.0'
14+
testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.12.0'
1515
}
1616

1717
test {
122 Bytes
Binary file not shown.

examples/java/gradle/wrapper/gradle-wrapper.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

examples/java/gradlew

+1-1
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ fi
205205
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
206206

207207
# Collect all arguments for the java command:
208-
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
208+
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
209209
# and any embedded shellness will be escaped.
210210
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
211211
# treated as '${Hostname}' itself on the command line.

examples/java/pom.xml

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<maven.compiler.source>17</maven.compiler.source>
1414
<maven.compiler.target>17</maven.compiler.target>
1515
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
16-
<selenium.version>4.28.1</selenium.version>
16+
<selenium.version>4.29.0</selenium.version>
1717
</properties>
1818

1919
<repositories>
@@ -40,7 +40,7 @@
4040
<dependency>
4141
<groupId>org.junit.jupiter</groupId>
4242
<artifactId>junit-jupiter-engine</artifactId>
43-
<version>5.11.4</version>
43+
<version>5.12.0</version>
4444
<scope>test</scope>
4545
</dependency>
4646
<dependency>

examples/javascript/package-lock.json

+7-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

examples/javascript/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"license": "Apache-2.0",
99
"dependencies": {
1010
"assert": "2.1.0",
11-
"selenium-webdriver": "4.28.1"
11+
"selenium-webdriver": "4.29.0"
1212
},
1313
"devDependencies": {
1414
"mocha": "11.1.0"

examples/kotlin/pom.xml

+4-4
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,16 @@
1111
<properties>
1212
<kotlin.version>2.1.0</kotlin.version>
1313

14-
<slf4j.version>2.0.16</slf4j.version>
15-
<logback.version>1.5.16</logback.version>
14+
<slf4j.version>2.0.17</slf4j.version>
15+
<logback.version>1.5.17</logback.version>
1616

17-
<junit5.version>5.11.4</junit5.version>
17+
<junit5.version>5.12.0</junit5.version>
1818
<wdm.version>5.2.3</wdm.version>
1919

2020
<maven-surefire-plugin.version>3.5.2</maven-surefire-plugin.version>
2121

2222
<java.version>1.8</java.version>
23-
<selenium.version>4.28.1</selenium.version>
23+
<selenium.version>4.29.0</selenium.version>
2424

2525
<maven.compiler.target>${java.version}</maven.compiler.target>
2626
<maven.compiler.source>${java.version}</maven.compiler.source>

examples/python/requirements.txt

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
selenium==4.28.1
2-
pytest==8.3.4
3-
trio==0.27.0
1+
selenium==4.29.0
2+
pytest==8.3.5
3+
trio==0.29.0
44
pytest-trio==0.8.0
55
pytest-rerunfailures==14.0
6-
flake8==7.1.1
6+
flake8==7.1.2
77
requests==2.32.3

examples/python/tests/conftest.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ def server_old(request):
142142
os.path.abspath(__file__)
143143
)
144144
),
145-
"selenium-server-4.28.1.jar",
145+
"selenium-server-4.29.0.jar",
146146
)
147147

148148
def wait_for_server(url, timeout):
@@ -200,7 +200,7 @@ def server():
200200
)
201201
)
202202
),
203-
"selenium-server-4.28.1.jar",
203+
"selenium-server-4.29.0.jar",
204204
)
205205

206206
args = [
@@ -273,7 +273,7 @@ def grid_server():
273273
)
274274
)
275275
),
276-
"selenium-server-4.28.1.jar",
276+
"selenium-server-4.29.0.jar",
277277
)
278278

279279
args = [

examples/ruby/Gemfile

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ gem 'rake', '~> 13.0'
77
gem 'rspec', '~> 3.0'
88
gem 'rubocop', '~> 1.35'
99
gem 'rubocop-rspec', '~> 3.0'
10-
gem 'selenium-devtools', '= 0.132.0'
11-
gem 'selenium-webdriver', '= 4.28.0'
10+
gem 'selenium-devtools', '= 0.133.0'
11+
gem 'selenium-webdriver', '= 4.29.1'

examples/ruby/Gemfile.lock

+18-15
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,19 @@ GEM
44
ast (2.4.2)
55
base64 (0.2.0)
66
diff-lcs (1.5.1)
7-
json (2.9.1)
8-
language_server-protocol (3.17.0.3)
9-
logger (1.6.5)
7+
json (2.10.1)
8+
language_server-protocol (3.17.0.4)
9+
lint_roller (1.1.0)
10+
logger (1.6.6)
1011
parallel (1.26.3)
11-
parser (3.3.7.0)
12+
parser (3.3.7.1)
1213
ast (~> 2.4.1)
1314
racc
1415
racc (1.8.1)
1516
rainbow (3.1.1)
1617
rake (13.2.1)
1718
regexp_parser (2.10.0)
18-
rexml (3.4.0)
19+
rexml (3.4.1)
1920
rspec (3.13.0)
2021
rspec-core (~> 3.13.0)
2122
rspec-expectations (~> 3.13.0)
@@ -29,25 +30,27 @@ GEM
2930
diff-lcs (>= 1.2.0, < 2.0)
3031
rspec-support (~> 3.13.0)
3132
rspec-support (3.13.0)
32-
rubocop (1.70.0)
33+
rubocop (1.72.2)
3334
json (~> 2.3)
34-
language_server-protocol (>= 3.17.0)
35+
language_server-protocol (~> 3.17.0.2)
36+
lint_roller (~> 1.1.0)
3537
parallel (~> 1.10)
3638
parser (>= 3.3.0.2)
3739
rainbow (>= 2.2.2, < 4.0)
3840
regexp_parser (>= 2.9.3, < 3.0)
39-
rubocop-ast (>= 1.36.2, < 2.0)
41+
rubocop-ast (>= 1.38.0, < 2.0)
4042
ruby-progressbar (~> 1.7)
4143
unicode-display_width (>= 2.4.0, < 4.0)
42-
rubocop-ast (1.37.0)
44+
rubocop-ast (1.38.0)
4345
parser (>= 3.3.1.0)
44-
rubocop-rspec (3.4.0)
45-
rubocop (~> 1.61)
46+
rubocop-rspec (3.5.0)
47+
lint_roller (~> 1.1)
48+
rubocop (~> 1.72, >= 1.72.1)
4649
ruby-progressbar (1.13.0)
4750
rubyzip (2.4.1)
48-
selenium-devtools (0.132.0)
51+
selenium-devtools (0.133.0)
4952
selenium-webdriver (~> 4.2)
50-
selenium-webdriver (4.28.0)
53+
selenium-webdriver (4.29.1)
5154
base64 (~> 0.2)
5255
logger (~> 1.4)
5356
rexml (~> 3.2, >= 3.2.5)
@@ -70,8 +73,8 @@ DEPENDENCIES
7073
rspec (~> 3.0)
7174
rubocop (~> 1.35)
7275
rubocop-rspec (~> 3.0)
73-
selenium-devtools (= 0.132.0)
74-
selenium-webdriver (= 4.28.0)
76+
selenium-devtools (= 0.133.0)
77+
selenium-webdriver (= 4.29.1)
7578

7679
BUNDLED WITH
7780
2.5.6
Binary file not shown.

website_and_docs/content/blog/2023/selenium-4-9-0-released.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,7 @@ Links to everything can be found on our [downloads page][downloads].
3333
<div class="col-11 p-4 bg-transparent">
3434
<div class="row justify-content-center">
3535
{{< gh-user "https://api.github.com/users/atrnh" >}}
36-
{{< gh-user "https://api.github.com/users/nvborisenko" >}}
37-
{{< gh-user "https://api.github.com/users/dev-ardi" >}}
36+
{{< gh-user "https://api.github.com/users/nvborisenko" >}}
3837
{{< gh-user "https://api.github.com/users/arnonax-tr" >}}
3938
{{< gh-user "https://api.github.com/users/robotdana" >}}
4039
{{< gh-user "https://api.github.com/users/iampopovich" >}}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
title: "Removing ChromeDevTools Support For Firefox"
3+
linkTitle: "Removing ChromeDevTools Support For Firefox"
4+
date: 2025-02-03
5+
tags: ["selenium"]
6+
categories: ["releases"]
7+
author: Puja Jagani [@pujagani](https://www.linkedin.com/in/pujajagani/)
8+
description: >
9+
Today we're happy to announce ChromeDevTools support for Firefox is removed and WebDriver BiDi is paving the path forward
10+
---
11+
12+
Selenium has deprecated support for Chrome DevTools Protocol (CDP) for Firefox in the last two versions (4.27 and 4.28). Our typical removal policy is to deprecate support for two versions, allowing users sufficient time to update their codebase, and then remove it from the third version onwards.
13+
14+
Starting with Selenium 4.29.0, CDP support for Firefox has been fully removed—and for good reason. Selenium’s CDP implementation for Firefox was always partial, meaning it never had complete feature parity with Chrome. Meanwhile, Firefox is shifting towards WebDriver BiDi, the future of cross-browser automation. Aligning with this, Firefox has announced that starting with Firefox 129, CDP will no longer be enabled by default. Read more here: [https://fxdx.dev/deprecating-cdp-support-in-firefox-embracing-the-future-with-webdriver-bidi/].
15+
16+
To support this transition, Selenium is removing CDP support for Firefox, as a major portion of WebDriver BiDi functionality is now available across all Selenium language bindings. Selenium is committed to staying in sync with browser vendors and the latest developments in the WebDriver BiDi protocol. This step brings us closer to standardized, browser-agnostic automation.
17+
18+
If you were using CDP in Selenium for Firefox, now is the time to switch to WebDriver BiDi. Start your journey with Selenium’s WebDriver BiDi examples [here](https://www.selenium.dev/documentation/webdriver/bidi/w3c/).

0 commit comments

Comments
 (0)