Skip to content

[dotnet][rb][java][js][py] Automated Browser Version Update #15953

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

Merged
merged 9 commits into from
Jun 25, 2025

Conversation

selenium-ci
Copy link
Member

@selenium-ci selenium-ci commented Jun 25, 2025

User description

This is an automated pull request to update pinned browsers and drivers

Merge after verify the new browser versions properly passing the tests and no bugs need to be filed


PR Type

Other


Description

  • Update Firefox stable from 139.0.4 to 140.0

  • Update Firefox beta from 140.0b9 to 141.0b1

  • Update Chrome stable from 137.0.7151.119 to 138.0.7204.49

  • Update Chrome beta from 138.0.7204.35 to 138.0.7204.49


Changes walkthrough 📝

Relevant files
Configuration changes
repositories.bzl
Update browser versions and checksums                                       

common/repositories.bzl

  • Updated Firefox stable version from 139.0.4 to 140.0 for Linux and
    macOS
  • Updated Firefox beta version from 140.0b9 to 141.0b1 for Linux and
    macOS
  • Updated Chrome stable version from 137.0.7151.119 to 138.0.7204.49 for
    Linux and macOS
  • Updated Chrome beta version from 138.0.7204.35 to 138.0.7204.49 for
    Linux and macOS
  • Updated corresponding SHA256 checksums for all browser archives
  • +24/-24 

    Need help?
  • Type /help how to ... in the comments thread for any questions about Qodo Merge usage.
  • Check out the documentation for more information.
  • @selenium-ci selenium-ci added the B-build Includes scripting, bazel and CI integrations label Jun 25, 2025
    Copy link
    Contributor

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Version Consistency

    Chrome beta version appears to be the same as stable version (138.0.7204.49) which may indicate an error in the automated update process or that beta and stable are currently aligned

            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chrome-linux64.zip",
            sha256 = "8751e9a4a0ca7c8127acb06c4fe0c438d091c0fb1c3712dcd4ea277773177304",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    filegroup(
        name = "files",
        srcs = glob(["**/*"]),
    )
    
    exports_files(["chrome-linux64/chrome"])
    
    js_library(
        name = "chrome-js",
        data = [":files"],
    )
    """,
        )
        http_archive(
            name = "mac_beta_chrome",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/mac-x64/chrome-mac-x64.zip",
            sha256 = "98e4f2e97a31ca7104f72ca1fbe506b0070dd181f0bccc1b4af90ff950ceaa57",
    Duplicate SHA256

    Multiple Chrome entries share identical SHA256 checksums, which should be verified as correct since different versions typically have different checksums

            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chrome-linux64.zip",
            sha256 = "8751e9a4a0ca7c8127acb06c4fe0c438d091c0fb1c3712dcd4ea277773177304",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    filegroup(
        name = "files",
        srcs = glob(["**/*"]),
    )
    
    exports_files(["chrome-linux64/chrome"])
    
    js_library(
        name = "chrome-js",
        data = [":files"],
    )
    """,
        )
        http_archive(
            name = "mac_chrome",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/mac-x64/chrome-mac-x64.zip",
            sha256 = "98e4f2e97a31ca7104f72ca1fbe506b0070dd181f0bccc1b4af90ff950ceaa57",
            strip_prefix = "chrome-mac-x64",
            patch_cmds = [
                "mv 'Google Chrome for Testing.app' Chrome.app",
                "mv 'Chrome.app/Contents/MacOS/Google Chrome for Testing' Chrome.app/Contents/MacOS/Chrome",
            ],
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["Chrome.app"])
    
    js_library(
        name = "chrome-js",
        data = glob(["Chrome.app/**/*"]),
    )
    """,
        )
        http_archive(
            name = "linux_chromedriver",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chromedriver-linux64.zip",
            sha256 = "0ef562acf7a87733a77cf51f52e3841cf7fb63c17d618b6ccb45a9a53ca89017",
            strip_prefix = "chromedriver-linux64",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["chromedriver"])
    
    js_library(
        name = "chromedriver-js",
        data = ["chromedriver"],
    )
    """,
        )
    
        http_archive(
            name = "mac_chromedriver",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/mac-x64/chromedriver-mac-x64.zip",
            sha256 = "bff1fc6075912698a1699a8d0979da3fdc576775a3fe78e6ae68338459c8882f",
            strip_prefix = "chromedriver-mac-x64",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["chromedriver"])
    
    js_library(
        name = "chromedriver-js",
        data = ["chromedriver"],
    )
    """,
        )
    
        http_archive(
            name = "linux_beta_chrome",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chrome-linux64.zip",
            sha256 = "8751e9a4a0ca7c8127acb06c4fe0c438d091c0fb1c3712dcd4ea277773177304",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    filegroup(
        name = "files",
        srcs = glob(["**/*"]),
    )
    
    exports_files(["chrome-linux64/chrome"])
    
    js_library(
        name = "chrome-js",
        data = [":files"],
    )
    """,
        )
        http_archive(
            name = "mac_beta_chrome",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/mac-x64/chrome-mac-x64.zip",
            sha256 = "98e4f2e97a31ca7104f72ca1fbe506b0070dd181f0bccc1b4af90ff950ceaa57",
            strip_prefix = "chrome-mac-x64",
            patch_cmds = [
                "mv 'Google Chrome for Testing.app' Chrome.app",
                "mv 'Chrome.app/Contents/MacOS/Google Chrome for Testing' Chrome.app/Contents/MacOS/Chrome",
            ],
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["Chrome.app"])
    
    js_library(
        name = "chrome-js",
        data = glob(["Chrome.app/**/*"]),
    )
    """,
        )
        http_archive(
            name = "linux_beta_chromedriver",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chromedriver-linux64.zip",
            sha256 = "0ef562acf7a87733a77cf51f52e3841cf7fb63c17d618b6ccb45a9a53ca89017",
            strip_prefix = "chromedriver-linux64",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["chromedriver"])
    
    js_library(
        name = "chromedriver-js",
        data = ["chromedriver"],
    )
    """,
        )
    
        http_archive(
            name = "mac_beta_chromedriver",
            url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/mac-x64/chromedriver-mac-x64.zip",
            sha256 = "bff1fc6075912698a1699a8d0979da3fdc576775a3fe78e6ae68338459c8882f",

    Copy link
    Contributor

    qodo-merge-pro bot commented Jun 25, 2025

    PR Code Suggestions ✨

    Explore these optional code suggestions:

    CategorySuggestion                                                                                                                                    Impact
    Possible issue
    Beta version matches stable version

    The beta Chrome version is using the same URL and SHA256 as the stable Chrome
    version (138.0.7204.49). Beta versions should typically use a different version
    number than stable releases to maintain proper version separation and testing
    workflows.

    common/repositories.bzl [278-298]

     http_archive(
         name = "linux_beta_chrome",
    -    url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chrome-linux64.zip",
    -    sha256 = "8751e9a4a0ca7c8127acb06c4fe0c438d091c0fb1c3712dcd4ea277773177304",
    +    url = "https://storage.googleapis.com/chrome-for-testing-public/139.0.7204.49/linux64/chrome-linux64.zip",
    +    sha256 = "[correct_beta_sha256_hash]",
         ...
     )

    [To ensure code accuracy, apply this suggestion manually]

    Suggestion importance[1-10]: 9

    __

    Why: The suggestion correctly identifies that the linux_beta_chrome archive points to the same URL and SHA256 as the stable linux_chrome archive. This is likely a configuration error, as the beta and stable versions should be distinct.

    High
    Beta version duplicates stable configuration

    The macOS beta Chrome version is identical to the stable version (138.0.7204.49)
    with the same SHA256 hash. This creates a configuration issue where beta and
    stable Chrome versions are indistinguishable.

    common/repositories.bzl [299-319]

     http_archive(
         name = "mac_beta_chrome",
    -    url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/mac-x64/chrome-mac-x64.zip",
    -    sha256 = "98e4f2e97a31ca7104f72ca1fbe506b0070dd181f0bccc1b4af90ff950ceaa57",
    +    url = "https://storage.googleapis.com/chrome-for-testing-public/139.0.7204.49/mac-x64/chrome-mac-x64.zip",
    +    sha256 = "[correct_beta_sha256_hash]",
         ...
     )

    [To ensure code accuracy, apply this suggestion manually]

    Suggestion importance[1-10]: 9

    __

    Why: The suggestion correctly identifies that the mac_beta_chrome archive points to the same URL and SHA256 as the stable mac_chrome archive. This is likely a configuration error, as the beta and stable versions should be distinct.

    High
    Beta ChromeDriver matches stable version

    The beta ChromeDriver version uses the same URL and SHA256 as the stable
    ChromeDriver (138.0.7204.49). Beta ChromeDriver should correspond to the beta
    Chrome version to ensure compatibility between browser and driver versions.

    common/repositories.bzl [320-334]

     http_archive(
         name = "linux_beta_chromedriver",
    -    url = "https://storage.googleapis.com/chrome-for-testing-public/138.0.7204.49/linux64/chromedriver-linux64.zip",
    -    sha256 = "0ef562acf7a87733a77cf51f52e3841cf7fb63c17d618b6ccb45a9a53ca89017",
    +    url = "https://storage.googleapis.com/chrome-for-testing-public/139.0.7204.49/linux64/chromedriver-linux64.zip",
    +    sha256 = "[correct_beta_chromedriver_sha256_hash]",
         ...
     )

    [To ensure code accuracy, apply this suggestion manually]

    Suggestion importance[1-10]: 9

    __

    Why: The suggestion correctly identifies that the linux_beta_chromedriver archive points to the same URL and SHA256 as the stable linux_chromedriver archive. This is likely a configuration error, as the beta and stable versions should be distinct.

    High
    • Update

    @diemol diemol merged commit 89b5b10 into trunk Jun 25, 2025
    32 checks passed
    @diemol diemol deleted the pinned-browser-updates branch June 25, 2025 14:52
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    B-build Includes scripting, bazel and CI integrations Review effort 2/5
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    3 participants