This release includes 3 breaking changes for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+2 more
Affected surfaces
Summary
AI summaryUpdates https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG, https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG, and https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES across a mixed release.
Full changelog
Detailed Changelogs by Component
Java | Python | DotNet | Ruby | JavaScript
What's Changed
- [build] derive PR diff base from HEAD^1 instead of trunk tip by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17438
- [build] setup trusted publishing from Github to npmrc by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17445
- [build] generate release notes from previous minor release tag by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17449
- [build] fix when to update lock files during the release process by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17450
- [java] remove deprecated logging classes by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17453
- [grid] Close pre-handshake race in WebSocket proxy by @shs96c in https://github.com/SeleniumHQ/selenium/pull/17435
- [JavaScript] Correct handling for older browsers and missing casing by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17451
- Use pyproject for Python runtime deps lock input by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17452
- [rb] deprecate curb http client support by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17443
- [javascript] Migrate find-elements atom from Closure to TypeScript by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17458
- [py] replace rules_python sphinxdocs with local sphinx_docs rule by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17461
- [build] Configure Renovate dashboard approval by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17464
- [js] update vulnerable dependency with a range by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17466
- [build] remove duplicated grid ui tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17468
- [build] update java graphpql dependency by filtering out bad reference by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17469
- [rb] upgrade to steep 2.0 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17470
- [rust] update dependencies by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17472
- [build] update GitHub Actions to latest major versions by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17475
- [dotnet] update dev dependencies by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17474
- [dotnet] fix template caching by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17476
- [dotnet] update system.text.json to 8.0.6 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17477
- [js] update dev dependencies by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17479
- [dotnet] upgrade paket from v9 to v10 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17481
- [build] bump bazel version to 9.1 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17480
- [rust] update zip to v8 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17485
- [js] update eslint to v10 with fixes by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17482
- [rb] Update ruby to 3.3.9 by @aguspe in https://github.com/SeleniumHQ/selenium/pull/17484
- [dotnet] include snupkg files when packaging things up and allow the use of sourcelink by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17467
- [build] update download-artifact to v8 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17493
- [dotnet] run format against slnx instead of looping csproj by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17483
- [build] bump low-risk Bazel module dependencies by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17494
- [rust] update reqwest to 0.13 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17488
- [dotnet] [build] Fix remote linkage in SourceLink by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17495
- [build] remove renovate update requests pending work done in #17427 by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17498
- [dotnet] [build] Support deterministic build output by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17497
- [build] bump ruby versions to latest patch releases by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17496
- [js] remove npm dependency by using bazel for everything by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17499
- [build] bump rules_jvm_external by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17501
- [build] bump rules_closure version by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17500
- [build] clarify dependency pin and update tasks by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17463
- [build] simplify commit-changes workflow by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17503
- [build] add renovate dependency workflow by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17504
- [py] update python dependencies by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17490
- [dotnet] [test] Resolve obsolete warning about NUnit TestDelegate by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17520
- [dotnet] Direct dependency on Microsoft.Bcl.AsyncInterfaces by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17519
- [dotnet] [test] Add NUnit analyzer by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17522
- [build] remove overly complicated renovate workflow by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17525
- [rb] move Ruby bindings to use typescript get attribute atom by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17524
- [java] Prevent byte-buddy -jdkN variant from being picked by dependency updates by @pierluigilenoci in https://github.com/SeleniumHQ/selenium/pull/17523
- [dotnet] Move .NET bindings to use new Typescript atoms for isShown,g… by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17529
- [dotnet] [bidi] Add Download ID in events for downloading begin/end by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17531
- [dotnet] [bidi] Immutable user facing collections by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17533
- [build] dependency changes should run CI tests for given binding by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17534
- [rb] Move atoms to use the typescript versions by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17532
- [java] Move Java bindings to use Typescript atoms for isShown, getAtt… by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17530
- [grid] Bundle Redis-backed SessionMap by default by @VietND96 in https://github.com/SeleniumHQ/selenium/pull/17441
- [build] Expand Ubuntu disk cleanup and add pre-build space checks in CI by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17538
- [build] Surface Bazel cache failures with diagnostics and graceful fallback by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17541
- [js] Use the typescript atom for get attribute by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17526
- [build] do not create targets for IE for browser tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17548
- [rb] deprecate Chromium Profile classes by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17557
- [py] mark Safari tests broken by SafariDriver 26.5 as xfail by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17560
- [java] skip browser-restricted ports when picking a free port by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17561
- [build] Use target_compatible_with to gate IE/Safari tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17566
- [build] monitor disk and cache usage throughout a bazel job by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17569
- [rb] add safari tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/16768
- [build] prune old codeql caches by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17570
- [rb] update bazel test tags by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17558
- [rb] separate concerns between Service, DriverFinder, and Options by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17564
- [grid] Apply TCP backpressure across the WebSocket tunnel handler by @shs96c in https://github.com/SeleniumHQ/selenium/pull/17543
- [rb] fix using environment variables to set drivers by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17571
- [rust] Change command execution to argv by @bonigarcia in https://github.com/SeleniumHQ/selenium/pull/17576
- [grid] Add BinaryMessage.wrap for transferring an owned byte array by @shs96c in https://github.com/SeleniumHQ/selenium/pull/17544
- [rust] Reuse constant for --version by @bonigarcia in https://github.com/SeleniumHQ/selenium/pull/17579
- [grid] Apply the WebSocket frame fast path on the Node by @shs96c in https://github.com/SeleniumHQ/selenium/pull/17545
- [js] Move JS bindings to use typescript atoms for isDisplayed and Find-Element by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17547
- [py] Allow MAX_WS_MESSAGE_SIZE to be configurable by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17581
- [js] Reducing GC pressure in the TypeScript find-elements atom by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17580
- [grid] Skip the TCP tunnel read-idle close when reads are paused by @shs96c in https://github.com/SeleniumHQ/selenium/pull/17578
- [js] Reduce GC pressure in TypeScript getAttribute and isDisplayed atoms by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17582
- [py] Handle Data URLs when doing .continue_request() by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17583
- [rust] Improve SM error messages when browser/driver version not found by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17584
- [py] Improve ruff linting DX and CI speed by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17588
- [build] add Github Cache workflow to generate and save bazel repository-cache by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17575
- [rb] only run pending tests on schedule or dispatch by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17593
- [build] reduce downloaded artifacts by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17598
- [build] surface failures from archive rules by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17594
- [build] only build debug artifacts when releasing by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17595
- [java] publish selenium-devtools-latest artifact by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17562
- [java] support driving Electron apps with ElectronOptions and ElectronDriver by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17559
- [build] use Bazel repo contents cache instead of bazel-contrib external-cache by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17602
- [rb] improve selenium manager testing by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17597
- [build] allow ruby and python to run remote tests on windows by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17603
- [py] Scope py_test_suite shared library to support files only by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17600
- [java][BiDi] add clearListners via browsingContextIds for inspectors by @Delta456 in https://github.com/SeleniumHQ/selenium/pull/17376
- [py] Extract actions subpackage into //py:common_actions by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17605
- [rust] Switch reqwest TLS backend from aws-lc-rs to ring by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17589
- [py] Extract feature-specific modules from //py:common by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17606
- [rb] tag integration tests with browser family by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17604
- [build] use pinned browser and driver for starting grid in python and ruby tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17610
- Add logs to Grid to debug downloading files by @asolntsev in https://github.com/SeleniumHQ/selenium/pull/17599
- [build] delete .skipped-tests file entries by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17613
- [build] Combine Rust build and test CI jobs by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17612
- [rb] Run unit tests as a single Bazel target instead of per-file by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17616
- [py] retry safaridriver startup in tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17615
- Update geckodriver releases map including 0.37.0 by @bonigarcia in https://github.com/SeleniumHQ/selenium/pull/17618
- [py] Extract alert and color into dedicated libraries by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17611
- trim agent formatting guidance by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17617
- [build] convert bazel.yml browser input to needs-display boolean by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17621
- [build] only free disk space when needed by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17620
- [py] Add high-level BiDi network request handler API by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17619
- [dotnet] [bidi] Possibility to use any external transport by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17625
- [dotnet] [test] Introduce fake BiDi transport by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17627
- [py] Add high-level BiDi network response handler API by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17623
- [py] Align BiDi script module with the cross-binding API design by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17624
- [dotnet] [bidi] Additional json data for commands/results by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17614
- [py] Add high-level BiDi network authentication handler API by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17629
- [py] Add high-level BiDi network extra headers API by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17632
- [dotnet] [bidi] Additional json data for event args by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17633
- [build] make release pipeline rerun-safe by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17626
- [rb] streamline tests on github actions runners by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17550
- [dotnet] [bidi] Better exception message in case of malformed capability url by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17635
- [java] correct deprecation annotations for JSON Wire error code APIs by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17639
- [build] aggregate all lint errors instead of failing fast by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17637
- [dotnet] [bidi] Fix reflection based deserialization of additional data by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17648
- [build] start X server before launching fluxbox by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17644
- [rb] create more obvious test guard keywords as aliases by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17636
- [dotnet] [bidi] Remove last obsoleted Type helper in Input module by @nvborisenko in https://github.com/SeleniumHQ/selenium/pull/17652
- [build] keep pre-installed browsers on Windows, delete only drivers by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17650
- [build] silence protobuf sun.misc.Unsafe warnings from Java compile workers by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17640
- [py] add Selenium Manager integration tests by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17645
- [js] Add Javascript/Typescript CDDL code generator for WebDriver BiDi by @pujagani in https://github.com/SeleniumHQ/selenium/pull/17574
- [SM] Automatically prune cache entries older than 30 days by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17585
- [py] make window position/rect tests robust on multi-monitor setups by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17661
- [py] use local webserver for BiDi network auth/header tests by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17660
- [py][bidi]: close BiDi websocket on
quit()by @navin772 in https://github.com/SeleniumHQ/selenium/pull/17663 - [js] Expose BiDi CDDL ast and model as shared artifacts by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17657
- [py] translate continue_request/continue_response kwargs to BiDi wire format by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17669
- [grid] add HtmlUnit browser logo to Grid UI by @AutomatedTester in https://github.com/SeleniumHQ/selenium/pull/17656
- [py] terminate driver service process when start() fails to connect by @titusfortner in https://github.com/SeleniumHQ/selenium/pull/17651
- [grid] Add support Redis-backed for SessionQueue by @VietND96 in https://github.com/SeleniumHQ/selenium/pull/17678
Full Changelog: https://github.com/SeleniumHQ/selenium/compare/selenium-4.44.0...selenium-4.45.0
Breaking Changes
- [java] remove deprecated logging classes
- [dotnet] upgrade paket from v9 to v10
- [dotnet] update system.text.json to 8.0.6
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About selenium
All releases →Related context
Related tools
Earlier breaking changes
- vselenium-4.46.0 Deprecate methods exposing internal BiDi connection on Java driver
- vselenium-4.44.0 `UnhandledPromptBehavior` option as string and map supported (breaking change)
- vselenium-4.44.0 'native' methods inside Java HttpClient interface deprecated
Beta — feedback welcome: [email protected]