Skip to content

[rb] Upgrade to Ruby 3.2#15714

Merged
p0deje merged 3 commits intotrunkfrom
rb-bump-to-3.2
May 12, 2025
Merged

[rb] Upgrade to Ruby 3.2#15714
p0deje merged 3 commits intotrunkfrom
rb-bump-to-3.2

Conversation

@p0deje
Copy link
Copy Markdown
Member

@p0deje p0deje commented May 7, 2025

User description

  1. Ruby 3.1 is EOL, so I'm bumping the minimum required version to 3.2.
  2. This forces us to switch to JRuby 10, because JRuby 9 is 3.1 compliant.
  3. JRuby 10 requires Java 21, so I had to upgrade Java runtime we use in Bazel.
  4. It caused some issues with Spotbugs, so I had to improve it (thanks @shs96c - https://seleniumhq.slack.com/archives/CBH302726/p1746696840466079?thread_ts=1746657055.463059&cid=CBH302726).
  5. Spotbugs complained about some issues in Java tree. I have no idea what I was doing but it's now green. It would be great if Java folks could review.

PR Type

Enhancement


Description

  • Upgrade minimum supported Ruby version to 3.2

    • Update .ruby-version, gemspecs, and documentation
    • Update RuboCop config for Ruby 3.2
  • Update CI workflows to use latest Ruby, JRuby, TruffleRuby

    • Bump JRuby to 10.0.0.0 and TruffleRuby to 24.2.1
    • Update Ruby matrix in CI to 3.2.8 and 3.4.3
  • Update Bazel and Ruby dependencies

    • Bump rules_ruby and various Ruby gem versions/checksums

Changes walkthrough 📝

Relevant files
Enhancement
2 files
selenium-devtools.gemspec
Require Ruby >= 3.2 in gemspec                                                     
+1/-1     
selenium-webdriver.gemspec
Require Ruby >= 3.2 in gemspec                                                     
+1/-1     
Configuration changes
5 files
ci-rbe.yml
Update JRuby version in CI workflow to 10.0.0.0                   
+2/-2     
ci-ruby.yml
Update Ruby, JRuby, TruffleRuby versions in CI matrix       
+6/-6     
pre-release.yml
Use Ruby 3.2 in pre-release workflow                                         
+1/-1     
.rubocop.yml
Set RuboCop TargetRubyVersion to 3.2                                         
+1/-1     
.ruby-version
Set Ruby version to 3.2.8                                                               
+1/-1     
Dependencies
1 files
MODULE.bazel
Update rules_ruby and Ruby gem dependencies                           
+37/-40 
Documentation
1 files
README.md
Update documentation for Ruby >= 3.2 support                         
+1/-1     

Need help?
  • Type /help how to ... in the comments thread for any questions about Qodo Merge usage.
  • Check out the documentation for more information.
  • @p0deje p0deje added the C-rb Ruby Bindings label May 7, 2025
    @selenium-ci selenium-ci added the B-build Includes scripting, bazel and CI integrations label May 7, 2025
    @qodo-code-review
    Copy link
    Copy Markdown
    Contributor

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Dependency Updates

    Multiple gem dependencies have been updated with new versions and checksums. Verify that all updated dependencies are compatible with Ruby 3.2 and don't introduce breaking changes.

    "activesupport-7.2.2.1": "842bcbf8a92977f80fb4750661a237cf5dd4fdd442066b3c35e88afb488647f5",
    "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",
    "concurrent-ruby-1.3.5": "813b3e37aca6df2a21a3b9f1d497f8cbab24a2b94cab325bffe65ee0f6cbebc6",
    "connection_pool-2.5.3": "cfd74a82b9b094d1ce30c4f1a346da23ee19dc8a062a16a85f58eab1ced4305b",
    "crack-1.0.0": "c83aefdb428cdc7b66c7f287e488c796f055c0839e6e545fec2c7047743c4a49",
    "csv-3.3.4": "e96ecd5a8c3494aa5b596282249daba5c6033203c199248e6146e36d2a78d8cd",
    "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",
    "ffi-1.17.2": "297235842e5947cc3036ebe64077584bff583cd7a4e94e9a02fdec399ef46da6",
    "ffi-1.17.2-java": "94c8516d7c97b21915497b994e41f69e7e8e21d5fc085c498b68e52044e191ec",
    "ffi-1.17.2-x64-mingw-ucrt": "15d2da54ee578657a333a6059ed16eaba1cbd794ceecd15944825b65c8381ac0",
    "ffi-1.17.2-x86_64-darwin": "981f2d4e32ea03712beb26e55e972797c2c5a7b0257955d8667ba58f2da6440e",
    "ffi-1.17.2-x86_64-linux-gnu": "05d2026fc9dbb7cfd21a5934559f16293815b7ce0314846fee2ac8efbdb823ea",
    "fileutils-1.7.3": "57271e854b694a87755d76f836f5c57b2c9538ebbaf4b2154bb66addf15eb5da",
    "git-1.19.1": "b0a422d9f6517353c48a330d6114de4db9e0c82dbe7202964a1d9f1fbc827d70",
    "hashdiff-1.1.2": "2c30eeded6ed3dce8401d2b5b99e6963fe5f14ed85e60dd9e33c545a44b71a77",
    "i18n-1.14.7": "ceba573f8138ff2c0915427f1fc5bdf4aa3ab8ae88c8ce255eb3ecf0a11a5d0f",
    "io-console-0.8.0": "cd6a9facbc69871d69b2cb8b926fc6ea7ef06f06e505e81a64f14a470fddefa2",
    "io-console-0.8.0-java": "3cc6fd5c66e587145c1fdf8dc40c2e3d851e90722a5d0cc3f38da352f06fe1bd",
    "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",
    "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",
    "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",
    "public_suffix-6.0.2": "bfa7cd5108066f8c9602e0d6d4114999a5df5839a63149d3e8b0f9c1d3558394",
    "racc-1.8.1": "4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f",
    "racc-1.8.1-java": "54f2e6d1e1b91c154013277d986f52a90e5ececbe91465d29172e49342732b98",
    "rack-2.2.13": "ccee101719696a5da12ee9da6fb3b1d20cb329939e089e0e458be6e93667f0fb",
    "rainbow-3.1.1": "039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a",
    "rake-13.2.1": "46cb38dae65d7d74b6020a4ac9d48afed8eb8149c040eccf0523bec91907059d",
    "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",
    "rubocop-rake-0.7.1": "3797f2b6810c3e9df7376c26d5f44f3475eda59eb1adc38e6f62ecf027cbae4d",
    "rubocop-rspec-3.6.0": "c0e4205871776727e54dee9cc91af5fd74578001551ba40e1fe1a1ab4b404479",
    "ruby-progressbar-1.13.0": "80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33",
    "rubyzip-2.4.1": "8577c88edc1fde8935eb91064c5cb1aef9ad5494b940cf19c775ee833e075615",
    "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",
    "terminal-table-3.0.2": "f951b6af5f3e00203fb290a669e0a85c5dd5b051b3b023392ccfd67ba5abae91",
    "tzinfo-2.0.6": "8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b",
    "unicode-display_width-2.6.0": "12279874bba6d5e4d2728cef814b19197dbb10d7a7837a869bab65da943b7f5a",
    "webmock-3.25.1": "ab9d5d9353bcbe6322c83e1c60a7103988efc7b67cd72ffb9012629c3d396323",
    "webrick-1.9.1": "b42d3c94f166f3fb73d87e9b359def9b5836c426fc8beacf38f2184a21b2a989",
    "websocket-1.2.11": "b7e7a74e2410b5e85c25858b26b3322f29161e300935f70a0e0d3c35e0462737",
    "yard-0.9.37": "a6e910399e78e613f80ba9add9ba7c394b1a935f083cccbef82903a3d2a26992",

    @qodo-code-review
    Copy link
    Copy Markdown
    Contributor

    qodo-code-review bot commented May 7, 2025

    PR Code Suggestions ✨

    No code suggestions found for the PR.

    @qodo-code-review
    Copy link
    Copy Markdown
    Contributor

    qodo-code-review bot commented May 7, 2025

    CI Feedback 🧐

    (Feedback updated until commit 0ccbc01)

    A test triggered by this PR failed. Here is an AI-generated analysis of the failure:

    Action: Test / All RBE tests

    Failed stage: Run Bazel [❌]

    Failed test name: //java/test/org/openqa/selenium/grid/router:StressTest

    Failure summary:

    The action failed because the test //java/test/org/openqa/selenium/grid/router:StressTest timed out.
    The test consistently failed with a timeout in both attempts (line 5059-5062). The log shows it ran
    for 601.3 seconds before timing out. There was also a flaky test
    //java/test/org/openqa/selenium/remote/http:jdk/JdkHttpClientTest that failed in one of two attempts
    with an error "sleep interrupted" (lines 2583-2596), but the primary failure causing the build to
    fail was the StressTest timeout.

    Relevant error logs:
    1:  ##[group]Operating System
    2:  Ubuntu
    ...
    
    945:  Package 'php-sql-formatter' is not installed, so not removed
    946:  Package 'php8.3-ssh2' is not installed, so not removed
    947:  Package 'php-ssh2-all-dev' is not installed, so not removed
    948:  Package 'php8.3-stomp' is not installed, so not removed
    949:  Package 'php-stomp-all-dev' is not installed, so not removed
    950:  Package 'php-swiftmailer' is not installed, so not removed
    951:  Package 'php-symfony' is not installed, so not removed
    952:  Package 'php-symfony-asset' is not installed, so not removed
    953:  Package 'php-symfony-asset-mapper' is not installed, so not removed
    954:  Package 'php-symfony-browser-kit' is not installed, so not removed
    955:  Package 'php-symfony-clock' is not installed, so not removed
    956:  Package 'php-symfony-debug-bundle' is not installed, so not removed
    957:  Package 'php-symfony-doctrine-bridge' is not installed, so not removed
    958:  Package 'php-symfony-dom-crawler' is not installed, so not removed
    959:  Package 'php-symfony-dotenv' is not installed, so not removed
    960:  Package 'php-symfony-error-handler' is not installed, so not removed
    961:  Package 'php-symfony-event-dispatcher' is not installed, so not removed
    ...
    
    1139:  Package 'php-twig-html-extra' is not installed, so not removed
    1140:  Package 'php-twig-i18n-extension' is not installed, so not removed
    1141:  Package 'php-twig-inky-extra' is not installed, so not removed
    1142:  Package 'php-twig-intl-extra' is not installed, so not removed
    1143:  Package 'php-twig-markdown-extra' is not installed, so not removed
    1144:  Package 'php-twig-string-extra' is not installed, so not removed
    1145:  Package 'php8.3-uopz' is not installed, so not removed
    1146:  Package 'php-uopz-all-dev' is not installed, so not removed
    1147:  Package 'php8.3-uploadprogress' is not installed, so not removed
    1148:  Package 'php-uploadprogress-all-dev' is not installed, so not removed
    1149:  Package 'php8.3-uuid' is not installed, so not removed
    1150:  Package 'php-uuid-all-dev' is not installed, so not removed
    1151:  Package 'php-validate' is not installed, so not removed
    1152:  Package 'php-vlucas-phpdotenv' is not installed, so not removed
    1153:  Package 'php-voku-portable-ascii' is not installed, so not removed
    1154:  Package 'php-wmerrors' is not installed, so not removed
    1155:  Package 'php-xdebug-all-dev' is not installed, so not removed
    ...
    
    1947:  (17:19:46) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/webdriver/BUILD.bazel:66:19: runfiles symlink javascript/webdriver/test/testutil.js -> javascript/webdriver/test/testutil.js obscured by javascript/webdriver/test -> bazel-out/k8-fastbuild/bin/javascript/webdriver/test
    1948:  (17:19:46) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/webdriver/BUILD.bazel:66:19: runfiles symlink javascript/webdriver/test/testutil_test.js -> javascript/webdriver/test/testutil_test.js obscured by javascript/webdriver/test -> bazel-out/k8-fastbuild/bin/javascript/webdriver/test
    1949:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/action_test.html -> javascript/atoms/test/action_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1950:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/attribute_test.html -> javascript/atoms/test/attribute_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1951:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/child_locator_test.html -> javascript/atoms/test/child_locator_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1952:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_link_test.html -> javascript/atoms/test/click_link_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1953:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_submit_test.html -> javascript/atoms/test/click_submit_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1954:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/click_test.html -> javascript/atoms/test/click_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1955:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/clientrect_test.html -> javascript/atoms/test/clientrect_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1956:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/color_test.html -> javascript/atoms/test/color_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1957:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/deps.js -> javascript/atoms/test/deps.js obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1958:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/dom_test.html -> javascript/atoms/test/dom_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1959:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/drag_test.html -> javascript/atoms/test/drag_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1960:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/enabled_test.html -> javascript/atoms/test/enabled_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1961:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/enter_submit_test.html -> javascript/atoms/test/enter_submit_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1962:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/error_test.html -> javascript/atoms/test/error_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    1963:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/events_test.html -> javascript/atoms/test/events_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    ...
    
    2031:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/text_shadow_test.html -> javascript/atoms/test/text_shadow_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2032:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/text_table_test.html -> javascript/atoms/test/text_table_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2033:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/text_test.html -> javascript/atoms/test/text_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2034:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/text_util.js -> javascript/atoms/test/text_util.js obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2035:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/toolbar_test.html -> javascript/atoms/test/toolbar_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2036:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/touchscreen_test.html -> javascript/atoms/test/touchscreen_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2037:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/type_test.html -> javascript/atoms/test/type_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2038:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/useragent_quirks_test.html -> javascript/atoms/test/useragent_quirks_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2039:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/useragent_test.html -> javascript/atoms/test/useragent_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2040:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/useragent_test.js -> javascript/atoms/test/useragent_test.js obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2041:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/window_scroll_into_view_test.html -> javascript/atoms/test/window_scroll_into_view_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2042:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/window_scroll_test.html -> javascript/atoms/test/window_scroll_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2043:  (17:19:47) �[35mWARNING: �[0m/home/runner/work/selenium/selenium/javascript/atoms/BUILD.bazel:397:19: runfiles symlink javascript/atoms/test/window_size_test.html -> javascript/atoms/test/window_size_test.html obscured by javascript/atoms/test -> bazel-out/k8-fastbuild/bin/javascript/atoms/test
    2044:  (17:19:47) �[32m[10,224 / 12,610]�[0m 56 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/support/ui:clock-spotbugs; 138s remote, remote-cache ... (50 actions, 32 running)
    2045:  (17:19:52) �[32mINFO: �[0mFrom Building java/src/org/openqa/selenium/remote/libapi-class.jar (69 source files):
    2046:  java/src/org/openqa/selenium/remote/ErrorHandler.java:46: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2047:  private final ErrorCodes errorCodes;
    2048:  ^
    2049:  java/src/org/openqa/selenium/remote/ErrorHandler.java:60: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2050:  this.errorCodes = new ErrorCodes();
    2051:  ^
    2052:  java/src/org/openqa/selenium/remote/ErrorHandler.java:68: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2053:  public ErrorHandler(ErrorCodes codes, boolean includeServerErrors) {
    2054:  ^
    2055:  java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2056:  ErrorCodes errorCodes = new ErrorCodes();
    2057:  ^
    2058:  java/src/org/openqa/selenium/remote/Response.java:97: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2059:  ErrorCodes errorCodes = new ErrorCodes();
    2060:  ^
    2061:  java/src/org/openqa/selenium/remote/ProtocolHandshake.java:181: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2062:  response.setStatus(ErrorCodes.SUCCESS);
    2063:  ^
    2064:  java/src/org/openqa/selenium/remote/ProtocolHandshake.java:182: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2065:  response.setState(ErrorCodes.SUCCESS_STRING);
    2066:  ^
    2067:  java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:53: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2068:  new ErrorCodes().toStatus((String) rawError, Optional.of(tuple.getStatusCode())));
    2069:  ^
    2070:  java/src/org/openqa/selenium/remote/W3CHandshakeResponse.java:56: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2071:  new ErrorCodes().getExceptionType((String) rawError);
    2072:  ^
    2073:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2074:  private final ErrorCodes errorCodes = new ErrorCodes();
    2075:  ^
    2076:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:44: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2077:  private final ErrorCodes errorCodes = new ErrorCodes();
    2078:  ^
    2079:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2080:  int status = response.getStatus() == ErrorCodes.SUCCESS ? HTTP_OK : HTTP_INTERNAL_ERROR;
    2081:  ^
    2082:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:101: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2083:  response.setStatus(ErrorCodes.UNKNOWN_COMMAND);
    2084:  ^
    2085:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:103: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2086:  response.setStatus(ErrorCodes.UNHANDLED_ERROR);
    2087:  ^
    2088:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:117: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2089:  response.setStatus(ErrorCodes.SUCCESS);
    2090:  ^
    2091:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:118: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2092:  response.setState(errorCodes.toState(ErrorCodes.SUCCESS));
    2093:  ^
    2094:  java/src/org/openqa/selenium/remote/codec/AbstractHttpResponseCodec.java:124: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2095:  response.setState(errorCodes.toState(ErrorCodes.SUCCESS));
    2096:  ^
    2097:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:70: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2098:  private final ErrorCodes errorCodes = new ErrorCodes();
    2099:  ^
    2100:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:70: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2101:  private final ErrorCodes errorCodes = new ErrorCodes();
    2102:  ^
    2103:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:93: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2104:  response.setStatus(ErrorCodes.UNKNOWN_COMMAND);
    2105:  ^
    2106:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:98: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2107:  response.setStatus(ErrorCodes.UNHANDLED_ERROR);
    2108:  ^
    2109:  java/src/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodec.java:145: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2110:  response.setStatus(ErrorCodes.SUCCESS);
    2111:  ^
    ...
    
    2286:  (17:25:07) �[32m[13,578 / 15,058]�[0m 432 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 119s remote, remote-cache ... (50 actions, 43 running)
    2287:  (17:25:12) �[32m[13,588 / 15,058]�[0m 443 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 124s remote, remote-cache ... (50 actions, 44 running)
    2288:  (17:25:17) �[32m[13,603 / 15,067]�[0m 456 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 129s remote, remote-cache ... (49 actions, 41 running)
    2289:  (17:25:22) �[32m[13,608 / 15,117]�[0m 461 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 134s remote, remote-cache ... (49 actions, 43 running)
    2290:  (17:25:27) �[32m[13,611 / 15,131]�[0m 462 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 139s remote, remote-cache ... (50 actions, 44 running)
    2291:  (17:25:33) �[32m[13,622 / 15,131]�[0m 473 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 145s remote, remote-cache ... (50 actions, 43 running)
    2292:  (17:25:38) �[32m[13,628 / 15,131]�[0m 479 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 150s remote, remote-cache ... (50 actions, 43 running)
    2293:  (17:25:43) �[32m[13,634 / 15,131]�[0m 484 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 155s remote, remote-cache ... (50 actions, 43 running)
    2294:  (17:25:48) �[32m[13,638 / 15,131]�[0m 488 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 160s remote, remote-cache ... (50 actions, 45 running)
    2295:  (17:25:53) �[32m[13,651 / 15,131]�[0m 500 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 165s remote, remote-cache ... (50 actions, 42 running)
    2296:  (17:25:58) �[32m[13,663 / 15,132]�[0m 509 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 170s remote, remote-cache ... (50 actions, 45 running)
    2297:  (17:26:03) �[32m[13,697 / 15,132]�[0m 542 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 175s remote, remote-cache ... (50 actions, 39 running)
    2298:  (17:26:11) �[32m[13,700 / 15,132]�[0m 545 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 183s remote, remote-cache ... (50 actions, 46 running)
    2299:  (17:26:16) �[32m[13,708 / 15,132]�[0m 553 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 188s remote, remote-cache ... (50 actions, 43 running)
    2300:  (17:26:21) �[32m[13,745 / 15,132]�[0m 589 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 193s remote, remote-cache ... (50 actions, 41 running)
    2301:  (17:26:25) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/ErrorHandlerTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):
    2302:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:79: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2303:  handler.throwIfResponseFailed(createResponse(ErrorCodes.SUCCESS), 100);
    2304:  ^
    2305:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:85: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2306:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);
    2307:  ^
    2308:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:86: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2309:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);
    2310:  ^
    2311:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:87: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2312:  assertThrowsCorrectExceptionType(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);
    2313:  ^
    2314:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:88: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2315:  assertThrowsCorrectExceptionType(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);
    2316:  ^
    2317:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:90: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2318:  ErrorCodes.METHOD_NOT_ALLOWED, UnsupportedCommandException.class);
    2319:  ^
    2320:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:92: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2321:  ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);
    2322:  ^
    2323:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:94: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2324:  ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);
    2325:  ^
    2326:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:95: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2327:  assertThrowsCorrectExceptionType(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);
    2328:  ^
    2329:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2330:  Response response = createResponse(ErrorCodes.UNHANDLED_ERROR);
    2331:  ^
    2332:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:120: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2333:  createResponse(ErrorCodes.UNHANDLED_ERROR, "boom"), 123))
    2334:  ^
    2335:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:133: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2336:  createResponse(ErrorCodes.UNHANDLED_ERROR, ImmutableMap.of("message", "boom")),
    2337:  ^
    2338:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:147: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2339:  ErrorCodes.UNHANDLED_ERROR,
    2340:  ^
    2341:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:167: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2342:  ErrorCodes.UNHANDLED_ERROR,
    2343:  ^
    2344:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:193: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2345:  createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))
    2346:  ^
    2347:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:214: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2348:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2349:  ^
    2350:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:248: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2351:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2352:  ^
    2353:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:280: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2354:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2355:  ^
    2356:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:308: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2357:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2358:  ^
    2359:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:327: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2360:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2361:  ^
    2362:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:355: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2363:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2364:  ^
    2365:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:394: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2366:  createResponse(ErrorCodes.UNHANDLED_ERROR, data), 123))
    2367:  ^
    2368:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:426: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2369:  createResponse(ErrorCodes.UNHANDLED_ERROR, toMap(serverError)), 123))
    2370:  ^
    2371:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:435: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2372:  exceptions.put(ErrorCodes.NO_SUCH_SESSION, NoSuchSessionException.class);
    2373:  ^
    2374:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:436: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2375:  exceptions.put(ErrorCodes.NO_SUCH_ELEMENT, NoSuchElementException.class);
    2376:  ^
    2377:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:437: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2378:  exceptions.put(ErrorCodes.NO_SUCH_FRAME, NoSuchFrameException.class);
    2379:  ^
    2380:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:438: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2381:  exceptions.put(ErrorCodes.UNKNOWN_COMMAND, UnsupportedCommandException.class);
    2382:  ^
    2383:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:439: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2384:  exceptions.put(ErrorCodes.STALE_ELEMENT_REFERENCE, StaleElementReferenceException.class);
    2385:  ^
    2386:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:440: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2387:  exceptions.put(ErrorCodes.INVALID_ELEMENT_STATE, InvalidElementStateException.class);
    2388:  ^
    2389:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2390:  exceptions.put(ErrorCodes.UNHANDLED_ERROR, WebDriverException.class);
    2391:  ^
    2392:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:442: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2393:  exceptions.put(ErrorCodes.JAVASCRIPT_ERROR, JavascriptException.class);
    2394:  ^
    2395:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:443: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2396:  exceptions.put(ErrorCodes.XPATH_LOOKUP_ERROR, InvalidSelectorException.class);
    2397:  ^
    2398:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:444: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2399:  exceptions.put(ErrorCodes.TIMEOUT, TimeoutException.class);
    2400:  ^
    2401:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:445: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2402:  exceptions.put(ErrorCodes.NO_SUCH_WINDOW, NoSuchWindowException.class);
    2403:  ^
    2404:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:446: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2405:  exceptions.put(ErrorCodes.INVALID_COOKIE_DOMAIN, InvalidCookieDomainException.class);
    2406:  ^
    2407:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:447: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2408:  exceptions.put(ErrorCodes.UNABLE_TO_SET_COOKIE, UnableToSetCookieException.class);
    2409:  ^
    2410:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:448: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2411:  exceptions.put(ErrorCodes.UNEXPECTED_ALERT_PRESENT, UnhandledAlertException.class);
    2412:  ^
    2413:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:449: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2414:  exceptions.put(ErrorCodes.NO_ALERT_PRESENT, NoAlertPresentException.class);
    2415:  ^
    2416:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:450: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2417:  exceptions.put(ErrorCodes.ASYNC_SCRIPT_TIMEOUT, ScriptTimeoutException.class);
    2418:  ^
    2419:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:451: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2420:  exceptions.put(ErrorCodes.INVALID_SELECTOR_ERROR, InvalidSelectorException.class);
    2421:  ^
    2422:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:452: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2423:  exceptions.put(ErrorCodes.SESSION_NOT_CREATED, SessionNotCreatedException.class);
    2424:  ^
    2425:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:453: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2426:  exceptions.put(ErrorCodes.MOVE_TARGET_OUT_OF_BOUNDS, MoveTargetOutOfBoundsException.class);
    2427:  ^
    2428:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2429:  exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR, InvalidSelectorException.class);
    2430:  ^
    2431:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:455: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2432:  exceptions.put(ErrorCodes.INVALID_XPATH_SELECTOR_RETURN_TYPER, InvalidSelectorException.class);
    2433:  ^
    2434:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:469: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2435:  ? ErrorCodes.INVALID_SELECTOR_ERROR
    2436:  ^
    2437:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:471: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2438:  assertThat(new ErrorCodes().toStatusCode(e)).isEqualTo(expected);
    2439:  ^
    2440:  java/test/org/openqa/selenium/remote/ErrorHandlerTest.java:483: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2441:  response.setState(new ErrorCodes().toState(status));
    2442:  ^
    2443:  (17:26:26) �[32m[13,813 / 15,157]�[0m 623 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 198s remote, remote-cache ... (50 actions, 48 running)
    2444:  (17:26:26) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/RemotableByTest.jar (1 source file) and running annotation processors (AutoServiceProcessor):
    2445:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2446:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
    2447:  ^
    2448:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2449:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
    2450:  ^
    2451:  java/test/org/openqa/selenium/remote/RemotableByTest.java:23: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2452:  import static org.openqa.selenium.remote.ErrorCodes.SUCCESS_STRING;
    2453:  ^
    2454:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2455:  private final ErrorCodes errorCodes = new ErrorCodes();
    2456:  ^
    2457:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2458:  private final ErrorCodes errorCodes = new ErrorCodes();
    2459:  ^
    2460:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2461:  private final ErrorCodes errorCodes = new ErrorCodes();
    2462:  ^
    2463:  java/test/org/openqa/selenium/remote/RemotableByTest.java:45: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2464:  private final ErrorCodes errorCodes = new ErrorCodes();
    2465:  ^
    2466:  (17:26:28) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/libsmall-tests-test-lib.jar (5 source files) and running annotation processors (AutoServiceProcessor):
    2467:  java/test/org/openqa/selenium/remote/WebDriverFixture.java:170: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2468:  response.setStatus(new ErrorCodes().toStatus(state, Optional.of(400)));
    2469:  ^
    2470:  (17:26:31) �[32m[13,861 / 15,240]�[0m 634 / 2285 tests;�[0m Testing //dotnet/test/common:BiDi/BrowsingContext/BrowsingContextTest-firefox; 204s remote, remote-cache ... (50 actions, 48 running)
    2471:  (17:26:32) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/json/JsonTest.jar (1 source file):
    2472:  java/test/org/openqa/selenium/json/JsonTest.java:430: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2473:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));
    2474:  ^
    2475:  java/test/org/openqa/selenium/json/JsonTest.java:441: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2476:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(0));
    2477:  ^
    2478:  java/test/org/openqa/selenium/json/JsonTest.java:454: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2479:  assertThat(response.getState()).isEqualTo(new ErrorCodes().toState(32));
    2480:  ^
    2481:  (17:26:36) �[32mINFO: �[0mFrom Building java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.jar (1 source file):
    2482:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:26: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2483:  import static org.openqa.selenium.remote.ErrorCodes.METHOD_NOT_ALLOWED;
    2484:  ^
    2485:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:55: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2486:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.SUCCESS);
    2487:  ^
    2488:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:81: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2489:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);
    2490:  ^
    2491:  java/test/org/openqa/selenium/remote/codec/w3c/W3CHttpResponseCodecTest.java:107: warning: [removal] ErrorCodes in org.openqa.selenium.remote has been deprecated and marked for removal
    2492:  assertThat(decoded.getStatus()).isEqualTo(ErrorCodes.UNHANDLED_ERROR);
    2493:  ^
    ...
    
    2578:  (17:33:59) �[32m[15,572 / 16,052]�[0m 1733 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 215s remote, remote-cache ... (50 actions, 22 running)
    2579:  (17:34:07) �[32m[15,577 / 16,052]�[0m 1738 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 222s remote, remote-cache ... (50 actions, 21 running)
    2580:  (17:34:13) �[32m[15,581 / 16,052]�[0m 1742 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 228s remote, remote-cache ... (50 actions, 21 running)
    2581:  (17:34:18) �[32m[15,587 / 16,052]�[0m 1748 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 233s remote, remote-cache ... (50 actions, 22 running)
    2582:  (17:34:23) �[32m[15,594 / 16,052]�[0m 1755 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 238s remote, remote-cache ... (50 actions, 24 running)
    2583:  (17:34:23) �[31m�[1mFAIL: �[0m//java/test/org/openqa/selenium/remote/http:jdk/JdkHttpClientTest (see /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/remote/http/jdk/JdkHttpClientTest/test_attempts/attempt_1.log)
    2584:  (17:34:29) �[32m[15,595 / 16,052]�[0m 1756 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 244s remote, remote-cache ... (50 actions, 25 running)
    2585:  (17:34:34) �[32m[15,603 / 16,052]�[0m 1764 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 249s remote, remote-cache ... (50 actions, 29 running)
    2586:  (17:34:39) �[32m[15,608 / 16,052]�[0m 1769 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 255s remote, remote-cache ... (50 actions, 36 running)
    2587:  (17:34:45) �[32m[15,618 / 16,052]�[0m 1779 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 260s remote, remote-cache ... (50 actions, 38 running)
    2588:  �[35mFLAKY: �[0m//java/test/org/openqa/selenium/remote/http:jdk/JdkHttpClientTest (Summary)
    2589:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/remote/http/jdk/JdkHttpClientTest/test_attempts/attempt_1.log
    2590:  ==================== Test output for //java/test/org/openqa/selenium/remote/http:jdk/JdkHttpClientTest:
    2591:  May 09, 2025 5:34:17 PM org.openqa.selenium.remote.internal.HttpClientTestBase lambda$shouldAllowConfigurationOfRequestTimeout$3
    2592:  (17:34:50) �[32mINFO: �[0mFrom Testing //java/test/org/openqa/selenium/remote/http:jdk/JdkHttpClientTest:
    2593:  SEVERE: Error during execution: sleep interrupted
    2594:  Failures: 1
    2595:  1) shouldStopAsyncRequestAfterTimeout() (org.openqa.selenium.remote.http.jdk.JdkHttpClientTest)
    2596:  org.opentest4j.AssertionFailedError: 
    2597:  Expecting value to be true but was false
    ...
    
    2679:  stdout (/home/runner/.bazel/execroot/_main/bazel-out/_tmp/actions/stdout-15012) 45415214 exceeds maximum size of --experimental_ui_max_stdouterr_bytes=1048576 bytes; skipping
    2680:  (17:44:32) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 847s remote, remote-cache
    2681:  (17:44:43) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 859s remote, remote-cache
    2682:  (17:45:13) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 889s remote, remote-cache
    2683:  (17:46:13) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 949s remote, remote-cache
    2684:  (17:47:13) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 1009s remote, remote-cache
    2685:  (17:48:13) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 1069s remote, remote-cache
    2686:  (17:49:13) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 1129s remote, remote-cache
    2687:  (17:50:13) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; 1189s remote, remote-cache
    2688:  (17:50:32) �[32m[16,051 / 16,052]�[0m 2212 / 2285 tests;�[0m Testing //java/test/org/openqa/selenium/grid/router:StressTest; Downloading java/test/org/openqa/selenium/grid/router/StressTest/test.xml; 1207s remote, remote-cache
    2689:  �[31m�[1mTIMEOUT: �[0m//java/test/org/openqa/selenium/grid/router:StressTest (Summary)
    2690:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest/test.log
    2691:  /home/runner/.bazel/execroot/_main/bazel-out/k8-fastbuild/testlogs/java/test/org/openqa/selenium/grid/router/StressTest/test_attempts/attempt_1.log
    2692:  (17:50:33) �[32mINFO: �[0mFrom Testing //java/test/org/openqa/selenium/grid/router:StressTest:
    2693:  stdout (/home/runner/.bazel/execroot/_main/bazel-out/_tmp/actions/stdout-14988) 125721520 exceeds maximum size of --experimental_ui_max_stdouterr_bytes=1048576 bytes; skipping
    2694:  (17:50:37) �[32m[16,052 / 16,053]�[0m 2213 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-firefox-remote; 3s remote, remote-cache
    2695:  (17:50:56) �[32m[16,052 / 16,053]�[0m 2213 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-firefox-remote; 22s remote, remote-cache
    2696:  (17:51:02) �[32m[16,053 / 16,054]�[0m 2214 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-edge; 4s remote, remote-cache
    2697:  (17:51:13) �[32m[16,053 / 16,054]�[0m 2214 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-edge; 15s remote, remote-cache
    2698:  (17:51:22) �[32m[16,054 / 16,055]�[0m 2215 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-edge-remote; 8s remote, remote-cache
    2699:  (17:52:53) �[32m[16,054 / 16,055]�[0m 2215 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-edge-remote; 99s remote, remote-cache
    2700:  (17:53:02) �[32m[16,060 / 16,061]�[0m 2221 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-edge-remote; 7s remote, remote-cache
    2701:  (17:53:14) �[32m[16,060 / 16,061]�[0m 2221 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-edge-remote; 19s remote, remote-cache
    2702:  (17:53:22) �[32m[16,067 / 16,068]�[0m 2228 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-firefox-remote; 6s remote, remote-cache
    2703:  (17:53:45) �[32m[16,067 / 16,068]�[0m 2228 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-firefox-remote; 29s remote, remote-cache
    2704:  (17:53:52) �[32m[16,068 / 16,069]�[0m 2229 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-edge; 5s remote, remote-cache
    2705:  (17:54:04) �[32m[16,068 / 16,069]�[0m 2229 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-edge; 18s remote, remote-cache
    2706:  (17:54:12) �[32m[16,069 / 16,070]�[0m 2230 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge-remote; 6s remote, remote-cache
    2707:  (17:54:25) �[32m[16,069 / 16,070]�[0m 2230 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge-remote; 20s remote, remote-cache
    2708:  (17:54:32) �[32m[16,072 / 16,073]�[0m 2233 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-firefox-remote; 5s remote, remote-cache
    2709:  (17:54:54) �[32m[16,072 / 16,073]�[0m 2233 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-firefox-remote; 27s remote, remote-cache
    2710:  (17:55:02) �[32m[16,074 / 16,075]�[0m 2235 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome-remote; 7s remote, remote-cache
    2711:  (17:55:16) �[32m[16,074 / 16,075]�[0m 2235 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome-remote; 21s remote, remote-cache
    2712:  (17:55:22) �[32m[16,075 / 16,076]�[0m 2236 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-firefox-remote; 4s remote, remote-cache
    2713:  (17:55:40) �[32m[16,075 / 16,076]�[0m 2236 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-firefox-remote; 22s remote, remote-cache
    2714:  (17:55:47) �[32m[16,078 / 16,079]�[0m 2239 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-firefox-beta-remote; 6s remote, remote-cache
    2715:  (17:56:09) �[32m[16,078 / 16,079]�[0m 2239 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-firefox-beta-remote; 27s remote, remote-cache
    2716:  (17:56:17) �[32m[16,080 / 16,081]�[0m 2241 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-firefox-beta-remote; 7s remote, remote-cache
    2717:  (17:56:34) �[32m[16,080 / 16,081]�[0m 2241 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-firefox-beta-remote; 24s remote, remote-cache
    2718:  (17:56:42) �[32m[16,081 / 16,082]�[0m 2242 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-firefox-beta-remote; 7s remote, remote-cache
    2719:  (17:57:00) �[32m[16,081 / 16,082]�[0m 2242 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-firefox-beta-remote; 24s remote, remote-cache
    2720:  (17:57:07) �[32m[16,083 / 16,084]�[0m 2244 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome-remote; 6s remote, remote-cache
    2721:  (17:57:21) �[32m[16,083 / 16,084]�[0m 2244 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome-remote; 20s remote, remote-cache
    2722:  (17:57:27) �[32m[16,084 / 16,085]�[0m 2245 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-edge-bidi; 4s remote, remote-cache
    2723:  (17:58:18) �[32m[16,084 / 16,085]�[0m 2245 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-edge-bidi; 56s remote, remote-cache
    2724:  (17:58:27) �[32m[16,087 / 16,088]�[0m 2248 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-edge-remote; 7s remote, remote-cache
    2725:  (17:58:48) �[32m[16,087 / 16,088]�[0m 2248 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-edge-remote; 28s remote, remote-cache
    2726:  (17:58:57) �[32m[16,088 / 16,089]�[0m 2249 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-firefox-remote; 8s remote, remote-cache
    2727:  (17:59:13) �[32m[16,088 / 16,089]�[0m 2249 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-firefox-remote; 24s remote, remote-cache
    2728:  (17:59:22) �[32m[16,090 / 16,091]�[0m 2251 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-edge; 7s remote, remote-cache
    2729:  (18:01:01) �[32m[16,090 / 16,091]�[0m 2251 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-edge; 106s remote, remote-cache
    2730:  (18:01:07) �[32m[16,091 / 16,092]�[0m 2252 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-edge-bidi; 5s remote, remote-cache
    2731:  (18:01:24) �[32m[16,091 / 16,092]�[0m 2252 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-edge-bidi; 21s remote, remote-cache
    2732:  (18:01:32) �[32m[16,092 / 16,093]�[0m 2253 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-edge; 7s remote, remote-cache
    2733:  (18:01:41) �[32m[16,092 / 16,093]�[0m 2253 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-edge; 16s remote, remote-cache
    2734:  (18:01:47) �[32m[16,095 / 16,096]�[0m 2256 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-firefox-remote; 4s remote, remote-cache
    2735:  (18:02:07) �[32m[16,095 / 16,096]�[0m 2256 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-firefox-remote; 25s remote, remote-cache
    2736:  (18:02:17) �[32m[16,096 / 16,097]�[0m 2257 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge-bidi; 8s remote, remote-cache
    2737:  (18:02:50) �[32m[16,096 / 16,097]�[0m 2257 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge-bidi; 42s remote, remote-cache
    2738:  (18:02:57) �[32m[16,099 / 16,100]�[0m 2260 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge-remote; 5s remote, remote-cache
    2739:  (18:03:12) �[32m[16,099 / 16,100]�[0m 2260 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge-remote; 20s remote, remote-cache
    2740:  (18:03:17) �[32m[16,100 / 16,101]�[0m 2261 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-edge-remote; 4s remote, remote-cache
    2741:  (18:03:32) �[32m[16,100 / 16,101]�[0m 2261 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-edge-remote; 19s remote, remote-cache
    2742:  (18:03:42) �[32m[16,101 / 16,102]�[0m 2262 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-edge-bidi; 8s remote, remote-cache
    2743:  (18:04:03) �[32m[16,101 / 16,102]�[0m 2262 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-edge-bidi; 29s remote, remote-cache
    2744:  (18:04:12) �[32m[16,103 / 16,104]�[0m 2264 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-chrome-remote; 7s remote, remote-cache
    2745:  (18:04:22) �[32m[16,103 / 16,104]�[0m 2264 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:network-chrome-remote; 18s remote, remote-cache
    2746:  (18:04:32) �[32m[16,106 / 16,107]�[0m 2267 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge; 8s remote, remote-cache
    2747:  (18:04:40) �[32m[16,106 / 16,107]�[0m 2267 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-edge; 16s remote, remote-cache
    2748:  (18:04:47) �[32m[16,110 / 16,111]�[0m 2271 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-firefox-beta-remote; 6s remote, remote-cache
    2749:  (18:05:06) �[32m[16,110 / 16,111]�[0m 2271 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-firefox-beta-remote; 25s remote, remote-cache
    2750:  (18:05:12) �[32m[16,111 / 16,112]�[0m 2272 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-edge-bidi; 4s remote, remote-cache
    2751:  (18:05:22) �[32m[16,111 / 16,112]�[0m 2272 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-edge-bidi; 15s remote, remote-cache
    2752:  (18:05:32) �[32m[16,112 / 16,113]�[0m 2273 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-firefox-beta-remote; 8s remote, remote-cache
    2753:  (18:05:46) �[32m[16,112 / 16,113]�[0m 2273 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-firefox-beta-remote; 22s remote, remote-cache
    2754:  (18:05:52) �[32m[16,114 / 16,115]�[0m 2275 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge-bidi; 5s remote, remote-cache
    2755:  (18:07:00) �[32m[16,114 / 16,115]�[0m 2275 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge-bidi; 73s remote, remote-cache
    2756:  (18:07:07) �[32m[16,115 / 16,116]�[0m 2276 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-chrome-remote; 5s remote, remote-cache
    2757:  (18:08:07) �[32m[16,115 / 16,116]�[0m 2276 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-chrome-remote; 65s remote, remote-cache
    2758:  (18:08:12) �[32m[16,118 / 16,119]�[0m 2279 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-firefox-beta-remote; 4s remote, remote-cache
    2759:  (18:08:32) �[32m[16,118 / 16,119]�[0m 2279 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-firefox-beta-remote; 24s remote, remote-cache
    2760:  (18:08:42) �[32m[16,119 / 16,120]�[0m 2280 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-chrome-remote; 8s remote, remote-cache
    2761:  (18:08:53) �[32m[16,119 / 16,120]�[0m 2280 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-chrome-remote; 19s remote, remote-cache
    2762:  (18:09:02) �[32m[16,120 / 16,121]�[0m 2281 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge; 8s remote, remote-cache
    2763:  (18:09:10) �[32m[16,120 / 16,121]�[0m 2281 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-edge; 16s remote, remote-cache
    2764:  (18:09:17) �[32m[16,121 / 16,122]�[0m 2282 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-chrome-remote; 5s remote, remote-cache
    2765:  (18:09:29) �[32m[16,121 / 16,122]�[0m 2282 / 2285 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-chrome-remote; 18s remote, remote-cache
    2766:  (18:09:30) �[32mINFO: �[0mFound 2285 test targets...
    2767:  (18:09:30) �[32mINFO: �[0mElapsed time: 3221.490s, Critical Path: 1494.21s
    2768:  (18:09:30) �[32mINFO: �[0m15390 processes: 5478 remote cache hit, 7652 internal, 46 local, 2214 remote.
    2769:  (18:09:30) �[32mINFO: �[0mBuild completed, 1 test FAILED, 15390 total actions
    2770:  (18:09:30) �[32mINFO:�[0m 
    ...
    
    3243:  //py:common-firefox-test/selenium/webdriver/support/relative_by_tests.py �[0m�[32m(cached) PASSED�[0m in 17.7s
    3244:  //py:test-chrome-test/selenium/webdriver/chrome/chrome_launcher_tests.py �[0m�[32m(cached) PASSED�[0m in 8.3s
    3245:  //py:test-chrome-test/selenium/webdriver/chrome/chrome_network_emulation_tests.py �[0m�[32m(cached) PASSED�[0m in 5.0s
    3246:  //py:test-chrome-test/selenium/webdriver/chrome/chrome_service_tests.py �[0m�[32m(cached) PASSED�[0m in 12.4s
    3247:  //py:test-chrome-test/selenium/webdriver/chrome/proxy_tests.py  �[0m�[32m(cached) PASSED�[0m in 3.9s
    3248:  //py:test-edge-test/selenium/webdriver/edge/edge_launcher_tests.py �[0m�[32m(cached) PASSED�[0m in 9.3s
    3249:  //py:test-edge-test/selenium/webdriver/edge/edge_service_tests.py �[0m�[32m(cached) PASSED�[0m in 13.8s
    3250:  //py:unit-test/unit/selenium/webdriver/chrome/chrome_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.1s
    3251:  //py:unit-test/unit/selenium/webdriver/common/cdp_module_fallback_tests.py �[0m�[32m(cached) PASSED�[0m in 5.2s
    3252:  //py:unit-test/unit/selenium/webdriver/common/common_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.2s
    3253:  //py:unit-test/unit/selenium/webdriver/common/fedcm/account_tests.py �[0m�[32m(cached) PASSED�[0m in 2.9s
    3254:  //py:unit-test/unit/selenium/webdriver/common/fedcm/dialog_tests.py �[0m�[32m(cached) PASSED�[0m in 3.9s
    3255:  //py:unit-test/unit/selenium/webdriver/common/print_page_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.0s
    3256:  //py:unit-test/unit/selenium/webdriver/edge/edge_options_tests.py �[0m�[32m(cached) PASSED�[0m in 3.1s
    3257:  //py:unit-test/unit/selenium/webdriver/firefox/firefox_options_tests.py �[0m�[32m(cached) PASSED�[0m in 2.6s
    3258:  //py:unit-test/unit/selenium/webdriver/remote/error_handler_tests.py �[0m�[32m(cached) PASSED�[0m in 3.0s
    3259:  //py:unit-test/unit/selenium/webdriver/remote/new_session_tests.py �[0m�[32m(cached) PASSED�[0m in 3.2s
    ...
    
    3282:  //rb/spec/integration/selenium/webdriver:devtools-chrome-bidi   �[0m�[32m(cached) PASSED�[0m in 15.1s
    3283:  //rb/spec/integration/selenium/webdriver:devtools-firefox       �[0m�[32m(cached) PASSED�[0m in 26.0s
    3284:  //rb/spec/integration/selenium/webdriver:devtools-firefox-beta  �[0m�[32m(cached) PASSED�[0m in 21.8s
    3285:  //rb/spec/integration/selenium/webdriver:devtools-firefox-beta-bidi �[0m�[32m(cached) PASSED�[0m in 22.5s
    3286:  //rb/spec/integration/selenium/webdriver:devtools-firefox-bidi  �[0m�[32m(cached) PASSED�[0m in 20.2s
    3287:  //rb/spec/integration/selenium/webdriver:driver-chrome          �[0m�[32m(cached) PASSED�[0m in 127.4s
    3288:  //rb/spec/integration/selenium/webdriver:driver-chrome-bidi     �[0m�[32m(cached) PASSED�[0m in 124.0s
    3289:  //rb/spec/integration/selenium/webdriver:driver-firefox         �[0m�[32m(cached) PASSED�[0m in 60.1s
    3290:  //rb/spec/integration/selenium/webdriver:driver-firefox-beta    �[0m�[32m(cached) PASSED�[0m in 58.3s
    3291:  //rb/spec/integration/selenium/webdriver:driver-firefox-beta-bidi �[0m�[32m(cached) PASSED�[0m in 25.4s
    3292:  //rb/spec/integration/selenium/webdriver:driver-firefox-bidi    �[0m�[32m(cached) PASSED�[0m in 27.0s
    3293:  //rb/spec/integration/selenium/webdriver:element-firefox        �[0m�[32m(cached) PASSED�[0m in 93.1s
    3294:  //rb/spec/integration/selenium/webdriver:element-firefox-beta   �[0m�[32m(cached) PASSED�[0m in 91.0s
    3295:  //rb/spec/integration/selenium/webdriver:element-firefox-beta-bidi �[0m�[32m(cached) PASSED�[0m in 30.8s
    3296:  //rb/spec/integration/selenium/webdriver:element-firefox-bidi   �[0m�[32m(cached) PASSED�[0m in 26.8s
    3297:  //rb/spec/integration/selenium/webdriver:error-chrome           �[0m�[32m(cached) PASSED�[0m in 23.6s
    3298:  //rb/spec/integration/selenium/webdriver:error-chrome-bidi      �[0m�[32m(cached) PASSED�[0m in 20.5s
    3299:  //rb/spec/integration/selenium/webdriver:error-firefox          �[0m�[32m(cached) PASSED�[0m in 36.3s
    3300:  //rb/spec/integration/selenium/webdriver:error-firefox-beta     �[0m�[32m(cached) PASSED�[0m in 42.2s
    3301:  //rb/spec/integration/selenium/webdriver:error-firefox-beta-bidi �[0m�[32m(cached) PASSED�[0m in 27.1s
    3302:  //rb/spec/integration/selenium/webdriver:error-firefox-bidi     �[0m�[32m(cached) PASSED�[0m in 25.5s
    3303:  //rb/spec/integration/selenium/webdriver:fedcm-chrome           �[0m�[32m(cached) PASSED�[0m in 40.5s
    ...
    
    3641:  //dotnet/test/common:ElementElementFindingTest-chrome                    �[0m�[32mPASSED�[0m in 10.9s
    3642:  //dotnet/test/common:ElementElementFindingTest-edge                      �[0m�[32mPASSED�[0m in 11.3s
    3643:  //dotnet/test/common:ElementElementFindingTest-firefox                   �[0m�[32mPASSED�[0m in 15.0s
    3644:  //dotnet/test/common:ElementEqualityTest-chrome                          �[0m�[32mPASSED�[0m in 5.9s
    3645:  //dotnet/test/common:ElementEqualityTest-edge                            �[0m�[32mPASSED�[0m in 14.1s
    3646:  //dotnet/test/common:ElementEqualityTest-firefox                         �[0m�[32mPASSED�[0m in 16.7s
    3647:  //dotnet/test/common:ElementFindingTest-chrome                           �[0m�[32mPASSED�[0m in 32.5s
    3648:  //dotnet/test/common:ElementFindingTest-edge                             �[0m�[32mPASSED�[0m in 34.4s
    3649:  //dotnet/test/common:ElementFindingTest-firefox                          �[0m�[32mPASSED�[0m in 51.4s
    3650:  //dotnet/test/common:ElementPropertyTest-chrome                          �[0m�[32mPASSED�[0m in 7.6s
    3651:  //dotnet/test/common:ElementPropertyTest-edge                            �[0m�[32mPASSED�[0m in 12.1s
    3652:  //dotnet/test/common:ElementPropertyTest-firefox                         �[0m�[32mPASSED�[0m in 21.1s
    3653:  //dotnet/test/common:ElementSelectingTest-chrome                         �[0m�[32mPASSED�[0m in 14.5s
    3654:  //dotnet/test/common:ElementSelectingTest-edge                           �[0m�[32mPASSED�[0m in 12.9s
    3655:  //dotnet/test/common:ElementSelectingTest-firefox                        �[0m�[32mPASSED�[0m in 31.5s
    3656:  //dotnet/test/common:ErrorsTest-chrome                                   �[0m�[32mPASSED�[0m in 7.5s
    3657:  //dotnet/test/common:ErrorsTest-edge                                     �[0m�[32mPASSED�[0m in 9.4s
    3658:  //dotnet/test/common:ErrorsTest-firefox                                  �[0m�[32mPASSED�[0m in 15.4s
    3659:  //dotnet/test/common:ExecutingAsyncJavascriptTest-chrome                 �[0m�[32mPASSED�[0m in 22.1s
    ...
    
    3994:  //java/test/org/openqa/selenium:ElementEqualityTest                      �[0m�[32mPASSED�[0m in 18.2s
    3995:  //java/test/org/openqa/selenium:ElementEqualityTest-chrome               �[0m�[32mPASSED�[0m in 10.5s
    3996:  //java/test/org/openqa/selenium:ElementEqualityTest-edge                 �[0m�[32mPASSED�[0m in 12.3s
    3997:  //java/test/org/openqa/selenium:ElementEqualityTest-firefox-beta         �[0m�[32mPASSED�[0m in 17.7s
    3998:  //java/test/org/openqa/selenium:ElementEquali...

    @p0deje p0deje force-pushed the rb-bump-to-3.2 branch 3 times, most recently from 5e23fb6 to 635accc Compare May 7, 2025 17:03
    @p0deje p0deje force-pushed the rb-bump-to-3.2 branch 2 times, most recently from ea1b407 to b42ecb2 Compare May 8, 2025 14:23
    - CRuby 3.1 is EOL
    - JRuby 10 is the latest
    - TruffleRuby 24.2 is the latest
    @p0deje p0deje force-pushed the rb-bump-to-3.2 branch from b42ecb2 to 088fe35 Compare May 8, 2025 17:12
    @p0deje p0deje force-pushed the rb-bump-to-3.2 branch from 5f3bc8f to 636137e Compare May 8, 2025 20:34
    @p0deje p0deje requested a review from titusfortner May 9, 2025 15:06
    @titusfortner
    Copy link
    Copy Markdown
    Member

    Hmm @cgoldberg any idea why the python remote tests don't like Java 21?

    @cgoldberg
    Copy link
    Copy Markdown
    Member

    cgoldberg commented May 9, 2025

    I have no idea. What's failing? I use Java 17 on my local, but I can try 21.

    Edit: ok.. I see the errors. I'll look into it this afternoon.

    @cgoldberg
    Copy link
    Copy Markdown
    Member

    I ran the remote tests in trunk with Java 21 (not using bazel, not using this PR branch), and everything ran fine.

    In the CI logs for this PR, there are a ton of errors that occur when calling driver.quit():

    java.lang.ClassCastException: class jdk.internal.net.http.HttpClientFacade cannot be cast to class java.lang.AutoCloseable (jdk.internal.net.http.HttpClientFacade is in module java.net.http of loader 'platform'; java.lang.AutoCloseable is in module java.base of loader 'bootstrap')
    	at org.openqa.selenium.remote.http.jdk.JdkHttpClient.close(JdkHttpClient.java:526)
    	at org.openqa.selenium.remote.tracing.TracedHttpClient.close(TracedHttpClient.java:62)
    	at org.openqa.selenium.grid.node.config.DriverServiceSessionFactory$1.stop(DriverServiceSessionFactory.java:209)
    	at org.openqa.selenium.grid.node.DefaultActiveSession.execute(DefaultActiveSession.java:64)
    	at org.openqa.selenium.grid.node.local.SessionSlot.execute(SessionSlot.java:130)
    	at org.openqa.selenium.grid.node.local.LocalNode.executeWebDriverCommand(LocalNode.java:718)
    	at org.openqa.selenium.grid.node.ForwardWebDriverCommand.execute(ForwardWebDriverCommand.java:48)
    	at org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:397)
    	at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
    	at org.openqa.selenium.remote.tracing.SpanWrappedHttpHandler.execute(SpanWrappedHttpHandler.java:87)
    	at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
    	at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:360)
    	at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
    	at org.openqa.selenium.grid.node.Node.execute(Node.java:296)
    	at org.openqa.selenium.grid.web.CombinedHandler.execute(CombinedHandler.java:55)
    	at org.openqa.selenium.grid.web.RoutableHttpClientFactory$1.execute(RoutableHttpClientFactory.java:71)
    	at org.openqa.selenium.grid.web.ReverseProxyHandler.execute(ReverseProxyHandler.java:91)
    	at org.openqa.selenium.grid.router.HandleSession.execute(HandleSession.java:183)
    	at org.openqa.selenium.remote.http.Route$PredicatedRoute.handle(Route.java:397)
    	at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
    	at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:360)
    	at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
    	at org.openqa.selenium.grid.router.Router.execute(Router.java:89)
    	at org.openqa.selenium.grid.web.CheckOriginHeader.lambda$apply$0(CheckOriginHeader.java:69)
    	at org.openqa.selenium.grid.web.CheckContentTypeHeader.lambda$apply$0(CheckContentTypeHeader.java:75)
    	at org.openqa.selenium.grid.web.EnsureSpecCompliantResponseHeaders.lambda$apply$0(EnsureSpecCompliantResponseHeaders.java:34)
    	at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
    	at org.openqa.selenium.remote.http.Route$CombinedRoute.handle(Route.java:360)
    	at org.openqa.selenium.remote.http.Route.execute(Route.java:69)
    	at org.openqa.selenium.remote.AddWebDriverSpecHeaders.lambda$apply$0(AddWebDriverSpecHeaders.java:35)
    	at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
    	at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
    	at org.openqa.selenium.remote.ErrorFilter.lambda$apply$0(ErrorFilter.java:44)
    	at org.openqa.selenium.remote.http.Filter$1.execute(Filter.java:63)
    	at org.openqa.selenium.netty.server.SeleniumHandler.lambda$channelRead0$0(SeleniumHandler.java:49)
    	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
    	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    	at java.base/java.lang.Thread.run(Thread.java:840)
    

    I don't know what they mean.

    @cgoldberg
    Copy link
    Copy Markdown
    Member

    @p0deje
    Copy link
    Copy Markdown
    Member Author

    p0deje commented May 9, 2025

    @cgoldberg I think it's caused by my changes, let me revert and see if it helps. As I said, I have no idea what I do in Java code.

    java.lang.ClassCastException: class jdk.internal.net.http.HttpClientFacade cannot be cast to class java.lang.AutoCloseable (jdk.internal.net.http.HttpClientFacade is in module java.net.http of loader 'platform'; java.lang.AutoCloseable is in module java.base of loader 'bootstrap'
    @p0deje
    Copy link
    Copy Markdown
    Member Author

    p0deje commented May 9, 2025

    @cgoldberg @titusfortner All green now.

    @p0deje p0deje merged commit 05ea741 into trunk May 12, 2025
    34 of 35 checks passed
    @p0deje p0deje deleted the rb-bump-to-3.2 branch May 12, 2025 19:32
    PhilipWoulfe pushed a commit to PhilipWoulfe/F1Competition that referenced this pull request Mar 16, 2026
    Updated [Selenium.Support](https://github.com/SeleniumHQ/selenium) from
    4.31.0 to 4.41.0.
    
    <details>
    <summary>Release notes</summary>
    
    _Sourced from [Selenium.Support's
    releases](https://github.com/SeleniumHQ/selenium/releases)._
    
    ## 4.41.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    <!-- Release notes generated using configuration in .github/release.yml
    at selenium-4.41.0 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Remove type stub packages from runtime dependencies by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16945
    * Canonical approach to supporting AI agent directions by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16735
    * [build] Pre-release workflow improvements by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16946
    * [build] Prevent nightly releases during release window by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16948
    * [build] Fix Bazel NuGet push implementation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16950
    * [build] Release workflow improvements by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16947
    * [build] Fix Bazel JSDocs implementation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16949
    * [build] Create config files from environment variables for publishing
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16951
    * [js] create task to update dependencies by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16942
    * [build] Java release improvements and build verification tasks by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16952
    * [py] integrate mypy type checking with Bazel by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16958
    * [build] Migrate workflows to use centralized bazel.yml by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16955
    * [dotnet] [bidi] Simplify context aware command options by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16954
    * [build] simplify release.yml: remove draft, build once during publish
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16960
    * [dotnet] [bidi] AOT safe json converter for `Input.Origin` class by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16962
    * [dotnet] [bidi] AOT safe json converter for `OptionalConverter` by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16963
    * [dotnet] [bidi] Null guard for event handlers by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16967
    * [java] Improve error message for died grid by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16938
    * [build] combine pre-release dependency updates by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16973
    * [rb] remove stored atoms these get generated by build by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16971
    * [dotnet] [bidi] Unignore some internal tests by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16968
    * [build] run ruff on python files outside py directory by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16957
    * [py] Fix return type hint for `alert_is_present` by @​nemowang2003 in
    https://github.com/SeleniumHQ/selenium/pull/16975
    * Replace hardcoded bazel-selenium references with dynamic path
    resolution by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16976
    * No More CrazyFun! by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16972
    * [build] Remove update_gh_pages in favor of CI workflow by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16977
    * [build] Remove legacy rake helpers and unused code by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16978
    * [py] make bazel test target names consistent with other languages by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16969
    * [dotnet] [bidi] Fix namespace for Permissions module by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16981
    * [dotnet] [bidi] Hide Broker as internal implementation by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16982
    * [dotnet] [bidi] Refactor BiDi module initialization to pass BiDi
    explicitly by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16983
    * [build] Add DocFX updater script by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16980
    * [build] add reusable commit-changes.yml workflow by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16965
    * [java] fix JSON parsing of numbers with exponent by @​joerg1985 in
    https://github.com/SeleniumHQ/selenium/pull/16961
    * [build] Skip macOS-only archive rules on unsupported platforms by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16985
    * [build] Split Rakefile into per-language task files by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16979
    * Implement fast bazel target lookup with index caching by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16974
    * [build] Remove git.add() calls from rake tasks by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16994
    * [js] Add eslint binary target for selenium-webdriver by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16992
     ... (truncated)
    
    ## 4.40.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [dotnet] Modernize `EnvironmentManager`, standardize assembly teardown
    by @​RenderMichael in https://github.com/SeleniumHQ/selenium/pull/15551
    * [java] Refactor tests by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16684
    * [ci]: bump cargo lockfile by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16698
    * [java][BiDi] change emulation commands return type to void by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16699
    * [java] simplify strings processing by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/15309
    * Fix few more flaky ruby tests by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16695
    * [bazel] Switch to custom `closure_js_deps` rule by @​shs96c in
    https://github.com/SeleniumHQ/selenium/pull/16571
    * [dotnet] [bidi] Support SetScreenSettingsOverrideAsync method in
    Emulation module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16704
    * [dotnet] Modernize code patterns in test suites by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16701
    * use proper AssertJ asserts that generate a useful error message by
    @​asolntsev in https://github.com/SeleniumHQ/selenium/pull/16707
    * fix Java language level in IDEA by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16708
    * [py] Properly verify Selenium Manager exists by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16711
    * fix flaky Ruby test `element_spec.rb` by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16709
    * [java][BiDi] implement `emulation.setScreenOrientationOverride` by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16705
    * [rb] add synchronization and error handling for socket interactions by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16487
    * [rb] mark low level bidi implementation as private api by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16475
    * [rb] ensure driver process is always stopped by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/15635
    * [rb] create user-friendly method for enabling bidi by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/14284
    * [dotnet] [bidi] Added missing Script.RemoteReference LocaclValue type
    by @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16717
    * [dotnet] Standardize `IEquatable<T>` implementations across types
    overriding Equals by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16665
    * [dotnet] Fix nullability warnings in `WebDriver` by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16662
    * [py] Don't compare object identity in conftest by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16723
    * #​16720 avoid failing because of temporary Chrome internal files by
    @​asolntsev in https://github.com/SeleniumHQ/selenium/pull/16722
    * [rb] Add force encoding to remove warnings caused by json 3.0 by
    @​aguspe in https://github.com/SeleniumHQ/selenium/pull/16728
    * [py] Remove deprecated FTP proxy support by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16721
    * [py] Bump ruff and mypy versions by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16737
    * Create target directories before copying file by @​MohabMohie in
    https://github.com/SeleniumHQ/selenium/pull/16739
    * [bazel+closure]: Vendor the version of closure library we use by
    @​shs96c in https://github.com/SeleniumHQ/selenium/pull/16742
    * [closure] Fix failing `//javascript/atoms:test-*` targets by @​shs96c
    in https://github.com/SeleniumHQ/selenium/pull/16749
    * Avoid sleep in tests by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16713
    * [bazel] Bump `rules_closure` and google closure libary to latest
    release by @​shs96c in https://github.com/SeleniumHQ/selenium/pull/16755
    * [refactor] call WebDriverException constructor instead of using
    reflection by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16763
    * [build] Pin Browsers in Bazel by default by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16743
    * [build] build selenium manager for tests by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16736
    * [refactor] replace JUnit assertions by AssertJ by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16765
    * [py] Add LocalWebDriver base class by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16730
    * Fix bug in FileHandler: it always failed on MacOS by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16771
    * [java] add missing bazel artifacts by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16773
     ... (truncated)
    
    ## 4.39.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [atoms] fix text node children are always considered as displayed
    #​16284 by @​joerg1985 in
    https://github.com/SeleniumHQ/selenium/pull/16329
    * [grid] Enhance UI with theme integration and improved status
    indicators by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/16512
    * [py][bidi]: add emulation command - `set_locale_override` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16504
    * [py][bidi]: add emulation command `set_scripting_enabled` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16513
    * [py] Update docstrings to google pydoc format by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16511
    * [java][BiDi] implement `browsingContext.downloadEnd` event by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16347
    * Fix typo and minor formatting changes in README.md by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16523
    * [py] Update docstrings (remove reST leftovers and resolve D200) by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/16525
    * [py] Fix docstring formatting and apply ruff linting rules by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16527
    * [py] Fix Ruff D417 warnings in docstrings by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16535
    * [py] Fix ruff D415 warnings in docstrings by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16536
    * [py][bidi]: add `set_screen_orientation_override` command in Emulation
    by @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16522
    * [py] Fix D205 ruff warnings for docstrings and add type hints by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/16537
    * [py][bidi]: add `set_download_behavior` command by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16556
    * [py] Bump pytest and dev dependencies by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16572
    * [bazel] Move `rules_rust` to `bzlmod` by @​shs96c in
    https://github.com/SeleniumHQ/selenium/pull/16566
    * [ci] Make a PR for updating mirror file instead of pushing directly to
    trunk by @​bonigarcia in
    https://github.com/SeleniumHQ/selenium/pull/16579
    * [ci] Update mirror info (2025-11-11T15:26:46Z) by
    @​github-actions[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16578
    * [ci] Revert latest changes related to the mirror workflow by
    @​bonigarcia in https://github.com/SeleniumHQ/selenium/pull/16580
    * [java]: refactor request interception tests and handle CORS by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16585
    * [py][bidi]: enable download event tests for firefox by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16587
    * [py] Fix more type annotations by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16551
    * [java][BiDi] implement `emulation.setTimezoneOverride` by @​Delta456
    in https://github.com/SeleniumHQ/selenium/pull/16530
    * [grid] Minimum Docker API 1.44 for Docker Engine v29+ in Dynamic Grid
    by @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16591
    * Show file modification time by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16589
    * [py][bidi]: add emulation command `set_user_agent_override` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16595
    * [grid] Improve Docker client for Dynamic Grid by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/16596
    * [py]: reuse driver in case of bidi tests by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16597
    * [grid] Improve browser container labels and naming in Dynamic Grid by
    @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16599
    * [build] Upgrade rules_dotnet to 0.20.5 by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16592
    * [dotnet] [bidi] Simplify namespace for communications by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16602
    * [py] Improve type hints with union syntax and native types by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16590
    * [py] Use double quotes in generate.py by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/16607
    * [ci] Use pagination in mirror workflow to get all Selenium releases by
    @​bonigarcia in https://github.com/SeleniumHQ/selenium/pull/16605
    * [dotnet] Generate atoms statically by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16608
    * [nodejs] Update dev dependencies to fix vulnerabilities by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16610
    * [java][BiDi] emulation: allow passing null to GeolocationOverride by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16594
    * [grid] Update container label `compose.oneoff` in Dynamic Grid by
    @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16613
     ... (truncated)
    
    ## 4.38.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [dotnet] [bidi] Avoid using JsonInclude attribute to include optional
    property for DTO by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16413
    * [rb] Bump prism to 1.6.0 by @​Earlopain in
    https://github.com/SeleniumHQ/selenium/pull/16450
    * [java] JSpecify annotations for `ExecuteMethod` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16464
    * [rb] Fix Network issue by removing nil values on network requests by
    @​aguspe in https://github.com/SeleniumHQ/selenium/pull/16442
    * [py] Replaced :param: and :args: from docstrings by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16469
    * [java] JSpecify annotations for `org.openqa.selenium.federatedcredent…
    by @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16461
    * [java] JSpecify annotations for `org.openqa.selenium.interactions` by
    @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16462
    * [java][rb] Remove cruft from old Travis CI environment by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16473
    * [java] JSpecify annotations for `org.openqa.selenium.net` by @​mk868
    in https://github.com/SeleniumHQ/selenium/pull/16463
    * [rb] remove deprecated classes for previous implementation of log han…
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16474
    * [build] minimize number of ruby targets run with bidi by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16477
    * [java] JSpecify annotations for `Credential` and `MBean` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16481
    * [java] JSpecify annotations for `ScriptKey` and `UnpinnedScriptKey` by
    @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16483
    * [java] JSpecify annotations for `FileDetector` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16482
    * [java] JSpecify annotations for `ExpectedCondition` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16489
    * [java] JSpecify annotations for `Response` `SessionId` `HttpSessionId`
    by @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16490
    * [rb][build] improve ruby local_dev generation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16495
    * [build] removing test_tag_filter tag that isn't being used anywhere by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16496
    * [rb][build] disable dev shm for Chrome and Edge on RBE by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16497
    * [rb] update syntax with rspec linter by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16498
    * [java][bidi]: add test for `onHistoryUpdated` event by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16293
    * [py] Bump version of ruff formatter/linter by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16502
    * [rust] Fixe Edge version test by @​bonigarcia in
    https://github.com/SeleniumHQ/selenium/pull/16501
    * [py][bidi]: add `set_timezone_override` command in emulation by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16500
    * [py] Cleanup and convert more doctrings to google-style by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/16503
    * [build] fix update-documentation workflow by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16505
    * fix workflows for updating documentation from stage release by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16506
    
    </details>
    
    **Full Changelog**:
    https://github.com/SeleniumHQ/selenium/compare/selenium-4.37.0...selenium-4.38.0
    
    ## 4.37.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Re-add defaults for Chromium kwargs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16372
    * Splitting stress tests by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/16374
    * [rb] Update Chrome/Edge args for test environment by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16376
    * [dotnet] [bidi] Emulation module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16380
    * [py] Remove old test xfail markers from Travis CI by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16377
    * [dotnet] [bidi] Implement browsing context download events by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16382
    * [dotnet] [bidi] Support browser SetDownloadBehaviour command by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16383
    * [dotnet] [bidi] Support network SetExtraHeaders command by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16384
    * [py][build] Python CI - add unit test job and windows integration
    tests to GH runners by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16362
    * [java] Linux ARM "os.arch" system property is "aarch64" by @​mkurz in
    https://github.com/SeleniumHQ/selenium/pull/16381
    * [dotnet] [bidi] AOT safe enums serialization by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16386
    * [dotnet] Handle negative zero BiDi response by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/15898
    * [dotnet] Move JSON converter attributes from centralized options into
    their respective types by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16393
    * [py] Fix Selenium Manager tests on Windows by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16391
    * [py] Fix chromedriver/msedgedriver service tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16395
    * [dotnet] [bidi] Modules as extensions by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16392
    * [dotnet] [bidi] Provide type info immediately when serializing by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16397
    * [bidi] [dotnet] Use events JsonTypeInfo for deserialization by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16402
    * [dotnet] Replace lazy caching mechanism in BiDi's constructor with
    simple initialization by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16399
    * [py][build] Re-add Windows to CI workflows by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16396
    * [dotnet] Help more .NETFramework projects to copy SM binaries to
    output by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16406
    * [dotnet] [bidi] Specific result type for any command by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16405
    * [dotnet] [bidi] Deserialize message fast instead of defer it by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16403
    * [dotnet] [bidi] Remove IEnumerable of command results by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16219
    * [dotnet] Remove obsoleted FtpProxy by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16411
    * [py] Configure WebSocket timeout and wait interval via ClientConfig by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16248
    * [java] Rescuing the remote cause for session creation errors by
    @​diemol in https://github.com/SeleniumHQ/selenium/pull/16418
    * [py] Add test for BiDi request handlers with classic navigation by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16421
    * [java] NullAway added by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16416
    * [java] feat: Add native Java 11 HTTP client methods to HttpClient
    interface by @​manuelsblanco in
    https://github.com/SeleniumHQ/selenium/pull/16412
    * [py] Raise NotImplementedError when deleting downloads in driver
    subclass by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16423
    * [java] refactor(remote/command): Merge overload's business logic by
    @​nnnnoel in https://github.com/SeleniumHQ/selenium/pull/14469
    * [py] Fix default rpId in virtual authenticator by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16428
    * make augmentation of HasBiDi/HasDevTools lazy-loaded by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16338
    * [py] Update docstrings style by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16427
    * [py] Support Python 3.14 and drop Python 3.9 by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16342
    * Removing FF guard for canListenToDownloadWillBeginEvent by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/16439
    * Adapting the browser_protocol file fetching to the file structure
    change. by @​diemol in https://github.com/SeleniumHQ/selenium/pull/16440
     ... (truncated)
    
    ## 4.36.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py]: close ipv6 port in case of error by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16165
    * [docs] Update issue label in CONTRIBUTING.md by @​pallavigitwork in
    https://github.com/SeleniumHQ/selenium/pull/16169
    * [py][docs]: update dead API docs link to API reference in `index.rst`
    by @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16170
    * [grid] close the HttpClient after the session is gone by @​joerg1985
    in https://github.com/SeleniumHQ/selenium/pull/16182
    * [py] Update docstring and comments in keys.py by @​Aidoni0797 in
    https://github.com/SeleniumHQ/selenium/pull/16187
    * [dotnet] [bidi] Simplify type naming of internal command parameters by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16188
    * [py] Fix formatting by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16189
    * [dotnet] [bidi] Support WebExtension module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15850
    * [rb][BiDi] Create browser module, added user context related methods
    by @​aguspe in https://github.com/SeleniumHQ/selenium/pull/15371
    * [docs] Update bug report section in CONTRIBUTING.md by
    @​pallavigitwork in https://github.com/SeleniumHQ/selenium/pull/16191
    * [dotnet] Adding flag to enable SafariDriver logging. by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/16196
    * [java] extend the scope of the properties of the HttpCommandExecutor
    class by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16186
    * [dotnet] [bidi] Serialize base64 encoded string directly to bytes by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16203
    * [dotnet] [bidi] Make cookie expiry as TimeSpan by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16204
    * [grid] Improve readTimeout in handle session between Router and Node
    by @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16163
    * [py] Fix type annotation error and raise clearer error message by
    @​Paresh-0007 in https://github.com/SeleniumHQ/selenium/pull/16174
    * [java] Unifying select class by @​vicky-iv in
    https://github.com/SeleniumHQ/selenium/pull/16220
    * [rust] Update dependency rules_cc to v0.2.0 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16198
    * [js] Update testing-library monorepo by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16173
    * [js] Update dependency tmp to ^0.2.5 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16172
    * [dotnet] Update dependency System.Text.Json to 8.0.6 by
    @​renovate[bot] in https://github.com/SeleniumHQ/selenium/pull/16171
    * [js] Update dependency react-router-dom to v6.30.1 by @​renovate[bot]
    in https://github.com/SeleniumHQ/selenium/pull/16076
    * [js] Update material-ui monorepo to v5.18.0 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16062
    * [js] Update dependency ws to ^8.18.3 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16009
    * [js] Update react monorepo by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/15949
    * [java] Update dependency net.bytebuddy:byte-buddy to v1.17.7 by
    @​renovate[bot] in https://github.com/SeleniumHQ/selenium/pull/16237
    * [py] Update dependency charset-normalizer to v3.4.3 by @​renovate[bot]
    in https://github.com/SeleniumHQ/selenium/pull/16239
    * [py] Update dependency cryptography to v45.0.6 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16240
    * Revert "[py] Update dependency charset-normalizer to v3.4.3" by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16242
    * Revert "[py] Update dependency cryptography to v45.0.6" by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16243
    * [py] Bump dependencies for dev and fix script by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16244
    * [dotnet] Help old .net framework copy selenium manager to output by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16228
    * [java] Add hooks around getScreenshotAs in WebDriverListener #​16232
    by @​giulong in https://github.com/SeleniumHQ/selenium/pull/16233
    * [py][bidi]: enable `history_updated` event test by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16236
    * [py] Bump ruff version for linting/formatting by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16254
    * [py][bidi]: use bidi `navigate` command in network tests by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/16251
    * [dotnet] Fix find port for IPv4 only environments by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16216
    * [dotnet] [bidi] Adjust cookie expiry type according spec (unix
    seconds) by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16218
     ... (truncated)
    
    ## 4.35.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at 1c58e5028bc5eaa94b12b856c2d4a87efa5363f5 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [dotnet] [bidi] Get tree command returns GetTreeResult object by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15978
    * [dotnet] [bidi] Initialize internal modules without Lazy by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15979
    * [py] Bump dependencies for building distribution wheel by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15977
    * bump zip version 2.6.1 -> 4.2.0 by @​MRTamalampudi in
    https://github.com/SeleniumHQ/selenium/pull/15980
    * [py][bidi]: add note for `enable_webextensions = False` by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/15981
    * [py][bidi]: add high level API for script module - `pin`, `unpin` and
    `execute` by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15936
    * [py][java][rb][ci]: use pinned browsers in CI by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15987
    * [java] Remove deprecated AppCacheStatus enum from the HTML5 package by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15973
    * [java] Feat 14291/jspecify nullable annotation edge driver service by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15972
    * [java] Fix Unicode value for OPTION key in Keys enum by @​iampopovich
    in https://github.com/SeleniumHQ/selenium/pull/15966
    * [dotnet][java][js][py][rb][rust] Update rules_jvm_external digest to
    aca619b by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/15951
    * [java] Removing old stream collectors required by Java 8 by @​zodac in
    https://github.com/SeleniumHQ/selenium/pull/15523
    * [java] Use static Patterns for regex-matching by @​zodac in
    https://github.com/SeleniumHQ/selenium/pull/15499
    * [java] Point made as immutable by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/15511
    * [java] Feat 14291/jspecify nullable annotation chrome driver såervice
    by @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15998
    * [py] Bump dev dependencies by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16002
    * [grid] Add "URI" to the list of sort-by choices on Overview UI by
    @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16004
    * [java] Add @​Nullable annotations to Firefox and Gecko driver service
    by @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15999
    * [java] Add JSpecify nullable annotations to SafariDriverService
    parameters by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16000
    * [java] Add @​Nullable annotations to InternetExplorerDriverService
    parameters by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16001
    * use generics for AbstractFindByBuilder to avoid excessive casting by
    @​asolntsev in https://github.com/SeleniumHQ/selenium/pull/15526
    * [js] Update dependency @​emotion/styled to v11.14.1 by @​renovate[bot]
    in https://github.com/SeleniumHQ/selenium/pull/15997
    * [rust] Update which from 7.0.3 to 8.0.0 by @​musicinmybrain in
    https://github.com/SeleniumHQ/selenium/pull/15965
    * Fix various typos by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16012
    * [java] JSpecify annotations for By locators by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/14372
    * Fix email address in .mailmap by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16017
    * Fix typos in javascript & rb by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16019
    * [java] JSpecify annotations for capabilities by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/14397
    * Fix various typos in comments by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16022
    * [dotnet] Fix typos by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16032
    * [dotnet] [bidi] Add UnhandledPromptBehavior option to create User
    Context by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16034
    * [py] Fix path in unit test so it works cross-platform by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16033
    * [py][bidi]: implement bidi module - emulation by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15819
    * [py] Fix API doc generation script and include BiDi Emulation docs by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16037
    * [py] Allow free_port() to bind to IPv6 if IPv4 is unavailable by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16003
    * [build] Update base URL for Edge web driver by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16057
    * [rust] Update base URL for Edge web driver by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16056
     ... (truncated)
    
    ## 4.34.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at 2a4c61c498207b17cdb2f5f987c7c71dca146c2d -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [ci] Clear warning from Grid UI component tests by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/15783
    * [py] Fix pytest_ignore_collect hook to respect --ignore by @​mgorny in
    https://github.com/SeleniumHQ/selenium/pull/15787
    * [py] Increase timeout in devtools test by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15793
    * [py] Upgrade type hints by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15784
    * [dotnet] [bidi] Add AcceptInsecureCerts and Proxy options when create
    new user context by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15795
    * [grid] Silent fail on invalid log level by @​Oxilod in
    https://github.com/SeleniumHQ/selenium/pull/15796
    * Bump setup-bazel action by @​p0deje in
    https://github.com/SeleniumHQ/selenium/pull/15802
    * Don't silence stderr in format.sh by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15804
    * [dotnet] [bidi] Declare allowed nullable objects in constructors type
    by @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15809
    * Fix type error for attribute in remote_connection.py by @​Bradltr95 in
    https://github.com/SeleniumHQ/selenium/pull/15810
    * [py] Lint Python with ruff by @​p0deje in
    https://github.com/SeleniumHQ/selenium/pull/15811
    * fixed error in selenium/webdriver/common/bidi/common.py:19 by
    @​pallavigitwork in https://github.com/SeleniumHQ/selenium/pull/15814
    * [py] Fix import for type hint by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15817
    * [py] Bump ruff version by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15818
    * [dotnet] [bidi] Simplify modules namespace for end users (breaking
    change) by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15820
    * [dotnet] Remove unnecessary stylecop files by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15824
    * [py] Lint and format all python files by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15828
    * [py][bidi]: add `enable_webextensions` option for chromium-based
    browsers by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15794
    * [py] Auto-generate Python API docs from code by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15822
    * [py] Fix python API docs publishing at readthedocs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15832
    * Change flag for Chrome/Edge headless mode in tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15831
    * [py] Cleanup tox config by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15833
    * [rb] Add support for beta chrome by @​aguspe in
    https://github.com/SeleniumHQ/selenium/pull/15417
    * Revert "[rb] Add support for beta chrome" by @​aguspe in
    https://github.com/SeleniumHQ/selenium/pull/15837
    * [py] Fix: Mypy type annotation errors by @​ShauryaDusht in
    https://github.com/SeleniumHQ/selenium/pull/15841
    * [py] New script to update Python dependencies by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15845
    * fixed errors in browser.py for 15697 by @​pallavigitwork in
    https://github.com/SeleniumHQ/selenium/pull/15847
    * [py][bidi]: implement bidi permissions module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15830
    * [py] Regeneratee py/docs/source/api.rst by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15856
    * [dotnet] Align CS projects name to understand the editing context by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15843
    * [py][bidi]: enable edge bidi storage test - `test_get_all_cookies` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/15859
    * Caching the size/length in loops to slightly improve performance by
    @​LuisOsv in https://github.com/SeleniumHQ/selenium/pull/15852
    * Update exceptions.py by @​adolfoarmas in
    https://github.com/SeleniumHQ/selenium/pull/15862
    * Revert "Update exceptions.py" by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15864
    * [py] Re-apply #​15862 by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15865
    * [py] fix driver_element_finding_tests.py by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/15863
    * [py] Fix another broken test by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15866
     ... (truncated)
    
    ## 4.33.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at 2c6aaad03a575cd93e4f063f91404e3ae66a7470 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Exclude devtools directory from type checking by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15695
    * [py] Add clean_options fixture and remove all Python tests from
    .skipped-tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15696
    * [java][bidi]: enable tests for storage module for edge by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/15667
    * [py][bidi]: add bidi storage module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15669
    * [build] allow GitHub Actions runner to use 4GB for JVM Heap by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/15692
    * update old freenode channel link to libera by @​t7ru in
    https://github.com/SeleniumHQ/selenium/pull/15698
    * fixing mypy error from #​15693 by @​bandophahita in
    https://github.com/SeleniumHQ/selenium/pull/15705
    * [java] Removing deprecated items in Require.java by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/15711
    * [java] Removing RemoteStatus as it was deprecated. by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/15712
    * [rb] move all guard and zipper tests to unit tests by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/15717
    * [rust] Replace WMIC commands (deprecated) by WinAPI in Windows by
    @​bonigarcia in https://github.com/SeleniumHQ/selenium/pull/15363
    * [py][BiDi] use constant for LogLevel by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/15677
    * Let firefox choose the bidi port by default by @​tomhughes in
    https://github.com/SeleniumHQ/selenium/pull/15727
    * [rb] Upgrade to Ruby 3.2 by @​p0deje in
    https://github.com/SeleniumHQ/selenium/pull/15714
    * [py] Missing Headers Assignment in Network Class’s _on_request() by
    @​shbenzer in https://github.com/SeleniumHQ/selenium/pull/15736
    * [py] correct type annotations of default-None params by
    @​DeflateAwning in https://github.com/SeleniumHQ/selenium/pull/15341
    * [py] Add missing 'id' property to ShadowRoot class by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15739
    * [py] Bump Python package requirements to latest versions by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15731
    * [py] Use ruff for linting and code formatting by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15746
    * [py]: return `message` as part of exception in `execute` method by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/15751
    * [py][tests]: check for .txt file in remote download test by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/15758
    * [java] Removing deprecated `setScriptTimeout` and `pageLoadTimeout`.
    by @​diemol in https://github.com/SeleniumHQ/selenium/pull/15764
    * [py][bidi]: add bidi webExtension module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15749
    * [py] Better error for downloads on local webdrivers by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15756
    * [py] Add missing modules to python API docs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15779
    * [ci] Workflow for Grid UI component tests by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/15778
    * [grid] UI Sessions capability fields to display as additional columns
    by @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/15759
    * [grid] UI Overview is able to see live preview per Node by @​VietND96
    in https://github.com/SeleniumHQ/selenium/pull/15777
    
    ## New Contributors
    * @​t7ru made their first contribution in
    https://github.com/SeleniumHQ/selenium/pull/15698
    * @​tomhughes made their first contribution in
    https://github.com/SeleniumHQ/selenium/pull/15727
    * @​DeflateAwning made their first contribution in
    https://github.com/SeleniumHQ/selenium/pull/15341
    
    </details>
    
    **Full Changelog**:
    https://github.com/SeleniumHQ/selenium/compare/selenium-4.32.0...selenium-4.33.0
    
    ## 4.32.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at d17c8aa95092dc25ae64f12e7abdc844cf3503f0 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Fix test args for --headless and --bidi by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15567
    * [py] Only skip WebKit tests on Windows by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15470
    * [dotnet] [bidi] Revisit some core functionality to deserialize without
    intermediate `JsonElement` allocation by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15575
    * [py] Fix broken test for chromedriver logging by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15579
    * [py] Fix test for w3c touch pointer properties by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15580
    * [py] Fix FedCM tests leaking state by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15583
    * [dotnet] [bidi] Address BiDi's JSON converter AOT warnings by
    @​RenderMichael in https://github.com/SeleniumHQ/selenium/pull/15390
    * [dotnet] [bidi] Added missing GenericLogEntry log entry type in Script
    module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15591
    * [grid] Ignored options when they are prefixed, safari specif as well
    by @​diemol in https://github.com/SeleniumHQ/selenium/pull/15574
    * [py] Remove broken logo from Sphinx generated API docs by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15597
    * [py] Fix PyTest configuration for WPEWebKit by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15602
    * [py] Fix failing test for Edge logging by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15605
    * [rb] Add PrintOptions Implementation for Ruby WebDriver by @​yvsvarma
    in https://github.com/SeleniumHQ/selenium/pull/15158
    * [py] BiDi Network implementation of Intercepts and Auth in Python by
    @​shbenzer in https://github.com/SeleniumHQ/selenium/pull/14592
    * [py] Use XWayland for internal Python Firefox tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15601
    * [py] Use mock.patch for environment variables in tests by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15607
    * [ruby] fix lint for print_options.rb by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/15608
    * [py] Configure readthedocs publishing for Python API docs by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15614
    * [py] Fix select being able to select options hidden by css rules by
    @​FFederi in https://github.com/SeleniumHQ/selenium/pull/15135
    * [py][bidi]: Implement BiDi browser module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15616
    * [dotnet] [bidi] Combine network interception to apply rules (breaking
    change) by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15603
    * [dotnet] [bidi] Add strongly-typed `LocalValue.ConvertFrom` overloads
    by @​RenderMichael in https://github.com/SeleniumHQ/selenium/pull/15532
    * [py] Add missing modules to Python API docs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15624
    * [dotnet] [bidi] Do not throw when CallFunction or Evaluate return
    exceptional result (breaking change) by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/15521
    * [py] Skip bidi tests on browsers that don't support bidi by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15625
    * [py] complete
    `test_should_throw_an_exception_if_an_alert_has_not_been_dealt_with_and_dismiss_the_alert`
    by @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/15559
    * [py] Remove unused xfail on chrome/edge service tests by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15637
    * [py] Adjust xfail markers for window size/position tests by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15638
    * [py] Call service.stop() when session can't be started by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15636
    * [dotnet] [bidi] Reuse memory when receiving websocket messages by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15640
    * [py] Remove logging API for non-Chromium browsers by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15641
    * [py] Raise TypeError when creating webdriver.Remote() without options
    by @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15619
    * [py] Upgrade dependencies for mypy tox environment by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15642
    * [py] Fix Remote Firefox tests on Linux/Wayland by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15648
    * [dotnet] Enhance Selenium Manager platform detection by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/15649
    * [dotnet] Use namespace file scoped by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15651
    * [py] Fix flaky WebDriverWait tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15650
     ... (truncated)
    
    Commits viewable in [compare
    view](https://github.com/SeleniumHQ/selenium/compare/selenium-4.31.0...selenium-4.41.0).
    </details>
    
    Updated [Selenium.WebDriver](https://github.com/SeleniumHQ/selenium)
    from 4.31.0 to 4.41.0.
    
    <details>
    <summary>Release notes</summary>
    
    _Sourced from [Selenium.WebDriver's
    releases](https://github.com/SeleniumHQ/selenium/releases)._
    
    ## 4.41.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    <!-- Release notes generated using configuration in .github/release.yml
    at selenium-4.41.0 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Remove type stub packages from runtime dependencies by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16945
    * Canonical approach to supporting AI agent directions by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16735
    * [build] Pre-release workflow improvements by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16946
    * [build] Prevent nightly releases during release window by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16948
    * [build] Fix Bazel NuGet push implementation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16950
    * [build] Release workflow improvements by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16947
    * [build] Fix Bazel JSDocs implementation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16949
    * [build] Create config files from environment variables for publishing
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16951
    * [js] create task to update dependencies by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16942
    * [build] Java release improvements and build verification tasks by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16952
    * [py] integrate mypy type checking with Bazel by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16958
    * [build] Migrate workflows to use centralized bazel.yml by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16955
    * [dotnet] [bidi] Simplify context aware command options by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16954
    * [build] simplify release.yml: remove draft, build once during publish
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16960
    * [dotnet] [bidi] AOT safe json converter for `Input.Origin` class by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16962
    * [dotnet] [bidi] AOT safe json converter for `OptionalConverter` by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16963
    * [dotnet] [bidi] Null guard for event handlers by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16967
    * [java] Improve error message for died grid by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16938
    * [build] combine pre-release dependency updates by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16973
    * [rb] remove stored atoms these get generated by build by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16971
    * [dotnet] [bidi] Unignore some internal tests by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16968
    * [build] run ruff on python files outside py directory by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16957
    * [py] Fix return type hint for `alert_is_present` by @​nemowang2003 in
    https://github.com/SeleniumHQ/selenium/pull/16975
    * Replace hardcoded bazel-selenium references with dynamic path
    resolution by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16976
    * No More CrazyFun! by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16972
    * [build] Remove update_gh_pages in favor of CI workflow by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16977
    * [build] Remove legacy rake helpers and unused code by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16978
    * [py] make bazel test target names consistent with other languages by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16969
    * [dotnet] [bidi] Fix namespace for Permissions module by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16981
    * [dotnet] [bidi] Hide Broker as internal implementation by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16982
    * [dotnet] [bidi] Refactor BiDi module initialization to pass BiDi
    explicitly by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16983
    * [build] Add DocFX updater script by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16980
    * [build] add reusable commit-changes.yml workflow by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16965
    * [java] fix JSON parsing of numbers with exponent by @​joerg1985 in
    https://github.com/SeleniumHQ/selenium/pull/16961
    * [build] Skip macOS-only archive rules on unsupported platforms by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16985
    * [build] Split Rakefile into per-language task files by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16979
    * Implement fast bazel target lookup with index caching by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16974
    * [build] Remove git.add() calls from rake tasks by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16994
    * [js] Add eslint binary target for selenium-webdriver by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16992
     ... (truncated)
    
    ## 4.40.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images…
    PhilipWoulfe added a commit to PhilipWoulfe/F1Competition that referenced this pull request Mar 16, 2026
    Updated [Selenium.WebDriver](https://github.com/SeleniumHQ/selenium)
    from 4.31.0 to 4.41.0.
    
    <details>
    <summary>Release notes</summary>
    
    _Sourced from [Selenium.WebDriver's
    releases](https://github.com/SeleniumHQ/selenium/releases)._
    
    ## 4.41.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    <!-- Release notes generated using configuration in .github/release.yml
    at selenium-4.41.0 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Remove type stub packages from runtime dependencies by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16945
    * Canonical approach to supporting AI agent directions by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16735
    * [build] Pre-release workflow improvements by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16946
    * [build] Prevent nightly releases during release window by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16948
    * [build] Fix Bazel NuGet push implementation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16950
    * [build] Release workflow improvements by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16947
    * [build] Fix Bazel JSDocs implementation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16949
    * [build] Create config files from environment variables for publishing
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16951
    * [js] create task to update dependencies by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16942
    * [build] Java release improvements and build verification tasks by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16952
    * [py] integrate mypy type checking with Bazel by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16958
    * [build] Migrate workflows to use centralized bazel.yml by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16955
    * [dotnet] [bidi] Simplify context aware command options by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16954
    * [build] simplify release.yml: remove draft, build once during publish
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16960
    * [dotnet] [bidi] AOT safe json converter for `Input.Origin` class by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16962
    * [dotnet] [bidi] AOT safe json converter for `OptionalConverter` by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16963
    * [dotnet] [bidi] Null guard for event handlers by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16967
    * [java] Improve error message for died grid by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16938
    * [build] combine pre-release dependency updates by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16973
    * [rb] remove stored atoms these get generated by build by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16971
    * [dotnet] [bidi] Unignore some internal tests by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16968
    * [build] run ruff on python files outside py directory by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16957
    * [py] Fix return type hint for `alert_is_present` by @​nemowang2003 in
    https://github.com/SeleniumHQ/selenium/pull/16975
    * Replace hardcoded bazel-selenium references with dynamic path
    resolution by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16976
    * No More CrazyFun! by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16972
    * [build] Remove update_gh_pages in favor of CI workflow by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16977
    * [build] Remove legacy rake helpers and unused code by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16978
    * [py] make bazel test target names consistent with other languages by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16969
    * [dotnet] [bidi] Fix namespace for Permissions module by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16981
    * [dotnet] [bidi] Hide Broker as internal implementation by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16982
    * [dotnet] [bidi] Refactor BiDi module initialization to pass BiDi
    explicitly by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16983
    * [build] Add DocFX updater script by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16980
    * [build] add reusable commit-changes.yml workflow by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16965
    * [java] fix JSON parsing of numbers with exponent by @​joerg1985 in
    https://github.com/SeleniumHQ/selenium/pull/16961
    * [build] Skip macOS-only archive rules on unsupported platforms by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16985
    * [build] Split Rakefile into per-language task files by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16979
    * Implement fast bazel target lookup with index caching by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16974
    * [build] Remove git.add() calls from rake tasks by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16994
    * [js] Add eslint binary target for selenium-webdriver by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/16992
     ... (truncated)
    
    ## 4.40.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [dotnet] Modernize `EnvironmentManager`, standardize assembly teardown
    by @​RenderMichael in https://github.com/SeleniumHQ/selenium/pull/15551
    * [java] Refactor tests by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16684
    * [ci]: bump cargo lockfile by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16698
    * [java][BiDi] change emulation commands return type to void by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16699
    * [java] simplify strings processing by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/15309
    * Fix few more flaky ruby tests by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16695
    * [bazel] Switch to custom `closure_js_deps` rule by @​shs96c in
    https://github.com/SeleniumHQ/selenium/pull/16571
    * [dotnet] [bidi] Support SetScreenSettingsOverrideAsync method in
    Emulation module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16704
    * [dotnet] Modernize code patterns in test suites by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16701
    * use proper AssertJ asserts that generate a useful error message by
    @​asolntsev in https://github.com/SeleniumHQ/selenium/pull/16707
    * fix Java language level in IDEA by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16708
    * [py] Properly verify Selenium Manager exists by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16711
    * fix flaky Ruby test `element_spec.rb` by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16709
    * [java][BiDi] implement `emulation.setScreenOrientationOverride` by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16705
    * [rb] add synchronization and error handling for socket interactions by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16487
    * [rb] mark low level bidi implementation as private api by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16475
    * [rb] ensure driver process is always stopped by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/15635
    * [rb] create user-friendly method for enabling bidi by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/14284
    * [dotnet] [bidi] Added missing Script.RemoteReference LocaclValue type
    by @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16717
    * [dotnet] Standardize `IEquatable<T>` implementations across types
    overriding Equals by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16665
    * [dotnet] Fix nullability warnings in `WebDriver` by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16662
    * [py] Don't compare object identity in conftest by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16723
    * #​16720 avoid failing because of temporary Chrome internal files by
    @​asolntsev in https://github.com/SeleniumHQ/selenium/pull/16722
    * [rb] Add force encoding to remove warnings caused by json 3.0 by
    @​aguspe in https://github.com/SeleniumHQ/selenium/pull/16728
    * [py] Remove deprecated FTP proxy support by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16721
    * [py] Bump ruff and mypy versions by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16737
    * Create target directories before copying file by @​MohabMohie in
    https://github.com/SeleniumHQ/selenium/pull/16739
    * [bazel+closure]: Vendor the version of closure library we use by
    @​shs96c in https://github.com/SeleniumHQ/selenium/pull/16742
    * [closure] Fix failing `//javascript/atoms:test-*` targets by @​shs96c
    in https://github.com/SeleniumHQ/selenium/pull/16749
    * Avoid sleep in tests by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16713
    * [bazel] Bump `rules_closure` and google closure libary to latest
    release by @​shs96c in https://github.com/SeleniumHQ/selenium/pull/16755
    * [refactor] call WebDriverException constructor instead of using
    reflection by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16763
    * [build] Pin Browsers in Bazel by default by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16743
    * [build] build selenium manager for tests by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16736
    * [refactor] replace JUnit assertions by AssertJ by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16765
    * [py] Add LocalWebDriver base class by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16730
    * Fix bug in FileHandler: it always failed on MacOS by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16771
    * [java] add missing bazel artifacts by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16773
     ... (truncated)
    
    ## 4.39.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [atoms] fix text node children are always considered as displayed
    #​16284 by @​joerg1985 in
    https://github.com/SeleniumHQ/selenium/pull/16329
    * [grid] Enhance UI with theme integration and improved status
    indicators by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/16512
    * [py][bidi]: add emulation command - `set_locale_override` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16504
    * [py][bidi]: add emulation command `set_scripting_enabled` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16513
    * [py] Update docstrings to google pydoc format by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16511
    * [java][BiDi] implement `browsingContext.downloadEnd` event by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16347
    * Fix typo and minor formatting changes in README.md by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16523
    * [py] Update docstrings (remove reST leftovers and resolve D200) by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/16525
    * [py] Fix docstring formatting and apply ruff linting rules by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16527
    * [py] Fix Ruff D417 warnings in docstrings by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16535
    * [py] Fix ruff D415 warnings in docstrings by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16536
    * [py][bidi]: add `set_screen_orientation_override` command in Emulation
    by @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16522
    * [py] Fix D205 ruff warnings for docstrings and add type hints by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/16537
    * [py][bidi]: add `set_download_behavior` command by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16556
    * [py] Bump pytest and dev dependencies by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16572
    * [bazel] Move `rules_rust` to `bzlmod` by @​shs96c in
    https://github.com/SeleniumHQ/selenium/pull/16566
    * [ci] Make a PR for updating mirror file instead of pushing directly to
    trunk by @​bonigarcia in
    https://github.com/SeleniumHQ/selenium/pull/16579
    * [ci] Update mirror info (2025-11-11T15:26:46Z) by
    @​github-actions[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16578
    * [ci] Revert latest changes related to the mirror workflow by
    @​bonigarcia in https://github.com/SeleniumHQ/selenium/pull/16580
    * [java]: refactor request interception tests and handle CORS by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16585
    * [py][bidi]: enable download event tests for firefox by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16587
    * [py] Fix more type annotations by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16551
    * [java][BiDi] implement `emulation.setTimezoneOverride` by @​Delta456
    in https://github.com/SeleniumHQ/selenium/pull/16530
    * [grid] Minimum Docker API 1.44 for Docker Engine v29+ in Dynamic Grid
    by @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16591
    * Show file modification time by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16589
    * [py][bidi]: add emulation command `set_user_agent_override` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16595
    * [grid] Improve Docker client for Dynamic Grid by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/16596
    * [py]: reuse driver in case of bidi tests by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16597
    * [grid] Improve browser container labels and naming in Dynamic Grid by
    @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16599
    * [build] Upgrade rules_dotnet to 0.20.5 by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16592
    * [dotnet] [bidi] Simplify namespace for communications by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16602
    * [py] Improve type hints with union syntax and native types by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16590
    * [py] Use double quotes in generate.py by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/16607
    * [ci] Use pagination in mirror workflow to get all Selenium releases by
    @​bonigarcia in https://github.com/SeleniumHQ/selenium/pull/16605
    * [dotnet] Generate atoms statically by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16608
    * [nodejs] Update dev dependencies to fix vulnerabilities by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16610
    * [java][BiDi] emulation: allow passing null to GeolocationOverride by
    @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/16594
    * [grid] Update container label `compose.oneoff` in Dynamic Grid by
    @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16613
     ... (truncated)
    
    ## 4.38.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [dotnet] [bidi] Avoid using JsonInclude attribute to include optional
    property for DTO by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16413
    * [rb] Bump prism to 1.6.0 by @​Earlopain in
    https://github.com/SeleniumHQ/selenium/pull/16450
    * [java] JSpecify annotations for `ExecuteMethod` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16464
    * [rb] Fix Network issue by removing nil values on network requests by
    @​aguspe in https://github.com/SeleniumHQ/selenium/pull/16442
    * [py] Replaced :param: and :args: from docstrings by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16469
    * [java] JSpecify annotations for `org.openqa.selenium.federatedcredent…
    by @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16461
    * [java] JSpecify annotations for `org.openqa.selenium.interactions` by
    @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16462
    * [java][rb] Remove cruft from old Travis CI environment by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16473
    * [java] JSpecify annotations for `org.openqa.selenium.net` by @​mk868
    in https://github.com/SeleniumHQ/selenium/pull/16463
    * [rb] remove deprecated classes for previous implementation of log han…
    by @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16474
    * [build] minimize number of ruby targets run with bidi by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16477
    * [java] JSpecify annotations for `Credential` and `MBean` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16481
    * [java] JSpecify annotations for `ScriptKey` and `UnpinnedScriptKey` by
    @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16483
    * [java] JSpecify annotations for `FileDetector` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16482
    * [java] JSpecify annotations for `ExpectedCondition` by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16489
    * [java] JSpecify annotations for `Response` `SessionId` `HttpSessionId`
    by @​mk868 in https://github.com/SeleniumHQ/selenium/pull/16490
    * [rb][build] improve ruby local_dev generation by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16495
    * [build] removing test_tag_filter tag that isn't being used anywhere by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16496
    * [rb][build] disable dev shm for Chrome and Edge on RBE by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16497
    * [rb] update syntax with rspec linter by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16498
    * [java][bidi]: add test for `onHistoryUpdated` event by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16293
    * [py] Bump version of ruff formatter/linter by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16502
    * [rust] Fixe Edge version test by @​bonigarcia in
    https://github.com/SeleniumHQ/selenium/pull/16501
    * [py][bidi]: add `set_timezone_override` command in emulation by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16500
    * [py] Cleanup and convert more doctrings to google-style by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/16503
    * [build] fix update-documentation workflow by @​titusfortner in
    https://github.com/SeleniumHQ/selenium/pull/16505
    * fix workflows for updating documentation from stage release by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/16506
    
    </details>
    
    **Full Changelog**:
    https://github.com/SeleniumHQ/selenium/compare/selenium-4.37.0...selenium-4.38.0
    
    ## 4.37.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Re-add defaults for Chromium kwargs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16372
    * Splitting stress tests by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/16374
    * [rb] Update Chrome/Edge args for test environment by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16376
    * [dotnet] [bidi] Emulation module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16380
    * [py] Remove old test xfail markers from Travis CI by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16377
    * [dotnet] [bidi] Implement browsing context download events by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16382
    * [dotnet] [bidi] Support browser SetDownloadBehaviour command by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16383
    * [dotnet] [bidi] Support network SetExtraHeaders command by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16384
    * [py][build] Python CI - add unit test job and windows integration
    tests to GH runners by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16362
    * [java] Linux ARM "os.arch" system property is "aarch64" by @​mkurz in
    https://github.com/SeleniumHQ/selenium/pull/16381
    * [dotnet] [bidi] AOT safe enums serialization by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16386
    * [dotnet] Handle negative zero BiDi response by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/15898
    * [dotnet] Move JSON converter attributes from centralized options into
    their respective types by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16393
    * [py] Fix Selenium Manager tests on Windows by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16391
    * [py] Fix chromedriver/msedgedriver service tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16395
    * [dotnet] [bidi] Modules as extensions by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16392
    * [dotnet] [bidi] Provide type info immediately when serializing by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16397
    * [bidi] [dotnet] Use events JsonTypeInfo for deserialization by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16402
    * [dotnet] Replace lazy caching mechanism in BiDi's constructor with
    simple initialization by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/16399
    * [py][build] Re-add Windows to CI workflows by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16396
    * [dotnet] Help more .NETFramework projects to copy SM binaries to
    output by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16406
    * [dotnet] [bidi] Specific result type for any command by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16405
    * [dotnet] [bidi] Deserialize message fast instead of defer it by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16403
    * [dotnet] [bidi] Remove IEnumerable of command results by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/16219
    * [dotnet] Remove obsoleted FtpProxy by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16411
    * [py] Configure WebSocket timeout and wait interval via ClientConfig by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16248
    * [java] Rescuing the remote cause for session creation errors by
    @​diemol in https://github.com/SeleniumHQ/selenium/pull/16418
    * [py] Add test for BiDi request handlers with classic navigation by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16421
    * [java] NullAway added by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/16416
    * [java] feat: Add native Java 11 HTTP client methods to HttpClient
    interface by @​manuelsblanco in
    https://github.com/SeleniumHQ/selenium/pull/16412
    * [py] Raise NotImplementedError when deleting downloads in driver
    subclass by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16423
    * [java] refactor(remote/command): Merge overload's business logic by
    @​nnnnoel in https://github.com/SeleniumHQ/selenium/pull/14469
    * [py] Fix default rpId in virtual authenticator by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16428
    * make augmentation of HasBiDi/HasDevTools lazy-loaded by @​asolntsev in
    https://github.com/SeleniumHQ/selenium/pull/16338
    * [py] Update docstrings style by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16427
    * [py] Support Python 3.14 and drop Python 3.9 by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16342
    * Removing FF guard for canListenToDownloadWillBeginEvent by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/16439
    * Adapting the browser_protocol file fetching to the file structure
    change. by @​diemol in https://github.com/SeleniumHQ/selenium/pull/16440
     ... (truncated)
    
    ## 4.36.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at trunk -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py]: close ipv6 port in case of error by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16165
    * [docs] Update issue label in CONTRIBUTING.md by @​pallavigitwork in
    https://github.com/SeleniumHQ/selenium/pull/16169
    * [py][docs]: update dead API docs link to API reference in `index.rst`
    by @​navin772 in https://github.com/SeleniumHQ/selenium/pull/16170
    * [grid] close the HttpClient after the session is gone by @​joerg1985
    in https://github.com/SeleniumHQ/selenium/pull/16182
    * [py] Update docstring and comments in keys.py by @​Aidoni0797 in
    https://github.com/SeleniumHQ/selenium/pull/16187
    * [dotnet] [bidi] Simplify type naming of internal command parameters by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16188
    * [py] Fix formatting by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16189
    * [dotnet] [bidi] Support WebExtension module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15850
    * [rb][BiDi] Create browser module, added user context related methods
    by @​aguspe in https://github.com/SeleniumHQ/selenium/pull/15371
    * [docs] Update bug report section in CONTRIBUTING.md by
    @​pallavigitwork in https://github.com/SeleniumHQ/selenium/pull/16191
    * [dotnet] Adding flag to enable SafariDriver logging. by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/16196
    * [java] extend the scope of the properties of the HttpCommandExecutor
    class by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16186
    * [dotnet] [bidi] Serialize base64 encoded string directly to bytes by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16203
    * [dotnet] [bidi] Make cookie expiry as TimeSpan by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16204
    * [grid] Improve readTimeout in handle session between Router and Node
    by @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16163
    * [py] Fix type annotation error and raise clearer error message by
    @​Paresh-0007 in https://github.com/SeleniumHQ/selenium/pull/16174
    * [java] Unifying select class by @​vicky-iv in
    https://github.com/SeleniumHQ/selenium/pull/16220
    * [rust] Update dependency rules_cc to v0.2.0 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16198
    * [js] Update testing-library monorepo by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16173
    * [js] Update dependency tmp to ^0.2.5 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16172
    * [dotnet] Update dependency System.Text.Json to 8.0.6 by
    @​renovate[bot] in https://github.com/SeleniumHQ/selenium/pull/16171
    * [js] Update dependency react-router-dom to v6.30.1 by @​renovate[bot]
    in https://github.com/SeleniumHQ/selenium/pull/16076
    * [js] Update material-ui monorepo to v5.18.0 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16062
    * [js] Update dependency ws to ^8.18.3 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16009
    * [js] Update react monorepo by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/15949
    * [java] Update dependency net.bytebuddy:byte-buddy to v1.17.7 by
    @​renovate[bot] in https://github.com/SeleniumHQ/selenium/pull/16237
    * [py] Update dependency charset-normalizer to v3.4.3 by @​renovate[bot]
    in https://github.com/SeleniumHQ/selenium/pull/16239
    * [py] Update dependency cryptography to v45.0.6 by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/16240
    * Revert "[py] Update dependency charset-normalizer to v3.4.3" by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16242
    * Revert "[py] Update dependency cryptography to v45.0.6" by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16243
    * [py] Bump dependencies for dev and fix script by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16244
    * [dotnet] Help old .net framework copy selenium manager to output by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/16228
    * [java] Add hooks around getScreenshotAs in WebDriverListener #​16232
    by @​giulong in https://github.com/SeleniumHQ/selenium/pull/16233
    * [py][bidi]: enable `history_updated` event test by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/16236
    * [py] Bump ruff version for linting/formatting by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16254
    * [py][bidi]: use bidi `navigate` command in network tests by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/16251
    * [dotnet] Fix find port for IPv4 only environments by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16216
    * [dotnet] [bidi] Adjust cookie expiry type according spec (unix
    seconds) by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16218
     ... (truncated)
    
    ## 4.35.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at 1c58e5028bc5eaa94b12b856c2d4a87efa5363f5 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [dotnet] [bidi] Get tree command returns GetTreeResult object by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15978
    * [dotnet] [bidi] Initialize internal modules without Lazy by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15979
    * [py] Bump dependencies for building distribution wheel by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15977
    * bump zip version 2.6.1 -> 4.2.0 by @​MRTamalampudi in
    https://github.com/SeleniumHQ/selenium/pull/15980
    * [py][bidi]: add note for `enable_webextensions = False` by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/15981
    * [py][bidi]: add high level API for script module - `pin`, `unpin` and
    `execute` by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15936
    * [py][java][rb][ci]: use pinned browsers in CI by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15987
    * [java] Remove deprecated AppCacheStatus enum from the HTML5 package by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15973
    * [java] Feat 14291/jspecify nullable annotation edge driver service by
    @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15972
    * [java] Fix Unicode value for OPTION key in Keys enum by @​iampopovich
    in https://github.com/SeleniumHQ/selenium/pull/15966
    * [dotnet][java][js][py][rb][rust] Update rules_jvm_external digest to
    aca619b by @​renovate[bot] in
    https://github.com/SeleniumHQ/selenium/pull/15951
    * [java] Removing old stream collectors required by Java 8 by @​zodac in
    https://github.com/SeleniumHQ/selenium/pull/15523
    * [java] Use static Patterns for regex-matching by @​zodac in
    https://github.com/SeleniumHQ/selenium/pull/15499
    * [java] Point made as immutable by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/15511
    * [java] Feat 14291/jspecify nullable annotation chrome driver såervice
    by @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15998
    * [py] Bump dev dependencies by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16002
    * [grid] Add "URI" to the list of sort-by choices on Overview UI by
    @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/16004
    * [java] Add @​Nullable annotations to Firefox and Gecko driver service
    by @​iampopovich in https://github.com/SeleniumHQ/selenium/pull/15999
    * [java] Add JSpecify nullable annotations to SafariDriverService
    parameters by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16000
    * [java] Add @​Nullable annotations to InternetExplorerDriverService
    parameters by @​iampopovich in
    https://github.com/SeleniumHQ/selenium/pull/16001
    * use generics for AbstractFindByBuilder to avoid excessive casting by
    @​asolntsev in https://github.com/SeleniumHQ/selenium/pull/15526
    * [js] Update dependency @​emotion/styled to v11.14.1 by @​renovate[bot]
    in https://github.com/SeleniumHQ/selenium/pull/15997
    * [rust] Update which from 7.0.3 to 8.0.0 by @​musicinmybrain in
    https://github.com/SeleniumHQ/selenium/pull/15965
    * Fix various typos by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16012
    * [java] JSpecify annotations for By locators by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/14372
    * Fix email address in .mailmap by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/16017
    * Fix typos in javascript & rb by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16019
    * [java] JSpecify annotations for capabilities by @​mk868 in
    https://github.com/SeleniumHQ/selenium/pull/14397
    * Fix various typos in comments by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16022
    * [dotnet] Fix typos by @​noritaka1166 in
    https://github.com/SeleniumHQ/selenium/pull/16032
    * [dotnet] [bidi] Add UnhandledPromptBehavior option to create User
    Context by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16034
    * [py] Fix path in unit test so it works cross-platform by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/16033
    * [py][bidi]: implement bidi module - emulation by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15819
    * [py] Fix API doc generation script and include BiDi Emulation docs by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16037
    * [py] Allow free_port() to bind to IPv6 if IPv4 is unavailable by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/16003
    * [build] Update base URL for Edge web driver by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16057
    * [rust] Update base URL for Edge web driver by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/16056
     ... (truncated)
    
    ## 4.34.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at 2a4c61c498207b17cdb2f5f987c7c71dca146c2d -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [ci] Clear warning from Grid UI component tests by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/15783
    * [py] Fix pytest_ignore_collect hook to respect --ignore by @​mgorny in
    https://github.com/SeleniumHQ/selenium/pull/15787
    * [py] Increase timeout in devtools test by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15793
    * [py] Upgrade type hints by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15784
    * [dotnet] [bidi] Add AcceptInsecureCerts and Proxy options when create
    new user context by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15795
    * [grid] Silent fail on invalid log level by @​Oxilod in
    https://github.com/SeleniumHQ/selenium/pull/15796
    * Bump setup-bazel action by @​p0deje in
    https://github.com/SeleniumHQ/selenium/pull/15802
    * Don't silence stderr in format.sh by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15804
    * [dotnet] [bidi] Declare allowed nullable objects in constructors type
    by @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15809
    * Fix type error for attribute in remote_connection.py by @​Bradltr95 in
    https://github.com/SeleniumHQ/selenium/pull/15810
    * [py] Lint Python with ruff by @​p0deje in
    https://github.com/SeleniumHQ/selenium/pull/15811
    * fixed error in selenium/webdriver/common/bidi/common.py:19 by
    @​pallavigitwork in https://github.com/SeleniumHQ/selenium/pull/15814
    * [py] Fix import for type hint by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15817
    * [py] Bump ruff version by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15818
    * [dotnet] [bidi] Simplify modules namespace for end users (breaking
    change) by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15820
    * [dotnet] Remove unnecessary stylecop files by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15824
    * [py] Lint and format all python files by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15828
    * [py][bidi]: add `enable_webextensions` option for chromium-based
    browsers by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15794
    * [py] Auto-generate Python API docs from code by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15822
    * [py] Fix python API docs publishing at readthedocs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15832
    * Change flag for Chrome/Edge headless mode in tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15831
    * [py] Cleanup tox config by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15833
    * [rb] Add support for beta chrome by @​aguspe in
    https://github.com/SeleniumHQ/selenium/pull/15417
    * Revert "[rb] Add support for beta chrome" by @​aguspe in
    https://github.com/SeleniumHQ/selenium/pull/15837
    * [py] Fix: Mypy type annotation errors by @​ShauryaDusht in
    https://github.com/SeleniumHQ/selenium/pull/15841
    * [py] New script to update Python dependencies by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15845
    * fixed errors in browser.py for 15697 by @​pallavigitwork in
    https://github.com/SeleniumHQ/selenium/pull/15847
    * [py][bidi]: implement bidi permissions module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15830
    * [py] Regeneratee py/docs/source/api.rst by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15856
    * [dotnet] Align CS projects name to understand the editing context by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15843
    * [py][bidi]: enable edge bidi storage test - `test_get_all_cookies` by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/15859
    * Caching the size/length in loops to slightly improve performance by
    @​LuisOsv in https://github.com/SeleniumHQ/selenium/pull/15852
    * Update exceptions.py by @​adolfoarmas in
    https://github.com/SeleniumHQ/selenium/pull/15862
    * Revert "Update exceptions.py" by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15864
    * [py] Re-apply #​15862 by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15865
    * [py] fix driver_element_finding_tests.py by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/15863
    * [py] Fix another broken test by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15866
     ... (truncated)
    
    ## 4.33.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at 2c6aaad03a575cd93e4f063f91404e3ae66a7470 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Exclude devtools directory from type checking by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15695
    * [py] Add clean_options fixture and remove all Python tests from
    .skipped-tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15696
    * [java][bidi]: enable tests for storage module for edge by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/15667
    * [py][bidi]: add bidi storage module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15669
    * [build] allow GitHub Actions runner to use 4GB for JVM Heap by
    @​titusfortner in https://github.com/SeleniumHQ/selenium/pull/15692
    * update old freenode channel link to libera by @​t7ru in
    https://github.com/SeleniumHQ/selenium/pull/15698
    * fixing mypy error from #​15693 by @​bandophahita in
    https://github.com/SeleniumHQ/selenium/pull/15705
    * [java] Removing deprecated items in Require.java by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/15711
    * [java] Removing RemoteStatus as it was deprecated. by @​diemol in
    https://github.com/SeleniumHQ/selenium/pull/15712
    * [rb] move all guard and zipper tests to unit tests by @​titusfortner
    in https://github.com/SeleniumHQ/selenium/pull/15717
    * [rust] Replace WMIC commands (deprecated) by WinAPI in Windows by
    @​bonigarcia in https://github.com/SeleniumHQ/selenium/pull/15363
    * [py][BiDi] use constant for LogLevel by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/15677
    * Let firefox choose the bidi port by default by @​tomhughes in
    https://github.com/SeleniumHQ/selenium/pull/15727
    * [rb] Upgrade to Ruby 3.2 by @​p0deje in
    https://github.com/SeleniumHQ/selenium/pull/15714
    * [py] Missing Headers Assignment in Network Class’s _on_request() by
    @​shbenzer in https://github.com/SeleniumHQ/selenium/pull/15736
    * [py] correct type annotations of default-None params by
    @​DeflateAwning in https://github.com/SeleniumHQ/selenium/pull/15341
    * [py] Add missing 'id' property to ShadowRoot class by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15739
    * [py] Bump Python package requirements to latest versions by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15731
    * [py] Use ruff for linting and code formatting by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15746
    * [py]: return `message` as part of exception in `execute` method by
    @​navin772 in https://github.com/SeleniumHQ/selenium/pull/15751
    * [py][tests]: check for .txt file in remote download test by @​navin772
    in https://github.com/SeleniumHQ/selenium/pull/15758
    * [java] Removing deprecated `setScriptTimeout` and `pageLoadTimeout`.
    by @​diemol in https://github.com/SeleniumHQ/selenium/pull/15764
    * [py][bidi]: add bidi webExtension module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15749
    * [py] Better error for downloads on local webdrivers by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15756
    * [py] Add missing modules to python API docs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15779
    * [ci] Workflow for Grid UI component tests by @​VietND96 in
    https://github.com/SeleniumHQ/selenium/pull/15778
    * [grid] UI Sessions capability fields to display as additional columns
    by @​VietND96 in https://github.com/SeleniumHQ/selenium/pull/15759
    * [grid] UI Overview is able to see live preview per Node by @​VietND96
    in https://github.com/SeleniumHQ/selenium/pull/15777
    
    ## New Contributors
    * @​t7ru made their first contribution in
    https://github.com/SeleniumHQ/selenium/pull/15698
    * @​tomhughes made their first contribution in
    https://github.com/SeleniumHQ/selenium/pull/15727
    * @​DeflateAwning made their first contribution in
    https://github.com/SeleniumHQ/selenium/pull/15341
    
    </details>
    
    **Full Changelog**:
    https://github.com/SeleniumHQ/selenium/compare/selenium-4.32.0...selenium-4.33.0
    
    ## 4.32.0
    
    ## Detailed Changelogs by Component
    
    <img src="https://www.selenium.dev/images/programming/java.svg"
    width="20" height="20">
    **[Java](https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/python.svg" width="20"
    height="20">
    **[Python](https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/dotnet.svg" width="20"
    height="20">
    **[DotNet](https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/ruby.svg" width="20"
    height="20">
    **[Ruby](https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES)**
    &nbsp;&nbsp;&nbsp; | &nbsp;&nbsp;&nbsp;<img
    src="https://www.selenium.dev/images/programming/javascript.svg"
    width="20" height="20">
    **[JavaScript](https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md)**
    <br>
    
    
    
    <!-- Release notes generated using configuration in .github/release.yml
    at d17c8aa95092dc25ae64f12e7abdc844cf3503f0 -->
    
    ## What's Changed
    <details>
    <summary>Click to see all the changes included in this release</summary>
    
    * [py] Fix test args for --headless and --bidi by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15567
    * [py] Only skip WebKit tests on Windows by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15470
    * [dotnet] [bidi] Revisit some core functionality to deserialize without
    intermediate `JsonElement` allocation by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15575
    * [py] Fix broken test for chromedriver logging by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15579
    * [py] Fix test for w3c touch pointer properties by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15580
    * [py] Fix FedCM tests leaking state by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15583
    * [dotnet] [bidi] Address BiDi's JSON converter AOT warnings by
    @​RenderMichael in https://github.com/SeleniumHQ/selenium/pull/15390
    * [dotnet] [bidi] Added missing GenericLogEntry log entry type in Script
    module by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15591
    * [grid] Ignored options when they are prefixed, safari specif as well
    by @​diemol in https://github.com/SeleniumHQ/selenium/pull/15574
    * [py] Remove broken logo from Sphinx generated API docs by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15597
    * [py] Fix PyTest configuration for WPEWebKit by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15602
    * [py] Fix failing test for Edge logging by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15605
    * [rb] Add PrintOptions Implementation for Ruby WebDriver by @​yvsvarma
    in https://github.com/SeleniumHQ/selenium/pull/15158
    * [py] BiDi Network implementation of Intercepts and Auth in Python by
    @​shbenzer in https://github.com/SeleniumHQ/selenium/pull/14592
    * [py] Use XWayland for internal Python Firefox tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15601
    * [py] Use mock.patch for environment variables in tests by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15607
    * [ruby] fix lint for print_options.rb by @​Delta456 in
    https://github.com/SeleniumHQ/selenium/pull/15608
    * [py] Configure readthedocs publishing for Python API docs by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15614
    * [py] Fix select being able to select options hidden by css rules by
    @​FFederi in https://github.com/SeleniumHQ/selenium/pull/15135
    * [py][bidi]: Implement BiDi browser module by @​navin772 in
    https://github.com/SeleniumHQ/selenium/pull/15616
    * [dotnet] [bidi] Combine network interception to apply rules (breaking
    change) by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15603
    * [dotnet] [bidi] Add strongly-typed `LocalValue.ConvertFrom` overloads
    by @​RenderMichael in https://github.com/SeleniumHQ/selenium/pull/15532
    * [py] Add missing modules to Python API docs by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15624
    * [dotnet] [bidi] Do not throw when CallFunction or Evaluate return
    exceptional result (breaking change) by @​RenderMichael in
    https://github.com/SeleniumHQ/selenium/pull/15521
    * [py] Skip bidi tests on browsers that don't support bidi by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15625
    * [py] complete
    `test_should_throw_an_exception_if_an_alert_has_not_been_dealt_with_and_dismiss_the_alert`
    by @​Delta456 in https://github.com/SeleniumHQ/selenium/pull/15559
    * [py] Remove unused xfail on chrome/edge service tests by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15637
    * [py] Adjust xfail markers for window size/position tests by
    @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15638
    * [py] Call service.stop() when session can't be started by @​cgoldberg
    in https://github.com/SeleniumHQ/selenium/pull/15636
    * [dotnet] [bidi] Reuse memory when receiving websocket messages by
    @​nvborisenko in https://github.com/SeleniumHQ/selenium/pull/15640
    * [py] Remove logging API for non-Chromium browsers by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15641
    * [py] Raise TypeError when creating webdriver.Remote() without options
    by @​cgoldberg in https://github.com/SeleniumHQ/selenium/pull/15619
    * [py] Upgrade dependencies for mypy tox environment by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15642
    * [py] Fix Remote Firefox tests on Linux/Wayland by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15648
    * [dotnet] Enhance Selenium Manager platform detection by @​nvborisenko
    in https://github.com/SeleniumHQ/selenium/pull/15649
    * [dotnet] Use namespace file scoped by @​nvborisenko in
    https://github.com/SeleniumHQ/selenium/pull/15651
    * [py] Fix flaky WebDriverWait tests by @​cgoldberg in
    https://github.com/SeleniumHQ/selenium/pull/15650
     ... (truncated)
    
    Commits viewable in [compare
    view](https://github.com/SeleniumHQ/selenium/compare/selenium-4.31.0...selenium-4.41.0).
    </details>
    
    [![Dependabot compatibility
    score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=Selenium.WebDriver&package-manager=nuget&previous-version=4.31.0&new-version=4.41.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
    
    Dependabot will resolve any conflicts with this PR as long as you don't
    alter it yourself. You can also trigger a rebase manually by commenting
    `@dependabot rebase`.
    
    [//]: # (dependabot-automerge-start)
    [//]: # (dependabot-automerge-end)
    
    ---
    
    <details>
    <summary>Dependabot commands and options</summary>
    <br />
    
    You can trigger Dependabot actions by commenting on this PR:
    - `@dependabot rebase` will rebase this PR
    - `@dependabot recreate` will recreate this PR, overwriting any edits
    that have been made to it
    - `@dependabot show <dependency name> ignore conditions` will show all
    of the ignore conditions of the specified dependency
    - `@dependabot ignore this major version` will close this PR and stop
    Dependabot creating any more for this major version (unless you reopen
    the PR or upgrade to it yourself)
    - `@dependabot ignore this minor version` will close this PR and stop
    Dependabot creating any more for this minor version (unless you reopen
    the PR or upgrade to it yourself)
    - `@dependabot ignore this dependency` will close this PR and stop
    Dependabot creating any more for this dependency (unless you reopen the
    PR or upgrade to it yourself)
    
    
    </details>
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: PhilipWoulfe <philip.woulfe@gmail.com>
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Labels

    B-build Includes scripting, bazel and CI integrations C-rb Ruby Bindings Review effort 2/5

    Projects

    None yet

    Development

    Successfully merging this pull request may close these issues.

    4 participants