From 71ab9012eb7465038a09b1f91fe1bcf59db3d9c2 Mon Sep 17 00:00:00 2001 From: helly25 Date: Sat, 8 Nov 2025 13:34:07 +0100 Subject: [PATCH 1/3] Update rules_go to 0.59.0 --- tests/MODULE.bazel | 6 ++---- tests/WORKSPACE | 22 +++++++++++++--------- tests/scripts/run_external_tests.sh | 18 ++++++++++++------ 3 files changed, 27 insertions(+), 19 deletions(-) diff --git a/tests/MODULE.bazel b/tests/MODULE.bazel index 3cd6dd13..13d5f1bb 100644 --- a/tests/MODULE.bazel +++ b/tests/MODULE.bazel @@ -24,7 +24,7 @@ bazel_dep(name = "bazel_skylib", version = "1.8.2") bazel_dep(name = "platforms", version = "1.0.0") bazel_dep(name = "rules_cc", version = "0.2.14") bazel_dep(name = "rules_foreign_cc", version = "0.15.1") -bazel_dep(name = "rules_go", version = "0.50.1", repo_name = "io_bazel_rules_go") +bazel_dep(name = "rules_go", version = "0.59.0", repo_name = "io_bazel_rules_go") bazel_dep(name = "rules_license", version = "1.0.0") bazel_dep(name = "rules_rust", version = "0.67.0") bazel_dep(name = "rules_shell", version = "0.6.1") @@ -36,10 +36,8 @@ bazel_dep(name = "rules_python", version = "1.6.3") go_sdk = use_extension("@io_bazel_rules_go//go:extensions.bzl", "go_sdk") go_sdk.download( - name = "go_sdk", - version = "1.21.0", + version = "1.25.3", ) -use_repo(go_sdk, "go_toolchains") register_toolchains("@go_toolchains//:all") diff --git a/tests/WORKSPACE b/tests/WORKSPACE index 1787c777..58dff318 100644 --- a/tests/WORKSPACE +++ b/tests/WORKSPACE @@ -275,20 +275,26 @@ http_archive( http_archive( name = "io_bazel_rules_go", - sha256 = "f4a9314518ca6acfa16cc4ab43b0b8ce1e4ea64b81c38d8a3772883f153346b8", + sha256 = "68af54cb97fbdee5e5e8fe8d210d15a518f9d62abfd71620c3eaff3b26a5ff86", urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.50.1/rules_go-v0.50.1.zip", - "https://github.com/bazelbuild/rules_go/releases/download/v0.50.1/rules_go-v0.50.1.zip", + "https://mirror.bazel.build/github.com/bazel-contrib/rules_go/releases/download/v0.59.0/rules_go-v0.59.0.zip", + "https://github.com/bazel-contrib/rules_go/releases/download/v0.59.0/rules_go-v0.59.0.zip", ], ) -load("@io_bazel_rules_go//go:deps.bzl", "go_download_sdk", "go_rules_dependencies") +load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") go_rules_dependencies() -go_download_sdk( - name = "go_sdk", - version = "1.21.0", +go_register_toolchains(version = "1.25.4") + +# Create the host platform repository transitively required by rules_go. +load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe") +load("@platforms//host:extension.bzl", "host_platform_repo") + +maybe( + host_platform_repo, + name = "host_platform", ) # For testing rules_rust. @@ -387,6 +393,4 @@ http_archive( ], ) -load("@platforms//host:extension.bzl", "host_platform_repo") - host_platform_repo(name = "host_platform") diff --git a/tests/scripts/run_external_tests.sh b/tests/scripts/run_external_tests.sh index 2d30eb59..88bdab47 100755 --- a/tests/scripts/run_external_tests.sh +++ b/tests/scripts/run_external_tests.sh @@ -23,16 +23,20 @@ cd "${scripts_dir}" # Generate some files needed for the tests. "${bazel}" query "${common_args[@]}" @io_bazel_rules_go//tests/core/cgo:dylib_test >/dev/null + +output_base="$("${bazel}" info output_base)" +echo "Output base: ${output_base}" + +# As of rules_go 0.51.0 the 'generate_imported_dylib.sh' expects 'cc' to be available through PATH. if [[ ${USE_BZLMOD} == "true" ]]; then - script="$("${bazel}" info output_base)/external/rules_go~/tests/core/cgo/generate_imported_dylib.sh" - if [[ -f "${script}" ]]; then - "${script}" - else - "$("${bazel}" info output_base)/external/rules_go+/tests/core/cgo/generate_imported_dylib.sh" + script="${output_base}/external/rules_go~/tests/core/cgo/generate_imported_dylib.sh" + if [[ ! -f "${script}" ]]; then + script="${output_base}/external/rules_go+/tests/core/cgo/generate_imported_dylib.sh" fi else - "$("${bazel}" info output_base)/external/io_bazel_rules_go/tests/core/cgo/generate_imported_dylib.sh" + script="${output_base}/external/io_bazel_rules_go/tests/core/cgo/generate_imported_dylib.sh" fi +"${script}" || echo "Generating imported dylib failed." test_args=( "${common_test_args[@]}" @@ -60,7 +64,9 @@ absl_targets=($("${bazel}" query "${common_args[@]}" 'attr(timeout, short, tests @rules_rust//test/unit/{interleaved_cc_info,native_deps}:all \ @io_bazel_rules_go//tests/core/cgo:all \ -@io_bazel_rules_go//tests/core/cgo:cc_libs_test \ + -@io_bazel_rules_go//tests/core/cgo:cgo_abs_paths_test \ -@io_bazel_rules_go//tests/core/cgo:external_includes_test \ + -@io_bazel_rules_go//tests/core/cgo:wrapped_cgo_test \ -@rules_rust//test/unit/native_deps:{cdylib,bin}_has_native_dep_and_alwayslink_test \ "${absl_targets[@]}" \ -@com_google_absl//absl/time/internal/cctz:time_zone_format_test From 70ad2ef6d9b29bc97b399f03badaaf3eb189c560 Mon Sep 17 00:00:00 2001 From: helly25 Date: Sat, 8 Nov 2025 13:40:11 +0100 Subject: [PATCH 2/3] Small updates as reported by trunk check and readd go toolchains. --- tests/MODULE.bazel | 1 + tests/WORKSPACE | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/MODULE.bazel b/tests/MODULE.bazel index 13d5f1bb..211bbb04 100644 --- a/tests/MODULE.bazel +++ b/tests/MODULE.bazel @@ -38,6 +38,7 @@ go_sdk = use_extension("@io_bazel_rules_go//go:extensions.bzl", "go_sdk") go_sdk.download( version = "1.25.3", ) +use_repo(go_sdk, "go_toolchains") register_toolchains("@go_toolchains//:all") diff --git a/tests/WORKSPACE b/tests/WORKSPACE index 58dff318..db64063a 100644 --- a/tests/WORKSPACE +++ b/tests/WORKSPACE @@ -392,5 +392,3 @@ http_archive( "https://github.com/bazelbuild/platforms/releases/download/1.0.0/platforms-1.0.0.tar.gz", ], ) - -host_platform_repo(name = "host_platform") From dc2f7f2fef7293163d11f2a15002b74f76bb8187 Mon Sep 17 00:00:00 2001 From: helly25 Date: Sat, 8 Nov 2025 14:01:28 +0100 Subject: [PATCH 3/3] Tweaks --- tests/MODULE.bazel | 2 +- tests/scripts/run_external_tests.sh | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/MODULE.bazel b/tests/MODULE.bazel index 211bbb04..d4737e3d 100644 --- a/tests/MODULE.bazel +++ b/tests/MODULE.bazel @@ -36,7 +36,7 @@ bazel_dep(name = "rules_python", version = "1.6.3") go_sdk = use_extension("@io_bazel_rules_go//go:extensions.bzl", "go_sdk") go_sdk.download( - version = "1.25.3", + version = "1.25.4", ) use_repo(go_sdk, "go_toolchains") diff --git a/tests/scripts/run_external_tests.sh b/tests/scripts/run_external_tests.sh index 88bdab47..eeffacce 100755 --- a/tests/scripts/run_external_tests.sh +++ b/tests/scripts/run_external_tests.sh @@ -29,14 +29,14 @@ echo "Output base: ${output_base}" # As of rules_go 0.51.0 the 'generate_imported_dylib.sh' expects 'cc' to be available through PATH. if [[ ${USE_BZLMOD} == "true" ]]; then - script="${output_base}/external/rules_go~/tests/core/cgo/generate_imported_dylib.sh" - if [[ ! -f "${script}" ]]; then - script="${output_base}/external/rules_go+/tests/core/cgo/generate_imported_dylib.sh" + generate_imported_dylib_sh="${output_base}/external/rules_go~/tests/core/cgo/generate_imported_dylib.sh" + if [[ ! -f "${generate_imported_dylib_sh}" ]]; then + generate_imported_dylib_sh="${output_base}/external/rules_go+/tests/core/cgo/generate_imported_dylib.sh" fi else - script="${output_base}/external/io_bazel_rules_go/tests/core/cgo/generate_imported_dylib.sh" + generate_imported_dylib_sh="${output_base}/external/io_bazel_rules_go/tests/core/cgo/generate_imported_dylib.sh" fi -"${script}" || echo "Generating imported dylib failed." +"${generate_imported_dylib_sh}" || echo "ERROR: rules_go script 'tests/core/cgo/generate_imported_dylib.sh' failed." test_args=( "${common_test_args[@]}"