Change8

selenium-4.39.0

📦 seleniumView on GitHub →
22 features🐛 15 fixes🔧 16 symbols

Summary

This release adds numerous BiDi emulation commands, UI enhancements for Grid, and a host of bug fixes and documentation updates across Java, Python, .NET, and other language bindings.

✨ New Features

  • Added BiDi emulation command `set_locale_override` (Python).
  • Added BiDi emulation command `set_scripting_enabled` (Python).
  • Implemented `browsingContext.downloadEnd` event (Java BiDi).
  • Added BiDi emulation command `set_screen_orientation_override` (Python).
  • Added BiDi command `set_download_behavior` (Python).
  • Added BiDi command `set_user_agent_override` (Python).
  • Implemented `emulation.setTimezoneOverride` (Java BiDi).
  • Implemented `emulation.setScriptingEnabled` (Java BiDi).
  • Enabled resetting viewport via BiDi in Python and .NET.
  • Enhanced Grid UI with theme integration and improved status indicators.
  • Dynamic Grid now requires Docker API 1.44 (Docker Engine v29+) and includes Docker client improvements, container label updates, and dynamic container grouping.
  • Simplified .NET BiDi namespace for communications.
  • Generated atoms statically for .NET.
  • Added syntax highlighting for JavaScript string methods in .NET.
  • Unwrapped element wrapper recursively in .NET.
  • Simplified NuGet package reference in Bazel for .NET.
  • Packed `net462` target framework in .NET.
  • Removed Newtonsoft.Json test-only dependency in .NET.
  • Updated `paket` build tool to version 9.0.2 for .NET.
  • Switched to daemon threads for WebSocket connections in Python.
  • Updated Python docstrings to Google pydoc format and applied extensive Ruff linting fixes.
  • Improved Python type hints with union syntax and native types.

🐛 Bug Fixes

  • Fixed atoms issue where text node children were always considered displayed.
  • Fixed typo and minor formatting in README.md.
  • Resolved multiple Ruff linting warnings (D200, D205, D415, D417) in Python docstrings.
  • Fixed type annotation and type hint issues in Python code.
  • Fixed download event tests for Firefox (BiDi).
  • Fixed events subscription possibilities in .NET BiDi implementation.
  • Improved Docker client handling in Dynamic Grid.
  • Fixed container label `compose.oneoff` handling in Dynamic Grid.
  • Fixed concurrency checks removal in CI workflows.
  • Reverted problematic mirror workflow changes.
  • Fixed issues with generating atoms statically in .NET.
  • Fixed syntax highlighting for JavaScript string methods in .NET.
  • Fixed element wrapper recursion handling in .NET.
  • Fixed NuGet package reference simplification in Bazel for .NET.
  • Fixed various CI workflow pagination and cancellation behavior.

🔧 Affected Symbols

browsingContext.downloadEndemulation.setTimezoneOverrideemulation.setScriptingEnabledset_locale_overrideset_scripting_enabledset_screen_orientation_overrideset_download_behaviorset_user_agent_overrideresetViewport (BiDi)generate.pyrules_rustrules_dotnetpaketdocker_apinet462 target frameworkNewtonsoft.Json (test-only)