Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[build] Prepare for release of Selenium 4.25.0 #14516

Merged
merged 9 commits into from
Sep 19, 2024
Merged

Conversation

selenium-ci
Copy link
Member

@selenium-ci selenium-ci commented Sep 18, 2024

User description

Warning: Manually update the changelogs before merging

This PR:

  • Updates Rust version for Selenium Manager release
  • Updates Pinned browser version to coincide with new CDP release
  • Adds support for new CDP version and removes old CDP version
  • Selenium Manager references the new Selenium Manager release
  • Updates Maven Dependencies
  • Adds new authors to authors file
  • Updates all versions for all bindings
  • Generates rough change logs for each bindings (please tidy them up before merging this)

PR Type

enhancement, configuration changes, documentation, dependencies, tests


Description

  • Updated DevTools components across multiple languages (Java, .NET, Ruby) to version 129.
  • Updated Selenium version to 4.25.0 across various bindings (Java, Python, .NET, Ruby).
  • Added support for new CDP version and removed old CDP version.
  • Updated Maven dependencies and resolved conflicts.
  • Updated pinned browser versions and their corresponding URLs and checksums.
  • Added changelog entries for Selenium 4.25.0 release across different languages.
  • Updated authors list with new contributors.
  • Simplified code by removing unnecessary string concatenations and unused variables.
  • Updated test cases to align with DevTools version 129.

Changes walkthrough 📝

Relevant files
Enhancement
19 files
v129Target.java
Update DevTools Target to version 129                                       

java/src/org/openqa/selenium/devtools/v129/v129Target.java

  • Updated package and import statements from v126 to v129.
  • Renamed class from v126Target to v129Target.
  • Updated method implementations to use v129 model classes.
  • +12/-12 
    v129Network.java
    Update DevTools Network to version 129                                     

    java/src/org/openqa/selenium/devtools/v129/v129Network.java

  • Updated package and import statements from v126 to v129.
  • Renamed class from v126Network to v129Network.
  • Updated method implementations to use v129 model classes.
  • +10/-10 
    v129Events.java
    Update DevTools Events to version 129                                       

    java/src/org/openqa/selenium/devtools/v129/v129Events.java

  • Updated package and import statements from v126 to v129.
  • Renamed class from v126Events to v129Events.
  • Updated method implementations to use v129 model classes.
  • +9/-9     
    v129Domains.java
    Update DevTools Domains to version 129                                     

    java/src/org/openqa/selenium/devtools/v129/v129Domains.java

  • Updated package and import statements from v126 to v129.
  • Renamed class from v126Domains to v129Domains.
  • Updated constructor to initialize v129 components.
  • +13/-13 
    v129Javascript.java
    Update DevTools Javascript to version 129                               

    java/src/org/openqa/selenium/devtools/v129/v129Javascript.java

  • Updated package and import statements from v126 to v129.
  • Renamed class from v126Javascript to v129Javascript.
  • +7/-7     
    v129Log.java
    Update DevTools Log to version 129                                             

    java/src/org/openqa/selenium/devtools/v129/v129Log.java

  • Updated package and import statements from v126 to v129.
  • Renamed class from v126Log to v129Log.
  • +5/-5     
    v129CdpInfo.java
    Update CDP Info to version 129                                                     

    java/src/org/openqa/selenium/devtools/v129/v129CdpInfo.java

  • Updated package from v126 to v129.
  • Renamed class from v126CdpInfo to v129CdpInfo.
  • Updated constructor to use v129Domains.
  • +4/-4     
    V129Domains.cs
    Update .NET DevTools Domains to version 129                           

    dotnet/src/webdriver/DevTools/v129/V129Domains.cs

  • Updated namespace and class name from V126 to V129.
  • Updated DevTools version to 129.
  • Updated method implementations to use V129 components.
  • +11/-11 
    V129Network.cs
    Update .NET DevTools Network to version 129                           

    dotnet/src/webdriver/DevTools/v129/V129Network.cs

  • Updated namespace and class name from V126 to V129.
  • Updated method implementations to use V129 components.
  • +12/-12 
    V129JavaScript.cs
    Update .NET DevTools JavaScript to version 129                     

    dotnet/src/webdriver/DevTools/v129/V129JavaScript.cs

  • Updated namespace and class name from V126 to V129.
  • Updated method implementations to use V129 components.
  • +8/-8     
    V129Target.cs
    Update .NET DevTools Target to version 129                             

    dotnet/src/webdriver/DevTools/v129/V129Target.cs

  • Updated namespace and class name from V126 to V129.
  • Updated method implementations to use V129 components.
  • +7/-7     
    V129Log.cs
    Update .NET DevTools Log to version 129                                   

    dotnet/src/webdriver/DevTools/v129/V129Log.cs

  • Updated namespace and class name from V126 to V129.
  • Updated method implementations to use V129 components.
  • +7/-7     
    DevToolsDomains.cs
    Add support for DevTools version 129                                         

    dotnet/src/webdriver/DevTools/DevToolsDomains.cs

    • Added support for DevTools version 129.
    +1/-1     
    logger.rb
    Simplify string concatenation in logger                                   

    rb/lib/selenium/webdriver/common/logger.rb

    • Removed unnecessary string concatenation.
    +1/-1     
    target_locator.rb
    Remove unused variable in target locator                                 

    rb/lib/selenium/webdriver/common/target_locator.rb

    • Removed unused variable returned.
    +1/-2     
    wait.rb
    Simplify string concatenation in wait                                       

    rb/lib/selenium/webdriver/common/wait.rb

    • Removed unnecessary string concatenation.
    +1/-1     
    versions.bzl
    Add support for DevTools version v129                                       

    java/src/org/openqa/selenium/devtools/versions.bzl

    • Added support for DevTools version v129.
    +1/-1     
    js_protocol.pdl
    Add JavaScript protocol definition for version 129             

    common/devtools/chromium/v129/js_protocol.pdl

    • Added new JavaScript protocol definition for version 129.
    +1807/-1
    browser_protocol.pdl
    Extend browser protocol with new domains and commands       

    common/devtools/chromium/v129/browser_protocol.pdl

  • Added new commands and types for browser extensions and storage.
  • Introduced new experimental domains and commands.
  • Updated existing types and commands with additional properties.
  • +376/-41
    Tests
    8 files
    DevToolsTargetTest.cs
    Update DevTools Target Test to version 129                             

    dotnet/test/common/DevTools/DevToolsTargetTest.cs

    • Updated CurrentCdpVersion to V129.
    • Updated test ID to 129.
    +2/-2     
    DevToolsConsoleTest.cs
    Update DevTools Console Test to version 129                           

    dotnet/test/common/DevTools/DevToolsConsoleTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    DevToolsLogTest.cs
    Update DevTools Log Test to version 129                                   

    dotnet/test/common/DevTools/DevToolsLogTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    DevToolsNetworkTest.cs
    Update DevTools Network Test to version 129                           

    dotnet/test/common/DevTools/DevToolsNetworkTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    DevToolsSecurityTest.cs
    Update DevTools Security Test to version 129                         

    dotnet/test/common/DevTools/DevToolsSecurityTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    DevToolsProfilerTest.cs
    Update DevTools Profiler Test to version 129                         

    dotnet/test/common/DevTools/DevToolsProfilerTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    DevToolsPerformanceTest.cs
    Update DevTools Performance Test to version 129                   

    dotnet/test/common/DevTools/DevToolsPerformanceTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    DevToolsTabsTest.cs
    Update DevTools Tabs Test to version 129                                 

    dotnet/test/common/DevTools/DevToolsTabsTest.cs

    • Updated CurrentCdpVersion to V129.
    +1/-1     
    Configuration changes
    18 files
    StableChannelChromeDriver.cs
    Update default Chrome browser version to 129                         

    dotnet/test/common/CustomDriverConfigs/StableChannelChromeDriver.cs

    • Updated default browser version to 129.
    +1/-1     
    version.rb
    Update Ruby DevTools version to 0.129.0                                   

    rb/lib/selenium/devtools/version.rb

    • Updated DevTools version to 0.129.0.
    +1/-1     
    version.rb
    Update Ruby WebDriver version to 4.25.0                                   

    rb/lib/selenium/webdriver/version.rb

    • Updated WebDriver version to 4.25.0.
    +1/-1     
    repositories.bzl
    Update pinned browser versions and checksums                         

    common/repositories.bzl

  • Updated pinned browser versions and their corresponding URLs and
    checksums.
  • +25/-25 
    selenium_manager.bzl
    Update Selenium Manager download URLs and checksums           

    common/selenium_manager.bzl

    • Updated Selenium Manager download URLs and checksums.
    +6/-6     
    __init__.py
    Update Python WebDriver version to 4.25.0                               

    py/selenium/webdriver/init.py

    • Updated Python WebDriver version to 4.25.0.
    +1/-1     
    setup.py
    Update Python package version to 4.25.0                                   

    py/setup.py

    • Updated package version to 4.25.0.
    +1/-1     
    selenium-dotnet-version.bzl
    Update .NET Selenium version and DevTools support               

    dotnet/selenium-dotnet-version.bzl

  • Updated .NET Selenium version to 4.25.0.
  • Added support for DevTools version v129.
  • +2/-2     
    __init__.py
    Update Python Selenium version to 4.25.0                                 

    py/selenium/init.py

    • Updated Python Selenium version to 4.25.0.
    +1/-1     
    version.bzl
    Update Java Selenium version to 4.25.0                                     

    java/version.bzl

    • Updated Java Selenium version to 4.25.0.
    +1/-1     
    BUILD.bazel
    Add build configuration for Chromium DevTools version 129

    common/devtools/chromium/v129/BUILD.bazel

    • Added build configuration for Chromium DevTools version 129.
    +38/-1   
    WebDriver.csproj
    Update Bazel build command for v129 generation                     

    dotnet/src/webdriver/WebDriver.csproj

    • Updated Bazel build command to include generation for v129.
    +1/-1     
    BUILD.bazel
    Update Python Selenium version and DevTools support           

    py/BUILD.bazel

  • Updated Python Selenium version to 4.25.0.
  • Added support for DevTools version v129.
  • +2/-2     
    Rakefile
    Update Java release targets for devtools version 129         

    Rakefile

    • Updated Java release targets to include devtools version 129.
    +1/-1     
    BUILD.bazel
    Update Node.js build configuration for version 4.25.0       

    javascript/node/selenium-webdriver/BUILD.bazel

  • Updated version to 4.25.0.
  • Changed browser version from 126 to 129.
  • +2/-2     
    package.json
    Update package version to 4.25.0                                                 

    javascript/node/selenium-webdriver/package.json

    • Updated package version to 4.25.0.
    +1/-1     
    BUILD.bazel
    Update CDP version to 129                                                               

    java/src/org/openqa/selenium/devtools/v129/BUILD.bazel

    • Updated CDP version from 126 to 129.
    +1/-1     
    BUILD.bazel
    Update Ruby devtools CDP version to 129                                   

    rb/lib/selenium/devtools/BUILD.bazel

    • Updated CDP version from 126 to 129.
    +1/-1     
    Documentation
    8 files
    conf.py
    Update Python documentation version to 4.25.0                       

    py/docs/source/conf.py

    • Updated documentation version to 4.25.0.
    +1/-1     
    AUTHORS
    Update authors list with new contributors                               

    AUTHORS

    • Updated authors list with new contributors.
    +11/-9   
    CHANGES.md
    Document changes for version 4.25.0                                           

    javascript/node/selenium-webdriver/CHANGES.md

    • Documented changes for version 4.25.0.
    +4/-0     
    CHANGES
    Update Python changelog for Selenium 4.25.0                           

    py/CHANGES

  • Added changelog entries for Selenium 4.25.0 release.
  • Documented fixes and updates for various Python modules.
  • +7/-0     
    CHANGELOG
    Update .NET changelog for Selenium 4.25.0                               

    dotnet/CHANGELOG

  • Added changelog entries for .NET Selenium 4.25.0 release.
  • Documented new features and improvements for BiDi implementation.
  • +12/-0   
    CHANGES
    Update Ruby changelog for Selenium 4.25.0                               

    rb/CHANGES

  • Added changelog entries for Ruby Selenium 4.25.0 release.
  • Documented fixes and new features.
  • +7/-0     
    CHANGELOG
    Update Java changelog for Selenium 4.25.0                               

    java/CHANGELOG

  • Added changelog entries for Java Selenium 4.25.0 release.
  • Documented updates and fixes.
  • +7/-0     
    CHANGELOG.md
    Update Rust changelog for version 0.4.25                                 

    rust/CHANGELOG.md

  • Added changelog entries for Rust Selenium 0.4.25 release.
  • Documented improvements and error handling updates.
  • +6/-0     
    Dependencies
    2 files
    MODULE.bazel
    Update Maven dependencies to newer versions                           

    MODULE.bazel

    • Updated Maven dependencies to newer versions.
    +21/-21 
    maven_install.json
    Update Maven dependencies and resolve conflicts                   

    java/maven_install.json

  • Updated multiple Maven dependencies to newer versions.
  • Changed the hash values for updated dependencies.
  • Added new dependencies and updated existing ones.
  • +98/-93 

    💡 PR-Agent usage:
    Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

    @selenium-ci selenium-ci added the C-build Build related issues (bazel and CI) label Sep 18, 2024
    Copy link
    Contributor

    codiumai-pr-agent-pro bot commented Sep 18, 2024

    CI Failure Feedback 🧐

    (Checks updated until commit 22c214b)

    Action: Ruby / Local Tests (chrome, windows) / Local Tests (chrome, windows)

    Failed stage: Run Bazel [❌]

    Failed test name: Selenium::WebDriver::Chrome::Driver PrintsPage

    Failure summary:

    The action failed because three tests in the Selenium::WebDriver::Chrome::Driver PrintsPage suite
    failed due to a timeout error:

  • returns base64 for print command
  • prints with valid params
  • saves pdf
    These tests encountered a Selenium::WebDriver::Error::TimeoutError, indicating that they
    timed out while waiting for a message from the renderer.

  • Relevant error logs:
    1:  ##[group]Operating System
    2:  Microsoft Windows Server 2022
    ...
    
    696:  lists other enhancements and bugfixes that have been implemented since
    697:  version 2.3.0.
    698:  �[32m[1,868 / 1,869]�[0m Running bundle install (@bundle//:bundle); 497s local, disk-cache
    699:  �[32m[1,869 / 1,877]�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome
    700:  �[32m[1,869 / 1,890]�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome ... (2 actions, 0 running)
    701:  �[32m[1,869 / 1,893]�[0m [Prepa] Testing //rb/spec/integration/selenium/webdriver:shadow_root-chrome ... (4 actions, 0 running)
    702:  �[32m[1,869 / 1,893]�[0m Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome; 1s disk-cache ... (4 actions, 0 running)
    703:  �[32m[1,869 / 1,893]�[0m Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome; 9s disk-cache ... (4 actions, 0 running)
    704:  �[32m[1,869 / 1,893]�[0m Testing //rb/spec/integration/selenium/webdriver:error-chrome; 33s disk-cache ... (4 actions, 0 running)
    705:  �[32m[1,869 / 1,893]�[0m Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome; 1s local, disk-cache ... (4 actions, 1 running)
    706:  �[32m[1,869 / 1,893]�[0m Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome; 4s local, disk-cache ... (4 actions, 1 running)
    707:  �[32m[1,869 / 1,893]�[0m Testing //rb/spec/integration/selenium/webdriver:target_locator-chrome; 25s local, disk-cache ... (4 actions, 2 running)
    708:  �[32m[1,870 / 1,893]�[0m 1 / 29 tests;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:error-chrome; 26s ... (4 actions, 1 running)
    709:  �[32m[1,870 / 1,893]�[0m 1 / 29 tests;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:error-chrome; 36s ... (4 actions, 1 running)
    710:  �[32m[1,870 / 1,893]�[0m 1 / 29 tests;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:error-chrome; 40s ... (4 actions, 1 running)
    ...
    
    755:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 304s local, disk-cache ... (4 actions, 1 running)
    756:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 308s local, disk-cache ... (4 actions, 1 running)
    757:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 315s local, disk-cache ... (4 actions, 1 running)
    758:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 318s local, disk-cache ... (4 actions, 1 running)
    759:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 345s local, disk-cache ... (4 actions, 1 running)
    760:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 405s local, disk-cache ... (4 actions, 1 running)
    761:  �[32m[1,880 / 1,893]�[0m 11 / 29 tests;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:driver-chrome; 433s local, disk-cache ... (4 actions, 2 running)
    762:  �[31m�[1mFAIL: �[0m//rb/spec/integration/selenium/webdriver/chrome:driver-chrome (see D:/_bazel/execroot/_main/bazel-out/x64_windows-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/chrome/driver-chrome/test.log)
    763:  �[31m�[1mFAILED: �[0m//rb/spec/integration/selenium/webdriver/chrome:driver-chrome (Summary)
    ...
    
    778:  gets and sets network conditions
    779:  sets download path
    780:  can execute CDP commands
    781:  manages network features
    782:  casts
    783:  can set single permissions
    784:  can set multiple permissions
    785:  PrintsPage
    786:  returns base64 for print command (FAILED - 1)
    787:  prints with valid params (FAILED - 2)
    788:  saves pdf (FAILED - 3)
    789:  #logs
    790:  can fetch available log types
    791:  can get the browser log
    792:  can get the driver log
    793:  can get the performance log
    794:  Failures:
    795:  1) Selenium::WebDriver::Chrome::Driver PrintsPage returns base64 for print command
    796:  Failure/Error: expect(driver.print_page).to include(magic_number)
    797:  Selenium::WebDriver::Error::TimeoutError:
    798:  timeout: Timed out receiving message from renderer: 10.000
    799:  (Session info: chrome=129.0.6668.58)
    800:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    801:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    806:  # ./rb/lib/selenium/webdriver/remote/http/default.rb:103:in `request'
    807:  # ./rb/lib/selenium/webdriver/remote/http/common.rb:67:in `call'
    808:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:685:in `execute'
    809:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    810:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    811:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:67:in `block (3 levels) in <module:Chrome>'
    812:  # ------------------
    813:  # --- Caused by: ---
    814:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    832:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    833:  (No symbol) [0x00007FF7F02AD6EF]
    834:  (No symbol) [0x00007FF7F02A92B4]
    835:  (No symbol) [0x00007FF7F02A9450]
    836:  (No symbol) [0x00007FF7F02981FF]
    837:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    838:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    839:  2) Selenium::WebDriver::Chrome::Driver PrintsPage prints with valid params
    840:  Failure/Error:
    841:  expect(driver.print_page(orientation: 'landscape',
    842:  page_ranges: ['1-2'],
    843:  page: {width: 30})).to include(magic_number)
    844:  Selenium::WebDriver::Error::TimeoutError:
    845:  timeout: Timed out receiving message from renderer: 10.000
    846:  (Session info: chrome=129.0.6668.58)
    847:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    848:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    853:  # ./rb/lib/selenium/webdriver/remote/http/default.rb:103:in `request'
    854:  # ./rb/lib/selenium/webdriver/remote/http/common.rb:67:in `call'
    855:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:685:in `execute'
    856:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    857:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    858:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:72:in `block (3 levels) in <module:Chrome>'
    859:  # ------------------
    860:  # --- Caused by: ---
    861:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    879:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    880:  (No symbol) [0x00007FF7F02AD6EF]
    881:  (No symbol) [0x00007FF7F02A92B4]
    882:  (No symbol) [0x00007FF7F02A9450]
    883:  (No symbol) [0x00007FF7F02981FF]
    884:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    885:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    886:  3) Selenium::WebDriver::Chrome::Driver PrintsPage saves pdf
    887:  Failure/Error: driver.save_print_page path
    888:  Selenium::WebDriver::Error::TimeoutError:
    889:  timeout: Timed out receiving message from renderer: 10.000
    890:  (Session info: chrome=129.0.6668.58)
    891:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    892:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    900:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    901:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    902:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:37:in `block in save_print_page'
    903:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:36:in `open'
    904:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:36:in `save_print_page'
    905:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:82:in `block (3 levels) in <module:Chrome>'
    906:  # ------------------
    907:  # --- Caused by: ---
    908:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    926:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    927:  (No symbol) [0x00007FF7F02AD6EF]
    928:  (No symbol) [0x00007FF7F02A92B4]
    929:  (No symbol) [0x00007FF7F02A9450]
    930:  (No symbol) [0x00007FF7F02981FF]
    931:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    932:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    933:  Finished in 2 minutes 7 seconds (files took 1.12 seconds to load)
    934:  14 examples, 3 failures
    935:  Failed examples:
    ...
    
    950:  gets and sets network conditions
    951:  sets download path
    952:  can execute CDP commands
    953:  manages network features
    954:  casts
    955:  can set single permissions
    956:  can set multiple permissions
    957:  PrintsPage
    958:  returns base64 for print command (FAILED - 1)
    959:  prints with valid params (FAILED - 2)
    960:  saves pdf (FAILED - 3)
    961:  #logs
    962:  can fetch available log types
    963:  can get the browser log
    964:  can get the driver log
    965:  can get the performance log
    966:  Failures:
    967:  1) Selenium::WebDriver::Chrome::Driver PrintsPage returns base64 for print command
    968:  Failure/Error: expect(driver.print_page).to include(magic_number)
    969:  Selenium::WebDriver::Error::TimeoutError:
    970:  timeout: Timed out receiving message from renderer: 10.000
    971:  (Session info: chrome=129.0.6668.58)
    972:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    973:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    978:  # ./rb/lib/selenium/webdriver/remote/http/default.rb:103:in `request'
    979:  # ./rb/lib/selenium/webdriver/remote/http/common.rb:67:in `call'
    980:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:685:in `execute'
    981:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    982:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    983:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:67:in `block (3 levels) in <module:Chrome>'
    984:  # ------------------
    985:  # --- Caused by: ---
    986:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    1004:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    1005:  (No symbol) [0x00007FF7F02AD6EF]
    1006:  (No symbol) [0x00007FF7F02A92B4]
    1007:  (No symbol) [0x00007FF7F02A9450]
    1008:  (No symbol) [0x00007FF7F02981FF]
    1009:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    1010:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    1011:  2) Selenium::WebDriver::Chrome::Driver PrintsPage prints with valid params
    1012:  Failure/Error:
    1013:  expect(driver.print_page(orientation: 'landscape',
    1014:  page_ranges: ['1-2'],
    1015:  page: {width: 30})).to include(magic_number)
    1016:  Selenium::WebDriver::Error::TimeoutError:
    1017:  timeout: Timed out receiving message from renderer: 10.000
    1018:  (Session info: chrome=129.0.6668.58)
    1019:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    1020:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    1025:  # ./rb/lib/selenium/webdriver/remote/http/default.rb:103:in `request'
    1026:  # ./rb/lib/selenium/webdriver/remote/http/common.rb:67:in `call'
    1027:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:685:in `execute'
    1028:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    1029:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    1030:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:72:in `block (3 levels) in <module:Chrome>'
    1031:  # ------------------
    1032:  # --- Caused by: ---
    1033:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    1051:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    1052:  (No symbol) [0x00007FF7F02AD6EF]
    1053:  (No symbol) [0x00007FF7F02A92B4]
    1054:  (No symbol) [0x00007FF7F02A9450]
    1055:  (No symbol) [0x00007FF7F02981FF]
    1056:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    1057:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    1058:  3) Selenium::WebDriver::Chrome::Driver PrintsPage saves pdf
    1059:  Failure/Error: driver.save_print_page path
    1060:  Selenium::WebDriver::Error::TimeoutError:
    1061:  timeout: Timed out receiving message from renderer: 10.000
    1062:  (Session info: chrome=129.0.6668.58)
    1063:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    1064:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    1072:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    1073:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    1074:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:37:in `block in save_print_page'
    1075:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:36:in `open'
    1076:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:36:in `save_print_page'
    1077:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:82:in `block (3 levels) in <module:Chrome>'
    1078:  # ------------------
    1079:  # --- Caused by: ---
    1080:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    1098:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    1099:  (No symbol) [0x00007FF7F02AD6EF]
    1100:  (No symbol) [0x00007FF7F02A92B4]
    1101:  (No symbol) [0x00007FF7F02A9450]
    1102:  (No symbol) [0x00007FF7F02981FF]
    1103:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    1104:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    1105:  Finished in 2 minutes 7.9 seconds (files took 0.94797 seconds to load)
    1106:  14 examples, 3 failures
    1107:  Failed examples:
    ...
    
    1122:  gets and sets network conditions
    1123:  sets download path
    1124:  can execute CDP commands
    1125:  manages network features
    1126:  casts
    1127:  can set single permissions
    1128:  can set multiple permissions
    1129:  PrintsPage
    1130:  returns base64 for print command (FAILED - 1)
    1131:  prints with valid params (FAILED - 2)
    1132:  saves pdf (FAILED - 3)
    1133:  #logs
    1134:  can fetch available log types
    1135:  can get the browser log
    1136:  can get the driver log
    1137:  can get the performance log
    1138:  Failures:
    1139:  1) Selenium::WebDriver::Chrome::Driver PrintsPage returns base64 for print command
    1140:  Failure/Error: expect(driver.print_page).to include(magic_number)
    1141:  Selenium::WebDriver::Error::TimeoutError:
    1142:  timeout: Timed out receiving message from renderer: 10.000
    1143:  (Session info: chrome=129.0.6668.58)
    1144:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    1145:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    1150:  # ./rb/lib/selenium/webdriver/remote/http/default.rb:103:in `request'
    1151:  # ./rb/lib/selenium/webdriver/remote/http/common.rb:67:in `call'
    1152:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:685:in `execute'
    1153:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    1154:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    1155:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:67:in `block (3 levels) in <module:Chrome>'
    1156:  # ------------------
    1157:  # --- Caused by: ---
    1158:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    1176:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    1177:  (No symbol) [0x00007FF7F02AD6EF]
    1178:  (No symbol) [0x00007FF7F02A92B4]
    1179:  (No symbol) [0x00007FF7F02A9450]
    1180:  (No symbol) [0x00007FF7F02981FF]
    1181:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    1182:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    1183:  2) Selenium::WebDriver::Chrome::Driver PrintsPage prints with valid params
    1184:  Failure/Error:
    1185:  expect(driver.print_page(orientation: 'landscape',
    1186:  page_ranges: ['1-2'],
    1187:  page: {width: 30})).to include(magic_number)
    1188:  Selenium::WebDriver::Error::TimeoutError:
    1189:  timeout: Timed out receiving message from renderer: 10.000
    1190:  (Session info: chrome=129.0.6668.58)
    1191:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    1192:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    1197:  # ./rb/lib/selenium/webdriver/remote/http/default.rb:103:in `request'
    1198:  # ./rb/lib/selenium/webdriver/remote/http/common.rb:67:in `call'
    1199:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:685:in `execute'
    1200:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    1201:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    1202:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:72:in `block (3 levels) in <module:Chrome>'
    1203:  # ------------------
    1204:  # --- Caused by: ---
    1205:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    1223:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    1224:  (No symbol) [0x00007FF7F02AD6EF]
    1225:  (No symbol) [0x00007FF7F02A92B4]
    1226:  (No symbol) [0x00007FF7F02A9450]
    1227:  (No symbol) [0x00007FF7F02981FF]
    1228:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    1229:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    1230:  3) Selenium::WebDriver::Chrome::Driver PrintsPage saves pdf
    1231:  Failure/Error: driver.save_print_page path
    1232:  Selenium::WebDriver::Error::TimeoutError:
    1233:  timeout: Timed out receiving message from renderer: 10.000
    1234:  (Session info: chrome=129.0.6668.58)
    1235:  # ./rb/lib/selenium/webdriver/remote/response.rb:63:in `add_cause'
    1236:  # ./rb/lib/selenium/webdriver/remote/response.rb:41:in `error'
    ...
    
    1244:  # ./rb/lib/selenium/webdriver/remote/bridge.rb:421:in `print_page'
    1245:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:54:in `print_page'
    1246:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:37:in `block in save_print_page'
    1247:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:36:in `open'
    1248:  # ./rb/lib/selenium/webdriver/common/driver_extensions/prints_page.rb:36:in `save_print_page'
    1249:  # ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:82:in `block (3 levels) in <module:Chrome>'
    1250:  # ------------------
    1251:  # --- Caused by: ---
    1252:  # Selenium::WebDriver::Error::WebDriverError:
    ...
    
    1270:  GetHandleVerifier [0x00007FF7F03EFC66+815670]
    1271:  (No symbol) [0x00007FF7F02AD6EF]
    1272:  (No symbol) [0x00007FF7F02A92B4]
    1273:  (No symbol) [0x00007FF7F02A9450]
    1274:  (No symbol) [0x00007FF7F02981FF]
    1275:  BaseThreadInitThunk [0x00007FFEFD104CB0+16]
    1276:  RtlUserThreadStart [0x00007FFEFE71ECDB+43]
    1277:  Finished in 2 minutes 7.4 seconds (files took 0.91317 seconds to load)
    1278:  14 examples, 3 failures
    1279:  Failed examples:
    1280:  rspec ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:65 # Selenium::WebDriver::Chrome::Driver PrintsPage returns base64 for print command
    1281:  rspec ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:70 # Selenium::WebDriver::Chrome::Driver PrintsPage prints with valid params
    1282:  rspec ./rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb:77 # Selenium::WebDriver::Chrome::Driver PrintsPage saves pdf
    1283:  ================================================================================
    1284:  �[32m[1,881 / 1,893]�[0m 12 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:element-chrome; 126s ... (4 actions, 1 running)
    1285:  �[32m[1,881 / 1,893]�[0m 12 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:element-chrome; 137s ... (4 actions, 1 running)
    1286:  �[32m[1,881 / 1,893]�[0m 12 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:element-chrome; 139s ... (4 actions, 1 running)
    1287:  �[32m[1,881 / 1,893]�[0m 12 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:virtual_authenticator-chrome; 130s ... (4 actions, 2 running)
    1288:  �[32m[1,882 / 1,893]�[0m 13 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:virtual_authenticator-chrome; 131s ... (4 actions, 1 running)
    1289:  �[32m[1,882 / 1,893]�[0m 13 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:virtual_authenticator-chrome; 132s ... (4 actions, 1 running)
    1290:  �[32m[1,882 / 1,893]�[0m 13 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:virtual_authenticator-chrome; 142s ... (4 actions, 1 running)
    1291:  �[32m[1,882 / 1,893]�[0m 13 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:virtual_authenticator-chrome; 146s ... (4 actions, 1 running)
    1292:  �[32m[1,882 / 1,893]�[0m 13 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:navigation-chrome; 18s ... (4 actions, 2 running)
    1293:  �[32m[1,883 / 1,893]�[0m 14 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:navigation-chrome; 19s ... (4 actions, 1 running)
    1294:  �[32m[1,883 / 1,893]�[0m 14 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:timeout-chrome; 6s ... (4 actions, 2 running)
    1295:  �[32m[1,884 / 1,893]�[0m 15 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:timeout-chrome; 7s ... (4 actions, 1 running)
    1296:  �[32m[1,884 / 1,893]�[0m 15 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:timeout-chrome; 8s ... (4 actions, 1 running)
    1297:  �[32m[1,884 / 1,893]�[0m 15 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:zipper-chrome; 9s disk-cache ... (4 actions, 2 running)
    1298:  �[32m[1,885 / 1,893]�[0m 16 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:zipper-chrome; 10s disk-cache ... (4 actions, 1 running)
    1299:  �[32m[1,885 / 1,893]�[0m 16 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:zipper-chrome; 11s disk-cache ... (4 actions, 1 running)
    1300:  �[32m[1,885 / 1,893]�[0m 16 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:zipper-chrome; 21s disk-cache ... (4 actions, 1 running)
    1301:  �[32m[1,885 / 1,893]�[0m 16 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:window-chrome; 16s disk-cache ... (4 actions, 1 running)
    1302:  �[32m[1,886 / 1,893]�[0m 17 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:window-chrome; 17s disk-cache ... (4 actions, 1 running)
    1303:  �[32m[1,886 / 1,893]�[0m 17 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:window-chrome; 18s disk-cache ... (4 actions, 1 running)
    1304:  �[32m[1,886 / 1,893]�[0m 17 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:window-chrome; 22s disk-cache ... (4 actions, 1 running)
    1305:  �[32m[1,887 / 1,893]�[0m 18 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:window-chrome; 23s disk-cache ... (4 actions, 0 running)
    1306:  �[32m[1,887 / 1,893]�[0m 18 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:listener-chrome; 20s disk-cache ... (4 actions, 0 running)
    1307:  �[32m[1,887 / 1,893]�[0m 18 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:listener-chrome; 21s disk-cache ... (4 actions, 1 running)
    1308:  �[32m[1,887 / 1,893]�[0m 18 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:listener-chrome; 26s disk-cache ... (4 actions, 1 running)
    1309:  �[32m[1,888 / 1,893]�[0m 19 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:storage-chrome; 14s disk-cache ... (4 actions, 1 running)
    1310:  �[32m[1,888 / 1,893]�[0m 19 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:storage-chrome; 15s disk-cache ... (4 actions, 1 running)
    1311:  �[32m[1,888 / 1,893]�[0m 19 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:storage-chrome; 20s disk-cache ... (4 actions, 1 running)
    1312:  �[32m[1,889 / 1,893]�[0m 20 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:storage-chrome; 21s disk-cache ... (4 actions, 0 running)
    1313:  �[32m[1,889 / 1,893]�[0m 20 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:storage-chrome; 22s disk-cache ... (4 actions, 0 running)
    1314:  �[32m[1,889 / 1,893]�[0m 20 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:select-chrome; 25s disk-cache ... (4 actions, 0 running)
    1315:  �[32m[1,889 / 1,893]�[0m 20 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:select-chrome; 27s disk-cache ... (4 actions, 1 running)
    1316:  �[32m[1,889 / 1,893]�[0m 20 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:service-chrome; 20s disk-cache ... (4 actions, 1 running)
    1317:  �[32m[1,889 / 1,893]�[0m 20 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:service-chrome; 23s disk-cache ... (4 actions, 2 running)
    1318:  �[32m[1,890 / 1,893]�[0m 21 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:service-chrome; 24s disk-cache ... (3 actions, 1 running)
    1319:  �[32m[1,890 / 1,893]�[0m 21 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:manager-chrome; 21s disk-cache ... (3 actions, 1 running)
    1320:  �[32m[1,890 / 1,893]�[0m 21 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:select-chrome; 7s local, disk-cache ... (3 actions, 1 running)
    1321:  �[32m[1,890 / 1,893]�[0m 21 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:select-chrome; 11s local, disk-cache ... (3 actions, 1 running)
    1322:  �[32m[1,890 / 1,893]�[0m 21 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:select-chrome; 12s local, disk-cache ... (3 actions, 2 running)
    1323:  �[32m[1,891 / 1,893]�[0m 22 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:manager-chrome; 6s ... (2 actions, 1 running)
    1324:  �[32m[1,891 / 1,893]�[0m 22 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/chrome:service-chrome; 4s local, disk-cache ... (2 actions running)
    1325:  �[32m[1,892 / 1,893]�[0m 23 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:manager-chrome; 1s local, disk-cache
    1326:  �[32m[1,892 / 1,893]�[0m 23 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:manager-chrome; 4s local, disk-cache
    1327:  �[32m[1,893 / 1,894]�[0m 24 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-chrome; 0s disk-cache
    1328:  �[32m[1,893 / 1,894]�[0m 24 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver/bidi:script-chrome
    1329:  �[32m[1,893 / 1,894]�[0m 24 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-chrome; 1s local, disk-cache
    1330:  �[32m[1,893 / 1,894]�[0m 24 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:script-chrome; 3s local, disk-cache
    1331:  �[32m[1,894 / 1,895]�[0m 25 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-chrome; 0s disk-cache
    1332:  �[32m[1,894 / 1,895]�[0m 25 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:bidi-chrome
    1333:  �[32m[1,894 / 1,895]�[0m 25 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-chrome; 1s local, disk-cache
    1334:  �[32m[1,894 / 1,895]�[0m 25 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:bidi-chrome; 3s local, disk-cache
    1335:  �[32m[1,895 / 1,896]�[0m 26 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome; 1s disk-cache
    1336:  �[32m[1,895 / 1,896]�[0m 26 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome
    1337:  �[32m[1,895 / 1,896]�[0m 26 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome; 1s local, disk-cache
    1338:  �[32m[1,895 / 1,896]�[0m 26 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome; 3s local, disk-cache
    1339:  �[32m[1,896 / 1,897]�[0m 27 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-chrome; 0s disk-cache
    1340:  �[32m[1,896 / 1,897]�[0m 27 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver:devtools-chrome
    1341:  �[32m[1,896 / 1,897]�[0m 27 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-chrome; 1s local, disk-cache
    1342:  �[32m[1,896 / 1,897]�[0m 27 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver:devtools-chrome; 138s local, disk-cache
    1343:  �[32m[1,897 / 1,898]�[0m 28 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome; 0s disk-cache
    1344:  �[32m[1,897 / 1,898]�[0m 28 / 29 tests, �[31m�[1m1 failed�[0m;�[0m [Sched] Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome
    1345:  �[32m[1,897 / 1,898]�[0m 28 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome; 1s local, disk-cache
    1346:  �[32m[1,897 / 1,898]�[0m 28 / 29 tests, �[31m�[1m1 failed�[0m;�[0m Testing //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome; 3s local, disk-cache
    1347:  �[32mINFO: �[0mFound 29 test targets...
    1348:  �[32mINFO: �[0mElapsed time: 1487.106s, Critical Path: 957.95s
    1349:  �[32mINFO: �[0m1898 processes: 981 disk cache hit, 841 internal, 76 local.
    1350:  �[32mINFO: �[0mBuild completed, 1 test FAILED, 1898 total actions
    1351:  //rb/spec/integration/selenium/webdriver:action_builder-chrome           �[0m�[32mPASSED�[0m in 15.6s
    1352:  //rb/spec/integration/selenium/webdriver:bidi-chrome                     �[0m�[32mPASSED�[0m in 3.1s
    1353:  //rb/spec/integration/selenium/webdriver:devtools-chrome                 �[0m�[32mPASSED�[0m in 138.5s
    1354:  //rb/spec/integration/selenium/webdriver:driver-chrome                   �[0m�[32mPASSED�[0m in 16.2s
    1355:  //rb/spec/integration/selenium/webdriver:element-chrome                  �[0m�[32mPASSED�[0m in 16.8s
    1356:  //rb/spec/integration/selenium/webdriver:error-chrome                    �[0m�[32mPASSED�[0m in 5.7s
    ...
    
    1371:  //rb/spec/integration/selenium/webdriver/bidi:browsing_context-chrome    �[0m�[32mPASSED�[0m in 3.2s
    1372:  //rb/spec/integration/selenium/webdriver/bidi:log_inspector-chrome       �[0m�[32mPASSED�[0m in 3.1s
    1373:  //rb/spec/integration/selenium/webdriver/bidi:script-chrome              �[0m�[32mPASSED�[0m in 3.2s
    1374:  //rb/spec/integration/selenium/webdriver/chrome:options-chrome           �[0m�[32mPASSED�[0m in 7.6s
    1375:  //rb/spec/integration/selenium/webdriver/chrome:profile-chrome           �[0m�[32mPASSED�[0m in 3.4s
    1376:  //rb/spec/integration/selenium/webdriver/chrome:service-chrome           �[0m�[32mPASSED�[0m in 5.0s
    1377:  //rb/spec/integration/selenium/webdriver/remote:driver-chrome            �[0m�[32mPASSED�[0m in 4.2s
    1378:  //rb/spec/integration/selenium/webdriver/remote:element-chrome           �[0m�[32mPASSED�[0m in 5.9s
    1379:  //rb/spec/integration/selenium/webdriver/chrome:driver-chrome            �[0m�[31m�[1mFAILED�[0m in 3 out of 3 in 130.7s
    1380:  Stats over 3 runs: max = 130.7s, min = 129.8s, avg = 130.1s, dev = 0.4s
    1381:  D:/_bazel/execroot/_main/bazel-out/x64_windows-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/chrome/driver-chrome/test.log
    1382:  D:/_bazel/execroot/_main/bazel-out/x64_windows-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/chrome/driver-chrome/test_attempts/attempt_1.log
    1383:  D:/_bazel/execroot/_main/bazel-out/x64_windows-fastbuild/testlogs/rb/spec/integration/selenium/webdriver/chrome/driver-chrome/test_attempts/attempt_2.log
    1384:  Executed 29 out of 29 tests: 28 tests pass and �[0m�[31m�[1m1 fails locally�[0m.
    1385:  There were tests whose specified size is too big. Use the --test_verbose_timeout_warnings command line option to see which ones these are.
    1386:  �[0m
    1387:  ##[error]Process completed with exit code 1.
    

    ✨ CI feedback usage guide:

    The CI feedback tool (/checks) automatically triggers when a PR has a failed check.
    The tool analyzes the failed checks and provides several feedbacks:

    • Failed stage
    • Failed test name
    • Failure summary
    • Relevant error logs

    In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:

    /checks "https://github.com/{repo_name}/actions/runs/{run_number}/job/{job_number}"
    

    where {repo_name} is the name of the repository, {run_number} is the run number of the failed check, and {job_number} is the job number of the failed check.

    Configuration options

    • enable_auto_checks_feedback - if set to true, the tool will automatically provide feedback when a check is failed. Default is true.
    • excluded_checks_list - a list of checks to exclude from the feedback, for example: ["check1", "check2"]. Default is an empty list.
    • enable_help_text - if set to true, the tool will provide a help message with the feedback. Default is true.
    • persistent_comment - if set to true, the tool will overwrite a previous checks comment with the new feedback. Default is true.
    • final_update_message - if persistent_comment is true and updating a previous checks message, the tool will also create a new message: "Persistent checks updated to latest commit". Default is true.

    See more information about the checks tool in the docs.

    Copy link
    Contributor

    PR Reviewer Guide 🔍

    ⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Key issues to review

    Code Duplication
    The v129Target class appears to be largely identical to the previous v126Target class, with only the version number changed. This pattern of duplication across versions could lead to maintenance issues.

    Version Update
    The DevTools version has been updated from 126 to 129. Ensure that all related components and dependencies are compatible with this new version.

    Browser Version Updates
    Multiple browser versions have been updated (Firefox, Edge, Chrome). Verify that these updates don't introduce compatibility issues with existing code.

    Copy link
    Contributor

    PR Code Suggestions ✨

    CategorySuggestion                                                                                                                                    Score
    Possible issue
    Return the result of the yield block to maintain the original behavior

    Consider returning the result of the yield block to maintain the original behavior.

    rb/lib/selenium/webdriver/common/target_locator.rb [99-104]

     begin
    -  yield
    +  result = yield
     ensure
       current_handles = @bridge.window_handles
       original = current_handles.first unless current_handles.include? original
       @bridge.switch_to_window original
     end
    +result
     
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: The suggestion correctly identifies a potential issue where the result of the yield block is not returned, which could alter the original behavior of the method. Returning the result ensures that the method behaves as expected.

    8
    Best practice
    Add comments to explain the purpose and verification process of SHA256 hashes

    Consider adding a comment explaining the significance of the SHA256 hash and how
    it's generated or verified.

    common/repositories.bzl [15]

    +# SHA256 hash of the Firefox 130.0.1 Linux x86_64 binary
    +# Verify this hash against the official Mozilla release page
     sha256 = "3b9cd7fe7d22f0960ee5a058e3c9e6b507814958ec5a9ac691cbd5ebd0895c93",
     
    • Apply this suggestion
    Suggestion importance[1-10]: 8

    Why: Adding comments to explain the purpose and verification process of SHA256 hashes is a good practice, enhancing code readability and helping future developers understand the significance of the hash values.

    8
    Enhancement
    Use string interpolation instead of concatenation

    Use string interpolation instead of concatenation for better readability and
    performance.

    rb/lib/selenium/webdriver/common/logger.rb [170-173]

    -message = "[DEPRECATION] #{old} is deprecated"
    -message << if new
    -             ". Use #{new} instead."
    -           else
    +message = "[DEPRECATION] #{old} is deprecated#{new ? ". Use #{new} instead." : ''}"
     
    • Apply this suggestion
    Suggestion importance[1-10]: 7

    Why: The suggestion improves code readability and performance by using string interpolation instead of concatenation. This is a minor enhancement but aligns with best practices in Ruby.

    7
    Enhance comments to provide more context about version requirements

    Consider adding a comment explaining the significance of version "v85" for Firefox
    compatibility.

    java/src/org/openqa/selenium/devtools/versions.bzl [2]

    -"v85",  # Required by Firefox
    +"v85",  # Required by Firefox for compatibility with its DevTools Protocol implementation
     
    • Apply this suggestion
    Suggestion importance[1-10]: 6

    Why: Adding more context to comments about version requirements improves code documentation and helps developers understand the significance of specific versions, although it is a minor enhancement.

    6
    Maintainability
    Use constants for version numbers in URLs and file names to improve maintainability

    Consider using a constant or variable for the version numbers in the URLs and file
    names to make future updates easier and reduce the risk of inconsistencies.

    common/repositories.bzl [14-15]

    -url = "https://ftp.mozilla.org/pub/firefox/releases/130.0.1/linux-x86_64/en-US/firefox-130.0.1.tar.bz2",
    +FIREFOX_VERSION = "130.0.1"
    +url = f"https://ftp.mozilla.org/pub/firefox/releases/{FIREFOX_VERSION}/linux-x86_64/en-US/firefox-{FIREFOX_VERSION}.tar.bz2",
     sha256 = "3b9cd7fe7d22f0960ee5a058e3c9e6b507814958ec5a9ac691cbd5ebd0895c93",
     
    • Apply this suggestion
    Suggestion importance[1-10]: 7

    Why: Using constants for version numbers can improve maintainability by reducing duplication and making future updates easier. This suggestion is valid and beneficial for the codebase.

    7
    Extract common URL parts into variables to reduce duplication

    Consider extracting the common part of the URL into a variable to reduce duplication
    and make future updates easier.

    common/selenium_manager.bzl [10]

    -url = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-3769be1/selenium-manager-linux",
    +BASE_URL = "https://github.com/SeleniumHQ/selenium_manager_artifacts/releases/download/selenium-manager-3769be1"
    +url = f"{BASE_URL}/selenium-manager-linux",
     
    • Apply this suggestion
    Suggestion importance[1-10]: 7

    Why: Extracting common URL parts into variables reduces duplication and improves maintainability, making it easier to update URLs in the future. This suggestion is practical and beneficial.

    7

    💡 Need additional feedback ? start a PR chat

    @diemol diemol merged commit 26db22e into trunk Sep 19, 2024
    25 of 30 checks passed
    @diemol diemol deleted the release-preparation-4.25.0 branch September 19, 2024 13:14
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    C-build Build related issues (bazel and CI) configuration changes dependencies Pull requests that update a dependency file documentation enhancement Review effort [1-5]: 3 tests
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    2 participants