From f442c704b806d6f1e64242aa462a31c6f128cf47 Mon Sep 17 00:00:00 2001 From: Bart Louwers Date: Tue, 14 Jul 2026 01:18:49 +0200 Subject: [PATCH] Fix intermittent iOS CppUnitTests build race (#4402) --- MODULE.bazel | 11 +++++++++++ bazel/patches/rules_xcodeproj/BUILD.bazel | 1 + .../patches/rules_xcodeproj/testing-framework.patch | 12 ++++++++++++ 3 files changed, 24 insertions(+) create mode 100644 bazel/patches/rules_xcodeproj/BUILD.bazel create mode 100644 bazel/patches/rules_xcodeproj/testing-framework.patch diff --git a/MODULE.bazel b/MODULE.bazel index 3435070e7..a24413a81 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -14,6 +14,17 @@ bazel_dep(name = "rules_shell", version = "0.6.1") bazel_dep(name = "rules_swift_package_manager", version = "1.3.0") bazel_dep(name = "googletest", version = "1.17.0.bcr.2") +# rules_xcodeproj accidentally includes a trailing comma in the generated +# Testing.framework rsync exclusion, causing intermittent test-host build races. +# TODO: Remove this override once the upstream fix is released: +# https://github.com/MobileNativeFoundation/rules_xcodeproj/pull/3321 +single_version_override( + module_name = "rules_xcodeproj", + patch_strip = 1, + patches = ["//bazel/patches/rules_xcodeproj:testing-framework.patch"], + version = "3.3.0", +) + node = use_extension("@rules_nodejs//nodejs:extensions.bzl", "node", dev_dependency = True) node.toolchain(node_version = "20.14.0") diff --git a/bazel/patches/rules_xcodeproj/BUILD.bazel b/bazel/patches/rules_xcodeproj/BUILD.bazel new file mode 100644 index 000000000..7d21ad2ce --- /dev/null +++ b/bazel/patches/rules_xcodeproj/BUILD.bazel @@ -0,0 +1 @@ +exports_files(["testing-framework.patch"]) diff --git a/bazel/patches/rules_xcodeproj/testing-framework.patch b/bazel/patches/rules_xcodeproj/testing-framework.patch new file mode 100644 index 000000000..cc6313186 --- /dev/null +++ b/bazel/patches/rules_xcodeproj/testing-framework.patch @@ -0,0 +1,12 @@ +diff --git a/xcodeproj/internal/bazel_integration_files/BUILD b/xcodeproj/internal/bazel_integration_files/BUILD +--- a/xcodeproj/internal/bazel_integration_files/BUILD ++++ b/xcodeproj/internal/bazel_integration_files/BUILD +@@ -52,7 +52,7 @@ frameworks=( + 'libclang_rt.ubsan*.dylib' + 'libXCTestBundleInject.dylib' + 'libXCTestSwiftSupport.dylib' +- 'Testing.framework', ++ 'Testing.framework' + 'XCTAutomationSupport.framework' + 'XCTest.framework' + 'XCTestCore.framework'