Skip to content

Commit f62e911

Browse files
authored
Merge branch 'trunk' into rb-bidi-network-module
2 parents 26de897 + 95cd6f5 commit f62e911

File tree

1,496 files changed

+76140
-114219
lines changed

Some content is hidden

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

1,496 files changed

+76140
-114219
lines changed

.bazelignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,6 @@ dotnet/src/webdriver/obj
2222
java/build/production
2323
java/client/build
2424
java/server/build
25+
javascript/grid-ui/node_modules
26+
javascript/node/selenium-webdriver/node_modules
2527
node_modules

.bazelrc

Lines changed: 49 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
1-
try-import .bazelrc.local
2-
try-import .bazelrc.windows.local
1+
try-import %workspace%/.bazelrc.local
2+
try-import %workspace%/.bazelrc.windows.local
3+
4+
# Enable bzlmod but without lockfile for a moment.
5+
# Lockfile is a problem to check in at the moment
6+
# because of constant Git conflicts and platform-specific
7+
# pieces.
8+
# https://github.com/bazelbuild/bazel/issues/20369
9+
# https://github.com/bazelbuild/bazel/issues/21491
10+
11+
common --enable_bzlmod --lockfile_mode=off
312

413
# Ensure Windows support is accurate.
514

@@ -25,13 +34,24 @@ build --javacopt="--release 11"
2534
build --experimental_strict_java_deps=strict
2635
build --explicit_java_test_deps
2736

28-
# Ensure builds are unpolluted by the user env
37+
# Allow spaces in runfile paths
38+
build --nobuild_runfile_links
2939

30-
build --incompatible_strict_action_env
40+
# More JS magic
41+
build --experimental_allow_unresolved_symlinks
42+
43+
# Required for faster TS builds
44+
build --@aspect_rules_ts//ts:skipLibCheck=always
45+
fetch --@aspect_rules_ts//ts:skipLibCheck=always
46+
query --@aspect_rules_ts//ts:skipLibCheck=always
3147

32-
# Except for the PATH environment variable
48+
build --@aspect_rules_ts//ts:default_to_tsc_transpiler
49+
fetch --@aspect_rules_ts//ts:default_to_tsc_transpiler
50+
query --@aspect_rules_ts//ts:default_to_tsc_transpiler
3351

34-
build --action_env=PATH
52+
# Ensure builds are unpolluted by the user env
53+
54+
build --incompatible_strict_action_env
3555

3656
# For build stamping
3757

@@ -47,25 +67,26 @@ build --test_output=errors
4767

4868
# pass environment variables to the test environment
4969

50-
build --test_env=CI
51-
build --test_env=DASHBOARD_URL
52-
build --test_env=DISPLAY
53-
build --test_env=FIREFOX_NIGHTLY_BINARY
54-
build --test_env=GITHUB_ACTIONS
55-
build --test_env=MOZ_HEADLESS
56-
build --test_env=PATH # Remove once browser pinning works
57-
build --test_env=SELENIUM_BROWSER
58-
build --test_env=TRAVIS
59-
build --test_env=PYTHON_VERSION
70+
test --test_env=CI
71+
test --test_env=DASHBOARD_URL
72+
test --test_env=DISPLAY
73+
test --test_env=FIREFOX_NIGHTLY_BINARY
74+
test --test_env=GITHUB_ACTIONS
75+
test --test_env=MOZ_HEADLESS
76+
test --test_env=SELENIUM_BROWSER
77+
test --test_env=TRAVIS
78+
test --test_env=PYTHON_VERSION
79+
test --test_env=SE_AVOID_STATS=true
6080

6181
# Remove once rules_ruby support proper $LOAD_PATH expansion.
6282

63-
build --test_env=RUBYOPT="-Irb/lib -w"
83+
test --test_env=RUBYOPT="-Irb/lib -w"
6484

65-
# JRuby/TruffleRuby: https://github.com/jruby/jruby/issues/5661
85+
# Speed up JRuby startup.
86+
# https://github.com/jruby/jruby/wiki/Improving-startup-time
6687

67-
build --action_env=HOME
68-
test --test_env=HOME
88+
build --action_env=JRUBY_OPTS="--dev"
89+
test --test_env=JRUBY_OPTS="--dev"
6990

7091
# Expose necessary variables for Selenium-Manager.
7192

@@ -76,73 +97,11 @@ test:windows --test_env=PROGRAMFILES(X86)="C:\\Program Files (x86)"
7697
test --test_timeout=1800
7798

7899
test:node_debug --test_output=streamed --test_strategy=exclusive --test_timeout=9999 --nocache_test_results
79-
test:ruby_debug --test_output=streamed --test_env=RUBY_DEBUG_FORK_MODE=parent --run_under="@bundle//:bin/rdbg --nonstop --open --command"
80-
81-
# The RBE to use
82-
build:remote --bes_results_url=https://gypsum.cluster.engflow.com/invocation
83-
build:remote --bes_backend=grpcs://gypsum.cluster.engflow.com
84-
build:remote --remote_executor=grpcs://gypsum.cluster.engflow.com
85-
build:remote --remote_cache=grpcs://gypsum.cluster.engflow.com
86-
87-
# The number of cores available
88-
build:remote -j 50
89-
90-
# Build Without The Bytes
91-
build:remote --remote_download_outputs=minimal
92-
93-
build:remote --define=EXECUTOR=remote
94-
build:remote --experimental_inmemory_dotd_files
95-
build:remote --experimental_inmemory_jdeps_files
96-
build:remote --remote_timeout=3600
97-
build:remote --spawn_strategy=remote,local
98-
#build:remote --nolegacy_important_outputs
99-
build:remote --incompatible_strict_action_env=true
100-
101-
build:remote --crosstool_top=//common/remote-build/cc:toolchain
102-
build:remote --extra_execution_platforms=//common/remote-build:platform
103-
build:remote --extra_toolchains=//common/remote-build:cc-toolchain
104-
build:remote --host_platform=//common/remote-build:platform
105-
build:remote --platforms=//common/remote-build:platform
106-
107-
# The Docker images are running Linux
108-
build:remote --cpu=k8
109-
build:remote --host_cpu=k8
110-
111-
build:remote --disk_cache=
112-
113-
build:remote --incompatible_enable_cc_toolchain_resolution
114-
build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
115-
test:remote --test_env=DISPLAY=:99.0
116-
test:remote --test_tag_filters=-edge,-safari,-remote
117-
118-
# Env vars we can hard code
119-
build:remote --action_env=HOME=/home/dev
120-
build:remote --action_env=PATH=/bin:/usr/bin:/usr/local/bin
121-
test:remote --test_env=HOME=/home/dev
122-
123-
# Make sure we sniff credentials properly
124-
build:remote --credential_helper=%workspace%/scripts/credential-helper.sh
125-
126-
# Use pinned browsers when running remotely
127-
build:remote --//common:pin_browsers
128-
129-
# The remote build machines are pretty small, and 50 threads may leave them
130-
# thrashing, but our dev machines are a lot larger. Scale the workload so we
131-
# make reasonable usage of everything, everywhere, all at once.
132-
build:remote --local_cpu_resources='HOST_CPUS*10'
133-
build:remote --local_ram_resources='HOST_RAM*4.0'
134-
135-
# A small hint that we're running our tests remotely
136-
test:remote --test_env=REMOTE_BUILD=1
137-
138-
# Wait for up to 5 minutes for a test to pass
139-
test:remote --test_timeout=600
140-
141-
# Extend the remote config for CI
142-
build:remote-ci --config=remote
143-
build:remote-ci --curses=no --color=yes --show_timestamps --show_progress_rate_limit=5
144-
build:remote-ci --bes_upload_mode=wait_for_upload_complete
145-
146-
# Configuration changes suggested by EngFlow
147-
build:remote --grpc_keepalive_time=30s
148-
build:remote --nolegacy_important_outputs
100+
test:ruby_debug --test_output=streamed --test_env=RUBY_DEBUG_FORK_MODE=parent --run_under="@bundle//bin:rdbg --nonstop --open --command"
101+
102+
build:release --config=remote
103+
build:release --stamp
104+
build:release --remote_download_outputs=toplevel
105+
106+
# RBE
107+
import %workspace%/.bazelrc.remote

.bazelrc.remote

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
# 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
6+
7+
# The number of cores available
8+
build:remote -j 50
9+
10+
# Build Without The Bytes
11+
build:remote --remote_download_minimal
12+
13+
build:remote --define=EXECUTOR=remote
14+
build:remote --experimental_inmemory_dotd_files
15+
build:remote --experimental_inmemory_jdeps_files
16+
build:remote --remote_timeout=3600
17+
build:remote --spawn_strategy=remote,local
18+
#build:remote --nolegacy_important_outputs
19+
build:remote --incompatible_strict_action_env=true
20+
21+
build:remote --crosstool_top=//common/remote-build/cc:toolchain
22+
build:remote --extra_execution_platforms=//common/remote-build:platform
23+
build:remote --extra_toolchains=//common/remote-build:cc-toolchain
24+
build:remote --host_platform=//common/remote-build:platform
25+
build:remote --platforms=//common/remote-build:platform
26+
build:remote --cxxopt=-std=c++14
27+
28+
# The Docker images are running Linux
29+
build:remote --cpu=k8
30+
build:remote --host_cpu=k8
31+
32+
build:remote --disk_cache=
33+
34+
build:remote --incompatible_enable_cc_toolchain_resolution
35+
build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
36+
test:remote --test_env=DISPLAY=:99.0
37+
test:remote --test_tag_filters=-skip-remote,-remote
38+
39+
# Env vars we can hard code
40+
build:remote --action_env=HOME=/home/dev
41+
build:remote --action_env=PATH=/bin:/usr/bin:/usr/local/bin
42+
test:remote --test_env=PATH=/bin:/usr/bin:/usr/local/bin
43+
test:remote --test_env=HOME=/home/dev
44+
45+
# Make sure we sniff credentials properly
46+
build:remote --credential_helper=gypsum.cluster.engflow.com=%workspace%/scripts/credential-helper.sh
47+
48+
# Use pinned browsers when running remotely
49+
build:remote --//common:pin_browsers
50+
51+
# The remote build machines are pretty small, and 50 threads may leave them
52+
# thrashing, but our dev machines are a lot larger. Scale the workload so we
53+
# make reasonable usage of everything, everywhere, all at once.
54+
build:remote --local_resources=cpu='HOST_CPUS*10'
55+
build:remote --local_resources=memory='HOST_RAM*4.0'
56+
57+
# A small hint that we're running our tests remotely
58+
test:remote --test_env=REMOTE_BUILD=1
59+
60+
# Wait for up to 5 minutes for a test to pass
61+
test:remote --test_timeout=600
62+
63+
# Extend the remote config for CI
64+
build:remote-ci --config=remote
65+
build:remote-ci --curses=no --color=yes --show_timestamps --show_progress_rate_limit=5
66+
build:remote-ci --bes_upload_mode=wait_for_upload_complete
67+
68+
# Configuration changes suggested by EngFlow
69+
build:remote --grpc_keepalive_time=30s
70+
build:remote --nolegacy_important_outputs

.bazelversion

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
6.3.2
1+
7.1.1

.devcontainer/devcontainer.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
// https://containers.dev/implementors/json_reference/
2+
3+
{
4+
"name": "selenium-devcontainer",
5+
"build": {
6+
"dockerfile": "../scripts/dev-image/Dockerfile"
7+
},
8+
"runArgs": ["--name", "selenium_devcontainer"]
9+
}

.github/dependabot.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ updates:
55
schedule:
66
interval: daily
77
time: '08:00'
8-
open-pull-requests-limit: 5
8+
open-pull-requests-limit: 0
99
labels:
1010
- "C-build"
1111
- "dependencies"
@@ -14,7 +14,7 @@ updates:
1414
schedule:
1515
interval: daily
1616
time: '08:00'
17-
open-pull-requests-limit: 10
17+
open-pull-requests-limit: 0
1818
labels:
1919
- "C-nodejs"
2020
- "dependencies"
@@ -23,7 +23,7 @@ updates:
2323
schedule:
2424
interval: daily
2525
time: '08:00'
26-
open-pull-requests-limit: 10
26+
open-pull-requests-limit: 0
2727
labels:
2828
- "C-rb"
2929
- "dependencies"
@@ -32,7 +32,7 @@ updates:
3232
schedule:
3333
interval: daily
3434
time: '08:00'
35-
open-pull-requests-limit: 10
35+
open-pull-requests-limit: 0
3636
labels:
3737
- "C-rust"
3838
- "dependencies"
@@ -41,7 +41,7 @@ updates:
4141
schedule:
4242
interval: daily
4343
time: '08:00'
44-
open-pull-requests-limit: 10
44+
open-pull-requests-limit: 0
4545
labels:
4646
- "C-py"
4747
- "dependencies"

.github/label-commenter-config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,3 +129,11 @@ labels:
129129
This issue is looking for contributors.
130130
131131
Please comment below or reach out to us through our [IRC/Slack/Matrix channels](https://www.selenium.dev/support/) if you are interested.
132+
- name: I-logging
133+
labeled:
134+
issue:
135+
body: |
136+
We need more information about this issue in order to troubleshoot.
137+
138+
Please turn on logging and re-run your code. Information on how to adjust logs for your language can be found in our
139+
[Troubleshooting documentation](https://www.selenium.dev/documentation/webdriver/troubleshooting/logging/).

0 commit comments

Comments
 (0)