diff options
| author | Leitwolf11 | 2026-10-23 02:22:49 +0300 |
|---|---|---|
| committer | Leitwolf11 | 2026-10-23 02:22:49 +0300 |
| commit | 82521713785fa46135c0c143e5cfb1715c210b57 (patch) | |
| tree | 28ee0fec9a7830638d73d642e01e063c6cfd71f9 /MODULE.bazel | |
| parent | 2c23a508c95c557e2ff9ad74b517e5fc65175387 (diff) | |
| download | catch3-build/rules-swift-windows.tar.gz | |
Pin rules_swift 3.4.2 so Bazel works on Windows hosts with Swiftbuild/rules-swift-windows
rules_swift reaches the module graph through protobuf and rules_apple,
resolved to 3.1.2. Its Windows autoconfiguration runs whenever
swiftc.exe is on PATH and, up to 3.4.1, writes a toolchain that
indexes APPLE_PLATFORMS_CONSTRAINTS with the undefined name arch, so
every Bazel build on such a host failed in analysis with "name 'arch'
is not defined". The hosted runners have no Swift, which is why CI
never saw it.
A single_version_override selects 3.4.2, the first fixed release with
the same compatibility level. It needs protobuf 29 and apple_support
1.24.2, both already satisfied by the graph (protobuf stays at 33.4);
nlohmann_json, only used by rules_swift's own tools, moves to
3.12.0.bcr.1 in the lockfile.
Verified on Windows with Swift 6.4.1 on PATH: bazel test
//tests/Progmasoft:property_tests passes, where it failed before.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'MODULE.bazel')
| -rw-r--r-- | MODULE.bazel | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/MODULE.bazel b/MODULE.bazel index fcc80d58..67348006 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -4,3 +4,14 @@ bazel_dep(name = "bazel_skylib", version = "1.9.0") bazel_dep(name = "rules_cc", version = "0.2.17") bazel_dep(name = "rules_license", version = "1.0.0") bazel_dep(name = "platforms", version = "1.0.0") + +# rules_swift reaches the graph through protobuf and rules_apple. Up to 3.4.1 +# its Windows autoconfiguration, which runs whenever swiftc.exe is on PATH, +# writes a toolchain that indexes APPLE_PLATFORMS_CONSTRAINTS with an +# undefined name, and every build on such a host fails during analysis. +# 3.4.2 is the first fixed release with the same compatibility level and no +# newer protobuf. +single_version_override( + module_name = "rules_swift", + version = "3.4.2", +) |