Skip to content

Conversation

@selenium-ci
Copy link
Member

@selenium-ci selenium-ci commented Jun 11, 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 from version 139.0.1 to 139.0.4
• Update Chrome from version 137.0.7151.68 to 137.0.7151.70
• Update corresponding SHA256 checksums for all platforms


Changes walkthrough 📝

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

common/repositories.bzl

• Updated Firefox version from 139.0.1 to 139.0.4 for Linux and macOS

• Updated Chrome version from 137.0.7151.68 to 137.0.7151.70 for Linux
and macOS
• Updated SHA256 checksums for all browser and driver
downloads
• Updated ChromeDriver URLs and checksums to match Chrome
version

+12/-12 

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 11, 2025
    @qodo-merge-pro
    Copy link
    Contributor

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 Security concerns

    Checksum validation:
    The PR updates SHA256 checksums for browser and driver downloads from external sources. While this is standard practice, it's critical to verify that these checksums are correct and match the actual files being downloaded. Incorrect checksums could allow corrupted or potentially malicious files to be accepted during the build process. The checksums should be independently verified against the official Mozilla and Google Chrome for Testing repositories.

    ⚡ Recommended focus areas for review

    Checksum Validation

    The SHA256 checksums for all browser and driver downloads have been updated. These checksums should be verified against the actual downloaded files to ensure integrity and prevent potential security issues from corrupted or tampered downloads.

            url = "https://ftp.mozilla.org/pub/firefox/releases/139.0.4/linux-x86_64/en-US/firefox-139.0.4.tar.xz",
            sha256 = "fe22686f09a0c46390fea430b26cccc323d92af26869699f394f25b5e71527a3",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    filegroup(
        name = "files",
        srcs = glob(["**/*"]),
    )
    
    exports_files(["firefox/firefox"])
    
    js_library(
        name = "firefox-js",
        data = [":files"],
    )
    """,
        )
    
        dmg_archive(
            name = "mac_firefox",
            url = "https://ftp.mozilla.org/pub/firefox/releases/139.0.4/mac/en-US/Firefox%20139.0.4.dmg",
            sha256 = "fc058bf34094828c0919ad81672d697cf01dfa291ba9b11e0b1c119588878405",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["Firefox.app"])
    
    js_library(
        name = "firefox-js",
        data = glob(["Firefox.app/**/*"]),
    )
    """,
        )
    
        http_archive(
            name = "linux_beta_firefox",
            url = "https://ftp.mozilla.org/pub/firefox/releases/140.0b7/linux-x86_64/en-US/firefox-140.0b7.tar.xz",
            sha256 = "a6e232e676e9b1490d673745da8221614e7cab68ed73003e41d6a07d91062af8",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    filegroup(
        name = "files",
        srcs = glob(["**/*"]),
    )
    
    exports_files(["firefox/firefox"])
    
    js_library(
        name = "firefox-js",
        data = [":files"],
    )
    """,
        )
    
        dmg_archive(
            name = "mac_beta_firefox",
            url = "https://ftp.mozilla.org/pub/firefox/releases/140.0b7/mac/en-US/Firefox%20140.0b7.dmg",
            sha256 = "24a756a979ef4c23e223002e8cb748ad69236f023f0ba0168d98add4f5d0cb8e",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["Firefox.app"])
    
    js_library(
        name = "firefox-js",
        data = glob(["Firefox.app/**/*"]),
    )
    """,
        )
    
        http_archive(
            name = "linux_geckodriver",
            url = "https://github.com/mozilla/geckodriver/releases/download/v0.36.0/geckodriver-v0.36.0-linux64.tar.gz",
            sha256 = "0bde38707eb0a686a20c6bd50f4adcc7d60d4f73c60eb83ee9e0db8f65823e04",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["geckodriver"])
    
    js_library(
        name = "geckodriver-js",
        data = ["geckodriver"],
    )
    """,
        )
    
        http_archive(
            name = "mac_geckodriver",
            url = "https://github.com/mozilla/geckodriver/releases/download/v0.36.0/geckodriver-v0.36.0-macos.tar.gz",
            sha256 = "b5627bfc29801b8752c9f1e7699018963c39c076aab6576dc14fcb1ce7a256f6",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["geckodriver"])
    
    js_library(
        name = "geckodriver-js",
        data = ["geckodriver"],
    )
    """,
        )
    
        pkg_archive(
            name = "mac_edge",
            url = "https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/881a4aef-792c-4d81-a76f-3cf546510d68/MicrosoftEdge-137.0.3296.68.pkg",
            sha256 = "4de62ee93ba67db666597807fc991e749f073af07a577dfdfc56dbf19409c87d",
            move = {
                "MicrosoftEdge-137.0.3296.68.pkg/Payload/Microsoft Edge.app": "Edge.app",
            },
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["Edge.app"])
    
    js_library(
        name = "edge-js",
        data = glob(["Edge.app/**/*"]),
    )
    """,
        )
    
        deb_archive(
            name = "linux_edge",
            url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_137.0.3296.68-1_amd64.deb",
            sha256 = "76099017ace977c74060aa134a289d93c554e9d67f6561039580fdd483da0c41",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    filegroup(
        name = "files",
        srcs = glob(["**/*"]),
    )
    
    exports_files(["opt/microsoft/msedge/microsoft-edge"])
    
    js_library(
        name = "edge-js",
        data = [":files"],
    )
    """,
        )
    
        http_archive(
            name = "linux_edgedriver",
            url = "https://msedgedriver.azureedge.net/137.0.3296.68/edgedriver_linux64.zip",
            sha256 = "0605ae9e651befd470826ff3c3baf74b3d40599c25f1edd60b09d10f5b97144a",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["msedgedriver"])
    
    js_library(
        name = "msedgedriver-js",
        data = ["msedgedriver"],
    )
    """,
        )
    
        http_archive(
            name = "mac_edgedriver",
            url = "https://msedgedriver.azureedge.net/137.0.3296.68/edgedriver_mac64.zip",
            sha256 = "29b331d365361f0e9ef68c2e573f33ca895b3fa607823a66de9d6f226dbe4a54",
            build_file_content = """
    load("@aspect_rules_js//js:defs.bzl", "js_library")
    package(default_visibility = ["//visibility:public"])
    
    exports_files(["msedgedriver"])
    
    js_library(
        name = "msedgedriver-js",
        data = ["msedgedriver"],
    )
    """,
        )
    
        http_archive(
            name = "linux_chrome",
            url = "https://storage.googleapis.com/chrome-for-testing-public/137.0.7151.70/linux64/chrome-linux64.zip",
            sha256 = "da1424d975dbe963b0a7f7f8e8c2e477bfed6b3430a2bc0b287f1c247ec62ee3",
            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/137.0.7151.70/mac-x64/chrome-mac-x64.zip",
            sha256 = "2ea79a9457dbaffae6fbdf592c93776ac859dca98b448f7513cdd68234454a07",
            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/137.0.7151.70/linux64/chromedriver-linux64.zip",
            sha256 = "cade69e8d67f4951049e56d796111755e0bf9240d26378975a95c8423bb3f55a",
            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/137.0.7151.70/mac-x64/chromedriver-mac-x64.zip",
            sha256 = "d80825e87543d99ad7a8b9356fb236ddb7df3ba087f8f314991195da27a7ccc3",

    @qodo-merge-pro
    Copy link
    Contributor

    PR Code Suggestions ✨

    No code suggestions found for the PR.

    @diemol diemol merged commit abd2160 into trunk Jun 11, 2025
    35 checks passed
    @diemol diemol deleted the pinned-browser-updates branch June 11, 2025 07:38
    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