Detailed Changelogs by Component
Java |
Python |
DotNet |
Ruby |
JavaScript
What's Changed
- Add transport layer that will be used by generated BiDi Modules by @pujagani in #17758
- [java][bidi] Allow passing subscription parameters for events by @pujagani in #17769
- [build] Reconcile Gemfile.lock in rb:pin with bundle lock, not bundle update by @titusfortner in #17772
- [build] document Bazel worktree output-base cleanup by @titusfortner in #17689
- [java] Support @nullable constructor parameters in ConstructorCoercer by @pujagani in #17770
- [py] fix add_request_handler ignoring url_patterns on callback= path by @titusfortner in #17666
- [py] generate -bidi test targets for bidi tests only by @titusfortner in #17630
- [rb] support WebDriver BiDi on Safari Preview and move #bidi onto Driver by @titusfortner in #17729
- [py] run affected python tests per-browser on PR, full suite on schedule by @titusfortner in #17643
- [py] Improve generated HTML docs for Python API by @cgoldberg in #17775
- [rb] link generated BiDi elements to their spec definitions by @titusfortner in #17781
- [rb] add objectOnly/preserveExtras/scalar-primitive BiDi schema signals by @titusfortner in #17784
- [docs] Selenium 5 release charter by @titusfortner in #17717
- [adr] BiDi implementation boundaries by @titusfortner in #17670
- Fix BiDi not initializing for RemoteWebDriver built via builder by @pujagani in #17792
- [build] Upgrade @llvm to 0.8.10 by @AutomatedTester in #17780
- [build] Upgrade rules_rs to 0.0.96 by @AutomatedTester in #17793
- [build] run affected bazel test targets from a file by @titusfortner in #17795
- [build] update py:local_dev task to ensure all files are generated and symlinks are always resolved by @titusfortner in #17789
- [rb] construct the BiDi transport inside the domain from a connection by @titusfortner in #17796
- [build] Upgrade @llvm to 0.8.11 by @AutomatedTester in #17806
- [py] Fix default command_executor URL in RemoteWebDriver docstring by @vtvipul in #17803
- [build] validate affected test targets against the current build graph by @titusfortner in #17809
- [rb] route BiDiBridge navigation through the generated Protocol::BrowsingContext by @titusfortner in #17785
- [build] Fix GeckoDriver rejecting system-access via capabilities by @titusfortner in #17811
- [rb] resolve spec runfiles via Bazel::Runfiles by @titusfortner in #17810
- [rust] honor --browser-version in Selenium Manager Electron driver resolution by @gaurav0107 in #17567
- [build] standardize generated-file license and not to edit markers across generators by @titusfortner in #17816
- [rb] validate nullable-constant BiDi params outbound by @titusfortner in #17818
- Update geckodriver version to 0.37.1 by @bonigarcia in #17822
- [build] Generate cross-platform Selenium Manager SBOM and NOTICE by @titusfortner in #17819
- [build] upgrade rules_ruby to 0.28.0 and drop vendored Bazel::Runfiles workaround by @titusfortner in #17824
- [build] Download and bundle Selenium Manager SBOM and NOTICE in each package by @titusfortner in #17820
- [java] Add regression coverage for relative locators on collapsed table borders (#13642) by @MohabMohie in #17827
- [py] Include generated files in API docs published on Read the Docs by @cgoldberg in #17794
- [py] Fix docs build for RtD by @cgoldberg in #17830
- [py] Revert RtD doc build changes by @cgoldberg in #17831
- [build] BiDi schema generation cleanup by @titusfortner in #17837
- [java][bidi] Remove subscription scope by @pujagani in #17842
- Merge vendor cddl files into shared BiDi schema and implement custom Firefox webExtension options by @titusfortner in #17840
- [grid] honor client-advertised se:remoteUrl for reachable BiDi/CDP/VNC URLs by @titusfortner in #17790
- [rb] tolerate and warn on missing required inbound BiDi fields, with SE_BIDI_STRICT to escalate by @titusfortner in #17844
- [java][js][rb] remove deprecated FTP proxy support by @titusfortner in #17846
- [rust] locate Chrome and Edge in known install directories by @titusfortner in #17838
- [dotnet][py][rb] prevent CDP access with Firefox by @titusfortner in #17849
- [rb] match log entries by id and severity, add missing log ids, drop logger stubs by @titusfortner in #17848
- [rb] ensure ruby tests are properly linted by @titusfortner in #17850
- [bidi] Correct float/enum type fidelity in the shared schema and validate primitives outbound in Ruby by @titusfortner in #17852
- [bidi] mark BiDi types extensible per spec and update Ruby handling by @titusfortner in #17853
- [rb] add browser_family test guard and use it for chromium/safari families by @titusfortner in #17854
- [dotnet] [bidi] Don't warn if there are no subscribers by @nvborisenko in #17857
- [rb] raise typed WebDriver errors for BiDi from a generated error-code map by @titusfortner in #17855
- [grid] Store Dynamic Grid videos in a per-session subfolder via SE_VIDEO_SESSION_SUBFOLDER by @VietND96 in #17856
- [grid] inherit the Node Pod container securityContext for Dynamic Grid on K8s by @VietND96 in #17860
- [rb] allow pending test guards to require matching provided exception by @titusfortner in #17859
- [dotnet][java][py][rb] pass --enable-chrome-logs unless CHROME_LOG_FILE is set by @titusfortner in #17858
- [rb] support custom vendor specific capabilities in options classes by @titusfortner in #17862
- [rb] validate BiDi outbound ref fields against their declared type by @titusfortner in #17861
- [rb] fix tests and custom matchers to work with SE_DEBUG by @titusfortner in #17863
- [build] derive per-type inbound/outbound directionality in the shared schema by @titusfortner in #17864
- [rb] generate BiDi domain type accessors and union variant factories by @titusfortner in #17865
- [build] update node versioning for testing and publishing by @titusfortner in #17866
- [py] accept By in find_element/find_elements type hints by @titusfortner in #17870
- [build] update CDP from daily pin browser workflow by @titusfortner in #17872
- [js] Wait for async BiDi events and window resize in flaky tests by @titusfortner in #17874
- [dotnet][java][js][rb] deprecate invalid Firefox profile code by @titusfortner in #17871
- [grid] Dynamic K8s video always use the per-session subfolder; remove pod-wait + relocation by @VietND96 in #17876
- fix(rust): prevent empty driver version from being cached in metadata by @MathiasPaulenko in #17757
- [dotnet] support SE_*DRIVER environment variables to set driver locations by @titusfortner in #17875
- [dotnet] [bidi] Make BiDi transport factories composable by @nvborisenko in #17877
- [java] Fix By.className()/By.id() misescaping non-ASCII leading digits by @diemol in #17815
- [py] fix no_proxy matching so empty entries and substrings do not bypass the proxy by @navin772 in #17884
- [java] Fix By.name() double String.format on names containing '%' by @titusfortner in #17888
- [dotnet] [bidi] Remove optional command timeout in command options by @nvborisenko in #17891
- [py] Ensure driver service subprocess resources are cleaned up by @cgoldberg in #17889
- [build] Add java:local_dev rake task for IntelliJ IDEA project setup by @titusfortner in #17771
- [rust] Test Selenium Manager on Linux arm64 by @dennisameling in #16045
New Contributors
- @vtvipul made their first contribution in #17803
- @gaurav0107 made their first contribution in #17567
- @MathiasPaulenko made their first contribution in #17757
- @dennisameling made their first contribution in #16045
Full Changelog: selenium-4.46.0...selenium-4.47.0