Skip to content

Commit b1a4722

Browse files
authored
Merge branch 'trunk' into bidi-command-typed-result
2 parents d3f45d4 + e57ed80 commit b1a4722

File tree

11 files changed

+134
-105
lines changed

11 files changed

+134
-105
lines changed

.bazelrc.remote

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ build:rbe --disk_cache=
3131
build:rbe --incompatible_enable_cc_toolchain_resolution
3232
build:rbe --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
3333
test:rbe --test_env=DISPLAY=:99.0
34-
test:rbe --test_tag_filters=-exclusive-if-local,-skip-rbe,-remote
34+
test:rbe --test_tag_filters=-skip-rbe,-remote
3535

3636
# Env vars we can hard code
3737
build:rbe --action_env=HOME=/home/dev

.github/label-commenter-config.yml

Lines changed: 3 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -6,36 +6,7 @@ labels:
66
body: |
77
@{{ issue.user.login }}, thank you for creating this issue. We will troubleshoot it as soon as we can.
88
9-
---
10-
<details>
11-
<summary>Info for maintainers</summary>
12-
<div>
13-
<br>
14-
<p>
15-
Triage this issue by using labels.
16-
</p>
17-
<p>
18-
If information is missing, add a helpful comment and then <code>J-issue-template</code> label.
19-
</p>
20-
<p>
21-
If the issue is a question, add the <code>I-question</code> label.
22-
</p>
23-
<p>
24-
If the issue is valid but there is no time to troubleshoot it, consider adding the <code>help wanted</code> label.
25-
</p>
26-
<p>
27-
If the issue requires changes or fixes from an external project (e.g., ChromeDriver, GeckoDriver, MSEdgeDriver, W3C),
28-
add the applicable <code>G-*</code> label, and it will provide the correct link and auto-close the
29-
issue.
30-
</p>
31-
<p>
32-
After troubleshooting the issue, please add the <code>R-awaiting answer</code> label.
33-
</p>
34-
<p>
35-
Thank you!
36-
</p>
37-
</div>
38-
</details>
9+
Selenium Triage Team: remember to follow the [Triage Guide](https://github.com/SeleniumHQ/selenium/blob/trunk/README.md)
3910
- name: G-w3c
4011
labeled:
4112
issue:
@@ -122,14 +93,14 @@ labels:
12293
* 📮 [StackOverflow](https://stackoverflow.com/questions/tagged/selenium)
12394
* 🗣 Our [IRC/Slack/Matrix channels](https://www.selenium.dev/support/) where the community can help you as well
12495
action: close
125-
- name: help wanted
96+
- name: R-help wanted
12697
labeled:
12798
issue:
12899
body: |
129100
This issue is looking for contributors.
130101
131102
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
103+
- name: J-logging
133104
labeled:
134105
issue:
135106
body: |

.github/workflows/issue-labeler.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,3 +181,8 @@ jobs:
181181
with:
182182
github_token: ${{ secrets.GITHUB_TOKEN }}
183183
labels: J-awaiting answer
184+
- name: Remove label
185+
if: steps.version-check.outputs.is-outdated == 'true'
186+
uses: actions-ecosystem/action-remove-labels@v1
187+
with:
188+
labels: A-needs-triaging

.github/workflows/label-commenter.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,5 @@ jobs:
2424
- name: Label Commenter
2525
uses: peaceiris/actions-label-commenter@v1
2626
with:
27-
# The individual PAT is needed so commenter can auto-executes on PRs from Forks
28-
# It expires 4/1/2026
29-
github_token: ${{ secrets.PR_LABELER_PAT }}
27+
github_token: ${{ secrets.SELENIUM_CI_TOKEN }}
3028
config_file: .github/label-commenter-config.yml

.github/workflows/pr-labeler.yml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,5 @@ jobs:
2121
- name: Auto label Pull Requests
2222
uses: actions/labeler@v5
2323
with:
24-
# The individual PAT is needed so labeler auto-executes this workflow
25-
# It expires 4/1/2026
26-
repo-token: ${{ secrets.PR_LABELER_PAT }}
24+
repo-token: ${{ secrets.SELENIUM_CI_TOKEN }}
2725
configuration-path: .github/pr-labeler-config.yml

.github/workflows/pre-release.yml

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,23 @@ jobs:
2525
with:
2626
persist-credentials: false
2727
fetch-depth: 0
28-
fetch-tags: true
2928
- name: "Prep git"
3029
run: |
3130
git config --local user.email "[email protected]"
3231
git config --local user.name "Selenium CI Bot"
33-
if git rev-parse --verify release-${{ github.event.inputs.version }} >/dev/null 2>&1; then
34-
git branch -D release-${{ github.event.inputs.version }}
32+
if git rev-parse --verify rust-release-${{ github.event.inputs.version }} >/dev/null 2>&1; then
33+
git branch -D rust-release-${{ github.event.inputs.version }}
3534
fi
36-
git checkout -b release-${{ github.event.inputs.version }}
35+
git checkout -b rust-release-${{ github.event.inputs.version }}
3736
- name: Update Rust Version
38-
run: |
39-
./go rust:version[${{ github.event.inputs.version }}]
40-
./go rust:version:commit
37+
run: ./go rust:version ${{ github.event.inputs.version }}
38+
- name: Commit Rust updates
39+
run: git commit -m "update selenium manager version and rust changelog"
4140
- name: Push changes
4241
uses: ad-m/github-push-action@master
4342
with:
4443
github_token: ${{ secrets.SELENIUM_CI_TOKEN }}
45-
branch: release-${{ github.event.inputs.version }}
44+
branch: rust-release-${{ github.event.inputs.version }}
4645
force: true
4746

4847
selenium-manager:
@@ -51,10 +50,23 @@ jobs:
5150
uses: ./.github/workflows/ci-rust.yml
5251
with:
5352
release: true
54-
branch: release-${{ github.event.inputs.version }}
53+
branch: rust-release-${{ github.event.inputs.version }}
5554
secrets:
5655
SELENIUM_CI_TOKEN: ${{ secrets.SELENIUM_CI_TOKEN }}
5756

57+
cleanup-rust-branch:
58+
name: Cleanup Rust Branch
59+
needs: selenium-manager
60+
runs-on: ubuntu-latest
61+
steps:
62+
- name: "Checkout repo"
63+
uses: actions/checkout@v4
64+
with:
65+
token: ${{ secrets.SELENIUM_CI_TOKEN }}
66+
- name: "Delete rust release branch"
67+
run: |
68+
git push origin --delete rust-release-${{ github.event.inputs.version }}
69+
5870
update-files:
5971
name: Update Files
6072
runs-on: ubuntu-latest
@@ -79,11 +91,11 @@ jobs:
7991
git config --local user.email "[email protected]"
8092
git config --local user.name "Selenium CI Bot"
8193
- name: Update browser versions
82-
run: ./go update_browsers[${{ github.event.inputs.chrome_channel }}]
94+
run: ./go update_browsers ${{ github.event.inputs.chrome_channel }}
8395
- name: Commit browser updates
8496
run: git commit -m "update pinned browser versions"
8597
- name: Update devtools versions
86-
run: ./go all:update_cdp[${{ github.event.inputs.chrome_channel }}]
98+
run: ./go all:update_cdp ${{ github.event.inputs.chrome_channel }}
8799
- name: Commit DevTools updates
88100
run: git commit -m "update devtools versions"
89101
- name: Update Selenium Manager versions
@@ -99,11 +111,11 @@ jobs:
99111
- name: Commit Authors updates
100112
run: git commit -m "update authors file"
101113
- name: Bump minor version
102-
run: ./go all:version
114+
run: ./go all:version ${{ github.event.inputs.version }}
103115
- name: Commit version updates
104116
run: git commit -m "bump versions in preparation for release"
105117
- name: Update changelog
106-
run: ./go all:changelog
118+
run: ./go all:changelogs
107119
- name: Commit changelog updates
108120
run: git commit -m "WIP - rough auto-update of changelog, please edit"
109121
- name: List untracked files
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Update Version After Docs Merge
2+
3+
on:
4+
pull_request:
5+
types: [closed]
6+
branches:
7+
- gh-pages
8+
paths:
9+
- 'docs/api/**'
10+
11+
jobs:
12+
update-version:
13+
if: github.event.pull_request.merged == true && contains(github.event.pull_request.title, 'Update documentation for Selenium')
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout trunk branch
17+
uses: actions/checkout@v4
18+
with:
19+
ref: trunk
20+
token: ${{ secrets.SELENIUM_CI_TOKEN }}
21+
22+
- name: Setup git
23+
run: |
24+
git config --local user.email "[email protected]"
25+
git config --local user.name "Selenium CI Bot"
26+
27+
- name: Update versions to nightly
28+
run: ./go all:version nightly
29+
30+
- name: Bump Nightly Versions Pull Request
31+
id: cpr
32+
uses: peter-evans/create-pull-request@v6
33+
with:
34+
token: ${{ secrets.SELENIUM_CI_TOKEN }}
35+
author: Selenium CI Bot <[email protected]>
36+
delete-branch: true
37+
branch: bump-nightly-version
38+
title: Update to nightly versions
39+
body: |
40+
This PR bumps the bindings to nightly versions after merging
41+
the PR updating the API documentation.
42+
43+
- Auto-generated by [workflow run #${{ github.run_id }}](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})
44+
labels: B-docs
45+
draft: false
46+
- name: Enable Pull Request Auto-merge
47+
if: steps.cpr.outputs.pull-request-operation == 'created'
48+
uses: peter-evans/enable-pull-request-automerge@v3
49+
with:
50+
token: ${{ secrets.SELENIUM_CI_TOKEN }}
51+
pull-request-number: ${{ steps.cpr.outputs.pull-request-number }}
52+
merge-method: squash

.github/workflows/update-documentation.yml

Lines changed: 30 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -40,21 +40,19 @@ jobs:
4040
determine-languages:
4141
runs-on: ubuntu-latest
4242
outputs:
43-
matrix: ${{ steps.set-matrix.outputs.matrix }}
43+
languages: ${{ steps.set-languages.outputs.languages }}
4444
steps:
45-
- id: set-matrix
45+
- id: set-languages
4646
run: |
4747
if [ "${{ inputs.language }}" == "all" ]; then
48-
echo 'matrix={"language":["java","rb","py","dotnet","node"]}' >> $GITHUB_OUTPUT
48+
echo '"languages=java rb py dotnet node" >> $GITHUB_OUTPUT
4949
else
50-
echo 'matrix={"language":["${{ inputs.language }}"]}' >> $GITHUB_OUTPUT
50+
echo "languages=${{ inputs.language }}" >> $GITHUB_OUTPUT
5151
fi
52+
5253
build-docs:
5354
needs: determine-languages
5455
runs-on: ubuntu-latest
55-
strategy:
56-
matrix: ${{ fromJson(needs.determine-languages.outputs.matrix) }}
57-
fail-fast: false
5856
steps:
5957
- name: Checkout repository
6058
uses: actions/checkout@v4
@@ -69,43 +67,55 @@ jobs:
6967
- name: Setup curl for Ubuntu
7068
run: sudo apt-get update && sudo apt-get install -y libcurl4-openssl-dev
7169
- name: Setup Java
70+
if: contains(needs.determine-languages.outputs.languages, 'java')
7271
uses: actions/setup-java@v4
7372
with:
7473
java-version: 17
7574
distribution: 'temurin'
7675
- name: Set up Python 3.9
77-
if: ${{ matrix.language == 'py' }}
76+
if: contains(needs.determine-languages.outputs.languages, 'py')
7877
uses: actions/setup-python@v5
7978
with:
8079
python-version: 3.9
8180
- name: Install dependencies
82-
if: ${{ matrix.language == 'py' }}
81+
if: contains(needs.determine-languages.outputs.languages, 'py')
8382
run: |
8483
python -m pip install --upgrade pip
8584
pip install tox
8685
- name: Install npm dependencies
87-
if: ${{ matrix.language == 'node' }}
86+
if: contains(needs.determine-languages.outputs.languages, 'node')
8887
run: |
8988
npm install
9089
npm install --prefix javascript/selenium-webdriver
91-
- name: Update Documentation
92-
run: ./go ${{ matrix.language }}:docs
90+
- name: Generate Documentation for selected langauges
91+
run: |
92+
read -r -a LANGS <<< "${{ needs.determine-languages.outputs.languages }}"
93+
for lang in "${LANGS[@]}"; do
94+
echo "Generating docs for $lang"
95+
./go $lang:docs
96+
done
9397
- name: Documentation Pull Request
98+
id: cpr
9499
uses: peter-evans/create-pull-request@v6
95100
with:
96101
token: ${{ secrets.SELENIUM_CI_TOKEN }}
97102
author: Selenium CI Bot <[email protected]>
98103
delete-branch: true
99-
branch: api-docs-${{ inputs.version }}-${{ matrix.language }}
104+
branch: api-docs-${{ inputs.version }}
100105
base: gh-pages
101-
add-paths: |
102-
${{ matrix.language == 'node' && 'docs/api/javascript/**' || format('docs/api/{0}/**', matrix.language) }}
103-
title: Update documentation for Selenium ${{ inputs.version }} (${{ matrix.language }})
106+
add-paths: docs/api/**
107+
title: Update documentation for Selenium ${{ inputs.version }}
104108
body: |
105-
This PR updates the API documentation for **${{ matrix.language }}** language bindings to version **${{ inputs.version }}**.
106-
107-
- Auto-generated by [create-pull-request][1]
109+
This PR updates the API documentation for version **${{ inputs.version }}**.
110+
Languages updated: ${{ needs.determine-languages.outputs.languages }}
108111
109-
[1]: https://github.com/peter-evans/create-pull-request
112+
- Auto-generated by [workflow run #${{ github.run_id }}](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})
110113
labels: B-docs
111114
draft: false
115+
- name: Enable Pull Request Auto-merge
116+
if: steps.cpr.outputs.pull-request-operation == 'created'
117+
uses: peter-evans/enable-pull-request-automerge@v3
118+
with:
119+
token: ${{ secrets.SELENIUM_CI_TOKEN }}
120+
pull-request-number: ${{ steps.cpr.outputs.pull-request-number }}
121+
merge-method: squash

Rakefile

Lines changed: 2 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ end
166166
desc 'Update Selenium Manager to latest release'
167167
task :update_manager do |_task, _arguments|
168168
puts 'Updating Selenium Manager references'
169-
Bazel.execute('run', args, '//scripts:selenium_manager')
169+
Bazel.execute('run', [], '//scripts:selenium_manager')
170170

171171
@git.add('common/selenium_manager.bzl')
172172
end
@@ -1092,18 +1092,6 @@ namespace :rust do
10921092
@git.add('rust/Cargo.Bazel.lock')
10931093
@git.add('rust/Cargo.lock')
10941094
end
1095-
1096-
# Creating a special task for this because Rust version needs to be managed at a different place than
1097-
# everything else; want to use changelog updates later in process
1098-
namespace :version do
1099-
desc 'Commits updates from Rust version changes'
1100-
task :commit do
1101-
@git.reset
1102-
commit!("update Rust version to #{rust_version}",
1103-
['rust/BUILD.bazel', 'rust/Cargo.Bazel.lock', 'rust/Cargo.lock', 'rust/Cargo.toml'])
1104-
commit!('Rust Changelog', ['rust/CHANGELOG.md'])
1105-
end
1106-
end
11071095
end
11081096

11091097
namespace :all do
@@ -1181,6 +1169,7 @@ namespace :all do
11811169
Rake::Task['py:lint'].invoke
11821170
end
11831171

1172+
# Example: `./go all:prepare 4.31.0 early-stable`
11841173
desc 'Update everything in preparation for a release'
11851174
task :prepare, [:version, :channel] do |_task, arguments|
11861175
version = arguments[:version]
@@ -1206,8 +1195,6 @@ namespace :all do
12061195
Rake::Task['rust:version'].invoke(version)
12071196

12081197
unless version == 'nightly'
1209-
Rake::Task['all:changelogs']
1210-
12111198
major_minor = arguments[:version][/^\d+\.\d+/]
12121199
file = '.github/ISSUE_TEMPLATE/bug-report.yml'
12131200
old_version_pattern = /The latest released version of Selenium is (\d+\.\d+)/
@@ -1324,13 +1311,3 @@ def update_changelog(version, language, path, changelog, header)
13241311
File.write(changelog, "#{header}\n#{commits}\n\n#{content}")
13251312
@git.add(changelog)
13261313
end
1327-
1328-
def commit!(message, files = [], all: false)
1329-
files.each do |file|
1330-
puts "adding: #{file}"
1331-
@git.add(file)
1332-
end
1333-
all ? @git.commit_all(message) : @git.commit(message)
1334-
rescue Git::FailedError => e
1335-
puts e.message
1336-
end

0 commit comments

Comments
 (0)