Skip to content

Commit 64e568f

Browse files
authored
Merge branch 'trunk' into network
2 parents 1235efc + 4d413c6 commit 64e568f

File tree

26 files changed

+207
-160
lines changed

26 files changed

+207
-160
lines changed

.bazelrc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,9 @@ build:release --stamp
119119
build:release --compilation_mode=opt
120120

121121
# As regular `release` but all the build work happens on the RBE
122-
build:remote_release --config=release
123-
build:remote_release --config=remote
124-
build:remote_release --remote_download_toplevel
122+
build:rbe_release --config=release
123+
build:rbe_release --config=rbe
124+
build:rbe_release --remote_download_toplevel
125125

126126
# RBE
127127
import %workspace%/.bazelrc.remote

.bazelrc.remote

Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,68 +1,68 @@
11
# The RBE to use
2-
build:remote --bes_results_url=https://gypsum.cluster.engflow.com/invocation
3-
build:remote --bes_backend=grpcs://gypsum.cluster.engflow.com
4-
build:remote --remote_executor=grpcs://gypsum.cluster.engflow.com
5-
build:remote --remote_cache=grpcs://gypsum.cluster.engflow.com
2+
build:rbe --bes_results_url=https://gypsum.cluster.engflow.com/invocation
3+
build:rbe --bes_backend=grpcs://gypsum.cluster.engflow.com
4+
build:rbe --remote_executor=grpcs://gypsum.cluster.engflow.com
5+
build:rbe --remote_cache=grpcs://gypsum.cluster.engflow.com
66

77
# The number of cores available
8-
build:remote -j 50
8+
build:rbe -j 50
99

10-
build:remote --define=EXECUTOR=remote
11-
build:remote --experimental_inmemory_dotd_files
12-
build:remote --experimental_inmemory_jdeps_files
13-
build:remote --remote_timeout=3600
14-
build:remote --spawn_strategy=remote,local
15-
#build:remote --nolegacy_important_outputs
16-
build:remote --incompatible_strict_action_env=true
10+
build:rbe --define=EXECUTOR=remote
11+
build:rbe --experimental_inmemory_dotd_files
12+
build:rbe --experimental_inmemory_jdeps_files
13+
build:rbe --remote_timeout=3600
14+
build:rbe --spawn_strategy=remote,local
15+
#build:rbe --nolegacy_important_outputs
16+
build:rbe --incompatible_strict_action_env=true
1717

18-
build:remote --crosstool_top=//common/remote-build/cc:toolchain
19-
build:remote --extra_execution_platforms=//common/remote-build:platform
20-
build:remote --extra_toolchains=//common/remote-build:cc-toolchain
21-
build:remote --host_platform=//common/remote-build:platform
22-
build:remote --platforms=//common/remote-build:platform
23-
build:remote --cxxopt=-std=c++14
18+
build:rbe --crosstool_top=//common/remote-build/cc:toolchain
19+
build:rbe --extra_execution_platforms=//common/remote-build:platform
20+
build:rbe --extra_toolchains=//common/remote-build:cc-toolchain
21+
build:rbe --host_platform=//common/remote-build:platform
22+
build:rbe --platforms=//common/remote-build:platform
23+
build:rbe --cxxopt=-std=c++14
2424

2525
# The Docker images are running Linux
26-
build:remote --cpu=k8
27-
build:remote --host_cpu=k8
26+
build:rbe --cpu=k8
27+
build:rbe --host_cpu=k8
2828

29-
build:remote --disk_cache=
29+
build:rbe --disk_cache=
3030

31-
build:remote --incompatible_enable_cc_toolchain_resolution
32-
build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
33-
test:remote --test_env=DISPLAY=:99.0
34-
test:remote --test_tag_filters=-exclusive-if-local,-skip-rbe,-remote
31+
build:rbe --incompatible_enable_cc_toolchain_resolution
32+
build:rbe --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
33+
test:rbe --test_env=DISPLAY=:99.0
34+
test:rbe --test_tag_filters=-exclusive-if-local,-skip-rbe,-remote
3535

3636
# Env vars we can hard code
37-
build:remote --action_env=HOME=/home/dev
38-
build:remote --action_env=PATH=/bin:/usr/bin:/usr/local/bin
39-
test:remote --test_env=PATH=/bin:/usr/bin:/usr/local/bin
40-
test:remote --test_env=HOME=/home/dev
37+
build:rbe --action_env=HOME=/home/dev
38+
build:rbe --action_env=PATH=/bin:/usr/bin:/usr/local/bin
39+
test:rbe --test_env=PATH=/bin:/usr/bin:/usr/local/bin
40+
test:rbe --test_env=HOME=/home/dev
4141

4242
# Make sure we sniff credentials properly
43-
build:remote --credential_helper=gypsum.cluster.engflow.com=%workspace%/scripts/credential-helper.sh
43+
build:rbe --credential_helper=gypsum.cluster.engflow.com=%workspace%/scripts/credential-helper.sh
4444

4545
# Use pinned browsers when running remotely
46-
build:remote --//common:pin_browsers
46+
build:rbe --//common:pin_browsers
4747

4848
# The remote build machines are pretty small, and 50 threads may leave them
4949
# thrashing, but our dev machines are a lot larger. Scale the workload so we
5050
# make reasonable usage of everything, everywhere, all at once.
51-
build:remote --local_resources=cpu='HOST_CPUS*10'
52-
build:remote --local_resources=memory='HOST_RAM*4.0'
51+
build:rbe --local_resources=cpu='HOST_CPUS*10'
52+
build:rbe --local_resources=memory='HOST_RAM*4.0'
5353

5454
# A small hint that we're running our tests remotely
55-
test:remote --test_env=REMOTE_BUILD=1
55+
test:rbe --test_env=REMOTE_BUILD=1
5656

5757
# Wait for up to 5 minutes for a test to pass
58-
test:remote --test_timeout=600
58+
test:rbe --test_timeout=600
5959

6060
# Extend the remote config for CI
61-
build:remote-ci --config=remote
62-
build:remote-ci --curses=no --color=yes --show_timestamps --show_progress_rate_limit=5
63-
build:remote-ci --bes_upload_mode=wait_for_upload_complete
64-
build:remote-ci --remote_download_minimal
61+
build:rbe-ci --config=rbe
62+
build:rbe-ci --curses=no --color=yes --show_timestamps --show_progress_rate_limit=5
63+
build:rbe-ci --bes_upload_mode=wait_for_upload_complete
64+
build:rbe-ci --remote_download_minimal
6565

6666
# Configuration changes suggested by EngFlow
67-
build:remote --grpc_keepalive_time=30s
68-
build:remote --nolegacy_important_outputs
67+
build:rbe --grpc_keepalive_time=30s
68+
build:rbe --nolegacy_important_outputs

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -358,8 +358,8 @@ Check https://selenium.dev/support/ for a complete list of options to communicat
358358

359359
To access the EngFlow RBE, a developer needs to be granted access to our project
360360
container repository. Once that has been done, then any bazel command can be run
361-
remotely by using `--config=remote`. For example: `bazel build --config=remote
362-
grid` or `bazel test --config=remote java/test/...`
361+
remotely by using `--config=rbe`. For example: `bazel build --config=rbe
362+
grid` or `bazel test --config=rbe java/test/...`
363363

364364
When you run a remote build, one of the first lines of output from Bazel will
365365
include a link to the EngFlow UI so you can track the progress of the build and

Rakefile

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ task ios_driver: [
378378
# ./go java:package['--config=release']
379379
desc 'Create stamped zipped assets for Java for uploading to GitHub'
380380
task :'java-release-zip' do
381-
Rake::Task['java:package'].invoke('--config=remote_release')
381+
Rake::Task['java:package'].invoke('--config=rbe_release')
382382
end
383383

384384
task 'release-java': %i[java-release-zip publish-maven]
@@ -494,8 +494,8 @@ namespace :node do
494494
end
495495

496496
desc 'Release Node npm package'
497-
task :release, [:nightly] do |_task, arguments|
498-
nightly = arguments[:nightly]
497+
task :release do |_task, arguments|
498+
nightly = arguments.to_a.include?('nightly')
499499
if nightly
500500
puts 'Updating Node version to nightly...'
501501
Rake::Task['node:version'].invoke('nightly') if nightly
@@ -565,8 +565,8 @@ namespace :py do
565565
end
566566

567567
desc 'Release Python wheel and sdist to pypi'
568-
task :release, [:nightly] do |_task, arguments|
569-
nightly = arguments[:nightly]
568+
task :release do |_task, arguments|
569+
nightly = arguments.to_a.include?('nightly')
570570
if nightly
571571
puts 'Updating Python version to nightly...'
572572
Rake::Task['py:version'].invoke('nightly')
@@ -741,8 +741,8 @@ namespace :rb do
741741
end
742742

743743
desc 'Push Ruby gems to rubygems'
744-
task :release, [:nightly] do |_task, arguments|
745-
nightly = arguments[:nightly]
744+
task :release do |_task, arguments|
745+
nightly = arguments.to_a.include?('nightly')
746746

747747
if nightly
748748
puts 'Bumping Ruby nightly version...'
@@ -751,9 +751,11 @@ namespace :rb do
751751
puts 'Releasing nightly WebDriver gem...'
752752
Bazel.execute('run', ['--config=release'], '//rb:selenium-webdriver-release-nightly')
753753
else
754+
patch_release = ruby_version.split('.').fetch(2, '0').to_i.positive?
755+
754756
puts 'Releasing Ruby gems...'
755757
Bazel.execute('run', ['--config=release'], '//rb:selenium-webdriver-release')
756-
Bazel.execute('run', ['--config=release'], '//rb:selenium-devtools-release')
758+
Bazel.execute('run', ['--config=release'], '//rb:selenium-devtools-release') unless patch_release
757759
end
758760
end
759761

@@ -823,8 +825,8 @@ namespace :dotnet do
823825
end
824826

825827
desc 'Upload nupkg files to Nuget'
826-
task :release, [:nightly] do |_task, arguments|
827-
nightly = arguments[:nightly]
828+
task :release do |_task, arguments|
829+
nightly = arguments.to_a.include?('nightly')
828830
if nightly
829831
puts 'Updating .NET version to nightly...'
830832
Rake::Task['dotnet:version'].invoke('nightly')
@@ -941,8 +943,8 @@ namespace :java do
941943
end
942944

943945
desc 'Deploy all jars to Maven'
944-
task :release, [:nightly] do |_task, arguments|
945-
nightly = arguments[:nightly]
946+
task :release do |_task, arguments|
947+
nightly = arguments.to_a.include?('nightly')
946948

947949
ENV['MAVEN_USER'] ||= ENV.fetch('SEL_M2_USER', nil)
948950
ENV['MAVEN_PASSWORD'] ||= ENV.fetch('SEL_M2_PASS', nil)
@@ -1142,17 +1144,17 @@ namespace :all do
11421144
end
11431145

11441146
desc 'Release all artifacts for all language bindings'
1145-
task :release, [:nightly] do |_task, arguments|
1147+
task :release do |_task, arguments|
11461148
Rake::Task['clean'].invoke
11471149

1148-
nightly = arguments[:nightly]
1149-
Rake::Task['java:release'].invoke(nightly)
1150-
Rake::Task['py:release'].invoke(nightly)
1151-
Rake::Task['rb:release'].invoke(nightly)
1152-
Rake::Task['dotnet:release'].invoke(nightly)
1153-
Rake::Task['node:release'].invoke(nightly)
1150+
args = arguments.to_a.include?('nightly') ? ['nightly'] : []
1151+
Rake::Task['java:release'].invoke(*args)
1152+
Rake::Task['py:release'].invoke(*args)
1153+
Rake::Task['rb:release'].invoke(*args)
1154+
Rake::Task['dotnet:release'].invoke(*args)
1155+
Rake::Task['node:release'].invoke(*args)
11541156

1155-
unless nightly
1157+
unless args.include?('nightly')
11561158
puts 'bump all versions to nightly'
11571159
Rake::Task['all:version'].invoke('nightly')
11581160
end

common/mirror/selenium

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@
33
"tag_name": "nightly",
44
"assets": [
55
{
6-
"browser_download_url": "https://github.com/SeleniumHQ/selenium/releases/download/nightly/selenium-java-4.30.0.zip"
6+
"browser_download_url": "https://github.com/SeleniumHQ/selenium/releases/download/nightly/selenium-java-4.31.0-SNAPSHOT.zip"
77
},
88
{
9-
"browser_download_url": "https://github.com/SeleniumHQ/selenium/releases/download/nightly/selenium-server-4.30.0.jar"
9+
"browser_download_url": "https://github.com/SeleniumHQ/selenium/releases/download/nightly/selenium-server-4.31.0-SNAPSHOT.jar"
1010
},
1111
{
12-
"browser_download_url": "https://github.com/SeleniumHQ/selenium/releases/download/nightly/selenium-server-4.30.0.zip"
12+
"browser_download_url": "https://github.com/SeleniumHQ/selenium/releases/download/nightly/selenium-server-4.31.0-SNAPSHOT.zip"
1313
}
1414
]
1515
},

common/repositories.bzl

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ js_library(
5050

5151
http_archive(
5252
name = "linux_beta_firefox",
53-
url = "https://ftp.mozilla.org/pub/firefox/releases/137.0b8/linux-x86_64/en-US/firefox-137.0b8.tar.xz",
54-
sha256 = "6d83ac868fab6dfc6226cff129b327a2f7dfde17fc7cc1164ab42c8637615776",
53+
url = "https://ftp.mozilla.org/pub/firefox/releases/137.0b9/linux-x86_64/en-US/firefox-137.0b9.tar.xz",
54+
sha256 = "c31ca582522327d3946d33e4bb610d340e8b80b82a8d94f1397abe1a2493c4b2",
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/137.0b8/mac/en-US/Firefox%20137.0b8.dmg",
76-
sha256 = "1783388e740355ffaf215bf10d32ce0d4aaf65183a9eeef64bee3c0dcce2a6e2",
75+
url = "https://ftp.mozilla.org/pub/firefox/releases/137.0b9/mac/en-US/Firefox%20137.0b9.dmg",
76+
sha256 = "55ac7aa4c6fff6c84cfef94850482f733a83a8f8a61167b76b3e0ef43a5f76ac",
7777
build_file_content = """
7878
load("@aspect_rules_js//js:defs.bzl", "js_library")
7979
package(default_visibility = ["//visibility:public"])
@@ -123,10 +123,10 @@ js_library(
123123

124124
pkg_archive(
125125
name = "mac_edge",
126-
url = "https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/d7f65f74-be89-4936-ad8d-c6a5d8ba8efd/MicrosoftEdge-134.0.3124.77.pkg",
127-
sha256 = "a768a8708129ba776ef28a1c4d86208398d2eaf898028d89f5dfde465fcdf07e",
126+
url = "https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/48fbf911-c173-49ef-a3cd-44bea1f03e93/MicrosoftEdge-134.0.3124.83.pkg",
127+
sha256 = "9e32af222a441f8f0858dd87191b5163e9c6fa86e73243b69eea63db04cac169",
128128
move = {
129-
"MicrosoftEdge-134.0.3124.77.pkg/Payload/Microsoft Edge.app": "Edge.app",
129+
"MicrosoftEdge-134.0.3124.83.pkg/Payload/Microsoft Edge.app": "Edge.app",
130130
},
131131
build_file_content = """
132132
load("@aspect_rules_js//js:defs.bzl", "js_library")
@@ -143,8 +143,8 @@ js_library(
143143

144144
deb_archive(
145145
name = "linux_edge",
146-
url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_134.0.3124.68-1_amd64.deb",
147-
sha256 = "ce337cb2c55e477cb2c3e7bab55cdcaeb6242d3a28f119a6e068dc1bd8903299",
146+
url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_134.0.3124.83-1_amd64.deb",
147+
sha256 = "df95dffa59575a01065f1c35170305e6dca194d09c42538a7983fe4142bb5963",
148148
build_file_content = """
149149
load("@aspect_rules_js//js:defs.bzl", "js_library")
150150
package(default_visibility = ["//visibility:public"])
@@ -165,8 +165,8 @@ js_library(
165165

166166
http_archive(
167167
name = "linux_edgedriver",
168-
url = "https://msedgedriver.azureedge.net/134.0.3124.68/edgedriver_linux64.zip",
169-
sha256 = "ada55ec37b7b7206dfc0e208b9edd89308a26095c767a802475b933d492cb729",
168+
url = "https://msedgedriver.azureedge.net/134.0.3124.83/edgedriver_linux64.zip",
169+
sha256 = "e1b72b689773624f3a6ec0b08273453b2b230074224fcc1e80adc8ad04faca0b",
170170
build_file_content = """
171171
load("@aspect_rules_js//js:defs.bzl", "js_library")
172172
package(default_visibility = ["//visibility:public"])
@@ -182,8 +182,8 @@ js_library(
182182

183183
http_archive(
184184
name = "mac_edgedriver",
185-
url = "https://msedgedriver.azureedge.net/134.0.3124.77/edgedriver_mac64.zip",
186-
sha256 = "699918e20020e31f3a8ec186c631d31e90038ad65e793d8d4b25bbc3332cf7c1",
185+
url = "https://msedgedriver.azureedge.net/134.0.3124.83/edgedriver_mac64.zip",
186+
sha256 = "9839de83ae375ad5dd136827b46cfa21b486265cf87b471a7abd2dc07812f79b",
187187
build_file_content = """
188188
load("@aspect_rules_js//js:defs.bzl", "js_library")
189189
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/134.0.6998.90/linux64/chrome-linux64.zip",
203-
sha256 = "77cea8bb689792cd35a82d26d4025b06ce507852ea84505f5912f691c6448789",
202+
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.165/linux64/chrome-linux64.zip",
203+
sha256 = "1d93094e9781d1b1deb634b4cbf21369e5fb91a374689037e7aa712445045b9d",
204204
build_file_content = """
205205
load("@aspect_rules_js//js:defs.bzl", "js_library")
206206
package(default_visibility = ["//visibility:public"])
@@ -221,8 +221,8 @@ js_library(
221221

222222
http_archive(
223223
name = "mac_chrome",
224-
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.90/mac-x64/chrome-mac-x64.zip",
225-
sha256 = "cbd2aac7add53395b7d6722999f6b63aa1eac5ca20c4255816c369ae1e34b70a",
224+
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.165/mac-x64/chrome-mac-x64.zip",
225+
sha256 = "cf1a1bba1d82b790aac96b32a8647c00ba8281d194cb6c0c556beb5472e350bd",
226226
strip_prefix = "chrome-mac-x64",
227227
patch_cmds = [
228228
"mv 'Google Chrome for Testing.app' Chrome.app",
@@ -243,8 +243,8 @@ js_library(
243243

244244
http_archive(
245245
name = "linux_chromedriver",
246-
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.90/linux64/chromedriver-linux64.zip",
247-
sha256 = "00c9c9a3f55859424d4bc5f3e325e2eb59f17e0587f31db74c775a252a4b4e62",
246+
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.165/linux64/chromedriver-linux64.zip",
247+
sha256 = "f45902a1b61ae4e5741c468286677213c6376fd6543b0809b94a84e6f7fc17f8",
248248
strip_prefix = "chromedriver-linux64",
249249
build_file_content = """
250250
load("@aspect_rules_js//js:defs.bzl", "js_library")
@@ -261,8 +261,8 @@ js_library(
261261

262262
http_archive(
263263
name = "mac_chromedriver",
264-
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.90/mac-x64/chromedriver-mac-x64.zip",
265-
sha256 = "6cb5a24c82e0acca8574ccff0e8c6f08d929a9bc9fd2cee47fd3af1b3e8167d4",
264+
url = "https://storage.googleapis.com/chrome-for-testing-public/134.0.6998.165/mac-x64/chromedriver-mac-x64.zip",
265+
sha256 = "4e5ff9ecbe1586e4820784e532b25c33eec0304f7699919d59d2888a4f49b95c",
266266
strip_prefix = "chromedriver-mac-x64",
267267
build_file_content = """
268268
load("@aspect_rules_js//js:defs.bzl", "js_library")

dotnet/src/webdriver/BiDi/Communication/Json/BiDiJsonSerializerContext.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ namespace OpenQA.Selenium.BiDi.Communication.Json;
2727
[JsonSerializable(typeof(MessageError))]
2828
[JsonSerializable(typeof(MessageEvent))]
2929

30-
[JsonSerializable(typeof(Modules.Script.EvaluateResult.Success))]
31-
[JsonSerializable(typeof(Modules.Script.EvaluateResult.Exception))]
30+
[JsonSerializable(typeof(Modules.Script.EvaluateResultSuccess))]
31+
[JsonSerializable(typeof(Modules.Script.EvaluateResultException))]
3232

3333
[JsonSerializable(typeof(Modules.Script.NumberRemoteValue))]
3434
[JsonSerializable(typeof(Modules.Script.BooleanRemoteValue))]

dotnet/src/webdriver/BiDi/Communication/Json/Converters/Polymorphic/EvaluateResultConverter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ internal class EvaluateResultConverter : JsonConverter<EvaluateResult>
3333

3434
return jsonDocument.RootElement.GetProperty("type").ToString() switch
3535
{
36-
"success" => jsonDocument.Deserialize<EvaluateResult.Success>(options),
37-
"exception" => jsonDocument.Deserialize<EvaluateResult.Exception>(options),
36+
"success" => jsonDocument.Deserialize<EvaluateResultSuccess>(options),
37+
"exception" => jsonDocument.Deserialize<EvaluateResultException>(options),
3838
_ => null,
3939
};
4040
}

0 commit comments

Comments
 (0)