From edf3fcbaf5799b3d2286bfe6a73a8b28aeee0b14 Mon Sep 17 00:00:00 2001 From: Simon Mavi Stewart Date: Sun, 9 Nov 2025 09:58:00 +1100 Subject: [PATCH 1/2] [bazel] Move `rules_rust` to `bzlmod` Bazel 9 is coming out soon, and that drops support for workspace-based builds. Preempt this by moving `rules_rust` into the module file. --- MODULE.bazel | 25 +++++++++++++++++++------ WORKSPACE | 31 ------------------------------- rust/Cargo.Bazel.lock | 2 +- 3 files changed, 20 insertions(+), 38 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 023b5a236026e..940d4a87b4982 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -1,21 +1,21 @@ module(name = "selenium") bazel_dep(name = "apple_rules_lint", version = "0.4.0") -bazel_dep(name = "aspect_bazel_lib", version = "2.13.0") +bazel_dep(name = "aspect_bazel_lib", version = "2.14.0") bazel_dep(name = "aspect_rules_esbuild", version = "0.21.0") bazel_dep(name = "aspect_rules_js", version = "2.3.7") bazel_dep(name = "aspect_rules_ts", version = "3.6.0") -bazel_dep(name = "bazel_features", version = "1.23.0") -bazel_dep(name = "bazel_skylib", version = "1.7.1") -bazel_dep(name = "buildifier_prebuilt", version = "6.4.0") +bazel_dep(name = "bazel_features", version = "1.32.0") +bazel_dep(name = "bazel_skylib", version = "1.8.2") +bazel_dep(name = "buildifier_prebuilt", version = "7.3.1") bazel_dep(name = "contrib_rules_jvm", version = "0.27.0") -bazel_dep(name = "platforms", version = "0.0.11") +bazel_dep(name = "platforms", version = "1.0.0") # Required for the closure rules bazel_dep(name = "protobuf", version = "29.2", dev_dependency = True, repo_name = "com_google_protobuf") # Required for rules_rust to import the crates properly -bazel_dep(name = "rules_cc", version = "0.2.0", dev_dependency = True) +bazel_dep(name = "rules_cc", version = "0.2.8", dev_dependency = True) bazel_dep(name = "rules_dotnet", version = "0.17.5") bazel_dep(name = "rules_java", version = "8.7.1") @@ -27,6 +27,7 @@ bazel_dep(name = "rules_pkg", version = "1.0.1") bazel_dep(name = "rules_python", version = "1.6.3") bazel_dep(name = "rules_proto", version = "7.0.2") bazel_dep(name = "rules_ruby", version = "0.19.0") +bazel_dep(name = "rules_rust", version = "0.67.0") # Until `rules_jvm_external` 6.8 ships single_version_override( @@ -367,6 +368,18 @@ use_repo(ruby, "bundle", "ruby", "ruby_toolchains") register_toolchains("@ruby_toolchains//:all") +rust = use_extension("@rules_rust//rust:extensions.bzl", "rust") +rust.toolchain(versions = ["1.89.0"]) + +crate = use_extension("@rules_rust//crate_universe:extensions.bzl", "crate") +crate.from_cargo( + name = "crates", + cargo_lockfile = "//rust:Cargo.lock", + lockfile = "//rust:Cargo.Bazel.lock", + manifests = ["//rust:Cargo.toml"], +) +use_repo(crate, "crates") + selenium_manager_artifacts = use_extension("//common:selenium_manager.bzl", "selenium_manager_artifacts") use_repo( selenium_manager_artifacts, diff --git a/WORKSPACE b/WORKSPACE index 151d0438675ff..b248abb51bffa 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -21,34 +21,3 @@ rules_closure_dependencies( rules_closure_toolchains() -# rules_rust fails to compile zstd on Windows when used with Bzlmod -# so we keep it in WORKSPACE for now - -http_archive( - name = "rules_rust", - integrity = "sha256-YrnH/f8jCpEqGAU+keNqauc+QSde9egtcFXqPtJuee4=", - urls = ["https://github.com/bazelbuild/rules_rust/releases/download/0.65.0/rules_rust-0.65.0.tar.gz"], -) - -load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains") - -rules_rust_dependencies() - -rust_register_toolchains(versions = ["1.89.0"]) - -load("@rules_rust//crate_universe:defs.bzl", "crates_repository") - -crates_repository( - name = "crates", - cargo_lockfile = "//rust:Cargo.lock", - lockfile = "//rust:Cargo.Bazel.lock", - manifests = ["//rust:Cargo.toml"], -) - -load("@crates//:defs.bzl", "crate_repositories") - -crate_repositories() - -load("@rules_rust//cargo:deps.bzl", "cargo_dependencies") - -cargo_dependencies() diff --git a/rust/Cargo.Bazel.lock b/rust/Cargo.Bazel.lock index 97bcd69f4e88d..e29a8191f2652 100644 --- a/rust/Cargo.Bazel.lock +++ b/rust/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "369365c5089394be8f6fd5d834b8acd8fe568305faff5cca5d29342d01697bd7", + "checksum": "c2f6ce33acb9a60d2a50182bd219781cb613c02f03cb33e317ad0f9341fc4606", "crates": { "addr2line 0.25.1": { "name": "addr2line", From 8856014c8a463519496b534a09b17750aaa33176 Mon Sep 17 00:00:00 2001 From: Simon Mavi Stewart Date: Sun, 9 Nov 2025 16:04:29 +1100 Subject: [PATCH 2/2] Run formatter --- WORKSPACE | 1 - 1 file changed, 1 deletion(-) diff --git a/WORKSPACE b/WORKSPACE index b248abb51bffa..6dfa131dc9e9f 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -20,4 +20,3 @@ rules_closure_dependencies( ) rules_closure_toolchains() -