Selenium 4.44 Released!
Categories:
We’re excited to announce the release of Selenium 4.44 for JavaScript, Ruby, Python, .NET, Java and the Grid! 🎉
Links to all assets can be found on our downloads page.
Selenium 4.44 Released
✨ Highlights
- [Build] Introduced a new Selenium CLI tool, plus an AI-assisted contribution policy and Rust
commands to install
skills.md/rules.mdfiles for agent-based contributors. - [.NET] A large batch of BiDi alignment work (statically declared commands/events, additional
event streaming) alongside several breaking changes: obsolete member removal and
UnhandledPromptBehavioras a string or map. - [Java] Continued JSpecify nullability work in the
remotepackage, deprecated nativeHttpClientmethods, and fixed aNoSuchElementExceptionregression for customBylocators. - [Grid] Added a Redis-backed Distributor as a built-in option and fixed latent WebSocket proxy bugs.
- [Python] Now generates BiDi files instead of hand-curating them, and added a CDDL 2 Python generator.
- [JavaScript] Converted the
getAttributeandisDisplayedatoms from Closure to TypeScript.
📦 Notable Changes
Java
- Continued JSpecify nullability annotations in the
remotepackage. - Deprecated native methods on the
HttpClientinterface. - Fixed a regression causing
NoSuchElementExceptionfor customBylocators, and an NPE when a response status is null. - Removed the unused
ChromiumDriver.capabilitiesfield, and bumpedbyte-buddy.
Python
- Switched to generated BiDi files instead of hand-curated ones, and added a CDDL 2 Python generator.
- Implemented high-level APIs for script execution and improved generated BiDi module docstrings.
- Added an Edge service argument to inherit browser I/O streams.
- Updated docs with a pytest example and general formatting fixes.
Ruby
- Fixed a credential issue with private keys.
- Fixed a conflict between Firefox’s
-vand--logflags. - Standardized
READMEfiles across bindings.
.NET
- Statically declared BiDi commands and events, and added additional event streaming (breaking change).
- Removed members planned for deprecation in 4.44, and made
UnhandledPromptBehavioraccept a string or map (breaking change). - Migrated tests to MTP and strongly signed assemblies.
- Fixed network monitoring stop behavior and internal log truncation at error/warn levels.
Grid
- Added a Redis-backed Distributor as built-in support.
- Accept legacy session-closed event payloads.
- Fixed latent bugs in the WebSocket proxy.
Build & Infra
- Introduced the Selenium CLI tool and an AI-assisted contribution policy, including Rust commands
to install
skills.md/rules.mdfiles. - Hardened the release pipeline: trusted publishing for Python, GitHub release drafts before publish, and parallelized documentation releases.
- Cleaned up GHA runner disk space and fixed several release/prerelease workflow issues.
🐳 Docker Selenium
- Docker: Retain recordings for failed sessions only from session capabilities (#3111)
- chart(selenium-grid): add ServiceMonitor and PodMonitor support for Prometheus Operator (#3121)
- Docker: Cleanup CfT and Chromium profiles (#3123)
- See all changes
We thank all our contributors for their incredible efforts in making Selenium better with every release. ❤️
For a detailed look at all changes, check out the release notes.
Contributors
Special shout-out to everyone who helped the Selenium Team get this release out!
Selenium
Chandan
Devang
David Zbarsky
Selenium Docs & Website
Bansidhar kadiya
Vincent Adiasor
LetyPG
Srinivas Rao Tammireddy
Docker Selenium
Ilia Lazebnik
Selenium Team Members
Thanks as well to all the team members who contributed to this release:
Augustin Gottlieb
Andrei Solntsev
David Burns
Boni García
Corey Goldberg
Diego Molina
Sri Harsha
Nikolay Borisenko
Michael Render
Simon Mavi Stewart
Titus Fortner
Viet Nguyen Duc
Stay tuned for updates by following SeleniumHQ on:
Happy automating!




