Selenium 4.28 Released!
Categories:
We’re very happy to announce the release of Selenium 4.28 for Javascript, Ruby, Python, .NET, Java and the Grid! Links to everything can be found on our downloads page.
Highlights
- Chrome DevTools support is now: v132, v131, and v130 (Firefox still uses v85 for all versions)
- Expanded nullability annotations for better type safety in .NET and Java.
- Refinements to Selenium Grid, including more efficient session handling and node management.
- Packaging and installation enhancements across Python and Ruby for smoother integration.
- Documentation improvements across Python and .NET libraries, ensuring clearer developer guidance.
- Updated language-specific implementations for modern development standards.
Changes by Language
Java
- Encapsulation Improvements: Encapsulated
additionalCommands
with a getter method (#14816). - Nullability Enhancements: Added nullness annotations for enums, exceptions, interactions, logging, and Proxy (#15105, #15094).
- SpotBugs Updates: Excluded specific warnings to maintain clean code (#14766).
- Improved Logging: Enhanced error handling and message clarity in exceptions (#15116).
- Relative Locators: Updates for
RelativeBy
locators, simplifying usage (#14482).
Python
- Packaging Fixes: Addressed issues for smoother installation (#14806, #14823).
- Documentation Upgrades: Added comprehensive docstrings to multiple classes, including
WebDriverWait
,ExpectedConditions
, andWebElement
(#15077, #15096). - Refactoring: Moved project metadata and improved code organization (#14837).
- Enhanced CDP Command Handling: Added
execute_cdp_cmd
toRemote
(#14809).
.NET
- Nullability Improvements: Added annotations to
SessionId
,Alert
,CookieJar
,Logs API
, and more (#14840, #14874). - Refactored DevTools: Modernized code style and enhanced JSON parsing (#14990).
- Future-Proofing: Added notes and deprecated setters for better immutability (#15107).
- Testing Updates: Migrated NUnit assertions to modern syntax (#14870).
Ruby
- BiDi Network Enhancements: Added request handlers for authentication and interception (#14751).
- Cookie Management Updates: Added tests and improved handling for cookies (#14843).
Grid
- Improved Session Management: Enhanced slot matching and session queue handling (#14914).
- Dynamic Grid Enhancements: Added video recording capabilities on browser node (#15047).
- Reliability Boost: Improved HTTP request retries and node health checks (#14924).
Docker Selenium
Update procedure to install Firefox in Node/Standalone Firefox (#2550)
Enable video recorder in Node/Standalone containers (#2539)
Env var
SE_ENABLE_TRACING=false
is not required when starting the container anymore (#2549)Env var
SE_NODE_PLATFORM_NAME
&SE_NODE_BROWSER_VERSION
to adjust default Node stereotypes for autoscaling (#2520, #2525)Selenium Grid scaler in KEDA improvements (KEDA#6437, KEDA#6477)
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
Dinesh Kumar R A
MustafaAgamy
Dennis Oelkers
Alex
Lauro Moura
Navin Chandra
Simon Benzer
Selenium Docs & Website
Swastik Baranwal
Jason Ren
Navin Chandra
Pallavi
Simon Benzer
Vinaysimha Varma Yadavali
Docker Selenium
AvivGuiser
Selenium Team Members
Thanks as well to all the team members who contributed to this release:
Agustin Pequeno
David Burns
Boni García
Diego Molina
Sri Harsha
Nikolay Borisenko
Alex Rodionov
Puja Jagani
Michael Render
Simon Stewart
Titus Fortner
Viet Nguyen Duc
Stay tuned for updates by following SeleniumHQ on:
Happy automating!