From 854719ca3c8fb20a4e10cb4589b1e2e3636543f9 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 16:16:57 +0000 Subject: [PATCH 01/22] ci: smoke test Watchman with MSVC --- .github/workflows/bazel.yml | 48 +++++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 5 deletions(-) diff --git a/.github/workflows/bazel.yml b/.github/workflows/bazel.yml index 9f9ed85..4cae731 100644 --- a/.github/workflows/bazel.yml +++ b/.github/workflows/bazel.yml @@ -116,10 +116,12 @@ jobs: path: artifacts/x86_64-windows-gnu/watchman.exe if-no-files-found: error - build-windows-host: - name: Build Windows binary on Windows + smoke-windows-msvc: + name: Smoke test (x86_64-windows-msvc) runs-on: windows-2022 timeout-minutes: 120 + env: + USE_BAZEL_VERSION: 9.2.0 steps: - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6 @@ -127,11 +129,47 @@ jobs: with: bazelisk-cache: true cache-save: ${{ github.event_name != 'pull_request' }} - disk-cache: ${{ github.workflow }}-windows-x64 + disk-cache: ${{ github.workflow }}-windows-msvc repository-cache: true - - name: Build Windows distribution - run: bazel build //:watchman-x86_64-windows-gnu + - name: Build and smoke test with MSVC + shell: pwsh + run: | + $registry = "file:///" + $env:GITHUB_WORKSPACE.Replace("\", "/") + "/bcr" + $bazelArgs = @( + "--registry=$registry" + "--registry=https://bcr.bazel.build" + "--incompatible_autoload_externally=+@rules_cc" + "--extra_toolchains=@local_config_cc//:cc-toolchain-x64_windows" + ) + + Push-Location tests/bcr + try { + bazel build @bazelArgs "@watchman//:watchman" + if ($LASTEXITCODE -ne 0) { + throw "MSVC build failed with code $LASTEXITCODE" + } + + $outputs = bazel cquery @bazelArgs --output=files "@watchman//:watchman" + if ($LASTEXITCODE -ne 0) { + throw "MSVC output query failed with code $LASTEXITCODE" + } + + $relativeBinary = @($outputs | Where-Object { $_ -like "*.exe" }) + if ($relativeBinary.Count -ne 1) { + throw "expected one Watchman executable, got $($relativeBinary.Count)" + } + + $executionRoot = bazel info execution_root + if ($LASTEXITCODE -ne 0) { + throw "Bazel execution-root query failed with code $LASTEXITCODE" + } + $watchman = Join-Path $executionRoot $relativeBinary[0] + } finally { + Pop-Location + } + + ./tests/watchman_smoke_test.ps1 -Watchman $watchman smoke: name: Smoke test (${{ matrix.triple }}) From 9a769c4971326b837ba9467cd9fd7040f16e31fc Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 19:49:54 +0000 Subject: [PATCH 02/22] ci: preserve BCR overlay line endings --- .gitattributes | 1 + 1 file changed, 1 insertion(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..aa8cb63 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +bcr/** text eol=lf From 1e67222105fa3dfe067413d1479924b958649c3b Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 19:56:17 +0000 Subject: [PATCH 03/22] ci: use auto-detected MSVC toolchain --- .github/workflows/bazel.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/bazel.yml b/.github/workflows/bazel.yml index 4cae731..f1a98e7 100644 --- a/.github/workflows/bazel.yml +++ b/.github/workflows/bazel.yml @@ -140,7 +140,6 @@ jobs: "--registry=$registry" "--registry=https://bcr.bazel.build" "--incompatible_autoload_externally=+@rules_cc" - "--extra_toolchains=@local_config_cc//:cc-toolchain-x64_windows" ) Push-Location tests/bcr From 29657473d070225bfb143807e42c77b98a658da0 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 20:10:51 +0000 Subject: [PATCH 04/22] fix: support native MSVC builds --- bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel | 4 +++- .../watchman/2026.07.06.00/patches/watchman-bazel.patch | 8 ++++++-- bcr/modules/watchman/2026.07.06.00/source.json | 4 ++-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel index 92d73f1..a49dffa 100644 --- a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel +++ b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel @@ -311,7 +311,6 @@ watchman_binary( "@folly//folly/portability:fcntl", "@folly//folly/portability:filesystem", "@folly//folly/portability:sockets", - "@folly//folly/portability:sys_mman", "@folly//folly/portability:sys_stat", "@folly//folly/portability:sys_time", "@folly//folly/portability:sys_types", @@ -322,6 +321,9 @@ watchman_binary( "@folly//folly/system:thread_name", "@glog", ] + select({ + ":windows": [], + "//conditions:default": ["@folly//folly/portability:sys_mman"], + }) + select({ ":linux": ["@openssl//:crypto"], "//conditions:default": [], }), diff --git a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch index e473b51..f02bc0c 100644 --- a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch +++ b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch @@ -3,7 +3,7 @@ diff --git a/watchman_binary.bzl b/watchman_binary.bzl new file mode 100644 --- /dev/null +++ b/watchman_binary.bzl -@@ -0,0 +1,9 @@ +@@ -0,0 +1,13 @@ +"""Watchman binary rule with required transitive C++ settings.""" + +load("@rules_cc//cc:defs.bzl", "cc_binary") @@ -11,7 +11,11 @@ new file mode 100644 + +_watchman_builder = with_cfg(cc_binary) +_watchman_builder.extend("copt", ["-O2"]) -+_watchman_builder.extend("cxxopt", ["-std=gnu++20"]) ++_watchman_builder.extend("cxxopt", select({ ++ "@rules_cc//cc/compiler:clang-cl": ["/std:c++20"], ++ "@rules_cc//cc/compiler:msvc-cl": ["/std:c++20"], ++ "//conditions:default": ["-std=gnu++20"], ++})) +watchman_binary, _watchman_binary_internal = _watchman_builder.build() diff --git a/watchman/ClientContext.h b/watchman/ClientContext.h --- a/watchman/ClientContext.h diff --git a/bcr/modules/watchman/2026.07.06.00/source.json b/bcr/modules/watchman/2026.07.06.00/source.json index 7107b56..776c7d1 100644 --- a/bcr/modules/watchman/2026.07.06.00/source.json +++ b/bcr/modules/watchman/2026.07.06.00/source.json @@ -3,7 +3,7 @@ "integrity": "sha256-5G72uY4OpCAe9gPmKOrHgWVXOozEusEsdM2rgTxF+fc=", "strip_prefix": "watchman-2026.07.06.00", "overlay": { - "BUILD.bazel": "sha256-NVQROyGBD58UdLnZLQ0TdTduVYIdHaL8zW+nQvAB9uE=", + "BUILD.bazel": "sha256-oWrDORCA6bcx/B6Xm6q13rhy70ah72egP/YxgYZaOZ4=", "MODULE.bazel": "sha256-cofDyYwAbnAzhvgElmk6d7CJReE/v45MtgnN4lQJCNg=", "bazel/patches/BUILD.bazel": "sha256-bMzIuyOaQOqAyg7TZ36UZjp0iHUaT9KAqHDuhenE56Q=", "bazel/patches/edencommon-mingw.patch": "sha256-013B4B2vvHTG4aiKntIFuneADC/fIQA+2fxGargtaI4=", @@ -13,6 +13,6 @@ }, "patch_strip": 1, "patches": { - "watchman-bazel.patch": "sha256-ikaVrXCDr8YpYQHPqfUNAwbm7nrlkORtosQL2Z0NG/Q=" + "watchman-bazel.patch": "sha256-/3vhrABBV+eEBi77mgHn4Pywx7Q7dlwM9PUqW5BDmrs=" } } From 9cd9aff04d2d9666baf3110e27f4d47aebb6821e Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 20:21:07 +0000 Subject: [PATCH 05/22] fix: skip Folly symbolizer on Windows --- bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel | 6 ++++-- bcr/modules/watchman/2026.07.06.00/source.json | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel index a49dffa..cb40f30 100644 --- a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel +++ b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel @@ -302,7 +302,6 @@ watchman_binary( "@folly//folly/chrono:conv", "@folly//folly/concurrency:unbounded_queue", "@folly//folly/concurrency/container:lock_free_ring_buffer", - "@folly//folly/debugging/symbolizer", "@folly//folly/executors:cpu_thread_pool_executor", "@folly//folly/futures:core", "@folly//folly/init", @@ -322,7 +321,10 @@ watchman_binary( "@glog", ] + select({ ":windows": [], - "//conditions:default": ["@folly//folly/portability:sys_mman"], + "//conditions:default": [ + "@folly//folly/debugging/symbolizer", + "@folly//folly/portability:sys_mman", + ], }) + select({ ":linux": ["@openssl//:crypto"], "//conditions:default": [], diff --git a/bcr/modules/watchman/2026.07.06.00/source.json b/bcr/modules/watchman/2026.07.06.00/source.json index 776c7d1..591ee22 100644 --- a/bcr/modules/watchman/2026.07.06.00/source.json +++ b/bcr/modules/watchman/2026.07.06.00/source.json @@ -3,7 +3,7 @@ "integrity": "sha256-5G72uY4OpCAe9gPmKOrHgWVXOozEusEsdM2rgTxF+fc=", "strip_prefix": "watchman-2026.07.06.00", "overlay": { - "BUILD.bazel": "sha256-oWrDORCA6bcx/B6Xm6q13rhy70ah72egP/YxgYZaOZ4=", + "BUILD.bazel": "sha256-G1qZplmIlPEvq8RlMzqbT0CqSH9mzSlmtNGBau3ZoKE=", "MODULE.bazel": "sha256-cofDyYwAbnAzhvgElmk6d7CJReE/v45MtgnN4lQJCNg=", "bazel/patches/BUILD.bazel": "sha256-bMzIuyOaQOqAyg7TZ36UZjp0iHUaT9KAqHDuhenE56Q=", "bazel/patches/edencommon-mingw.patch": "sha256-013B4B2vvHTG4aiKntIFuneADC/fIQA+2fxGargtaI4=", From b53ceb5800ffd495754d0f645947adcadae7a33a Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 20:53:22 +0000 Subject: [PATCH 06/22] fix: patch libevent Windows headers in smoke test --- tests/bcr/BUILD.bazel | 2 ++ tests/bcr/MODULE.bazel | 8 ++++++++ tests/bcr/libevent-windows.patch | 10 ++++++++++ 3 files changed, 20 insertions(+) create mode 100644 tests/bcr/libevent-windows.patch diff --git a/tests/bcr/BUILD.bazel b/tests/bcr/BUILD.bazel index ffd0fb0..7080386 100644 --- a/tests/bcr/BUILD.bazel +++ b/tests/bcr/BUILD.bazel @@ -1 +1,3 @@ package(default_visibility = ["//visibility:public"]) + +exports_files(["libevent-windows.patch"]) diff --git a/tests/bcr/MODULE.bazel b/tests/bcr/MODULE.bazel index 4df4341..d456c59 100644 --- a/tests/bcr/MODULE.bazel +++ b/tests/bcr/MODULE.bazel @@ -4,3 +4,11 @@ bazel_dep( name = "watchman", version = "2026.07.06.00", ) + +# libevent's Windows backend includes event2/rpc.h from event_core, but the +# BCR BUILD file only declares that header on event_extra. +single_version_override( + module_name = "libevent", + patch_strip = 1, + patches = ["//:libevent-windows.patch"], +) diff --git a/tests/bcr/libevent-windows.patch b/tests/bcr/libevent-windows.patch new file mode 100644 index 0000000..242bfe6 --- /dev/null +++ b/tests/bcr/libevent-windows.patch @@ -0,0 +1,10 @@ +diff --git a/BUILD.bazel b/BUILD.bazel +index 96132f1..5fa50fa 100644 +--- a/BUILD.bazel ++++ b/BUILD.bazel +@@ -96,4 +96,5 @@ EVENT_CORE_PUBLIC_HEADERS = [ + "include/event2/listener.h", ++ "include/event2/rpc.h", + "include/event2/tag.h", + "include/event2/tag_compat.h", + "include/event2/thread.h", From 7255ae73dfcef9118ae8aa882305a8673f4d5cb1 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:01:50 +0000 Subject: [PATCH 07/22] fix: declare libevent RPC header as textual --- tests/bcr/libevent-windows.patch | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/tests/bcr/libevent-windows.patch b/tests/bcr/libevent-windows.patch index 242bfe6..bc11908 100644 --- a/tests/bcr/libevent-windows.patch +++ b/tests/bcr/libevent-windows.patch @@ -2,9 +2,11 @@ diff --git a/BUILD.bazel b/BUILD.bazel index 96132f1..5fa50fa 100644 --- a/BUILD.bazel +++ b/BUILD.bazel -@@ -96,4 +96,5 @@ EVENT_CORE_PUBLIC_HEADERS = [ - "include/event2/listener.h", -+ "include/event2/rpc.h", - "include/event2/tag.h", - "include/event2/tag_compat.h", - "include/event2/thread.h", +@@ -149,6 +149,7 @@ cc_library( + # arc4random.c is textually included by evutil_rand.c when + # arc4random() is not available. It is not compiled by itself. + "arc4random.c", ++ "include/event2/rpc.h", + ], + visibility = ["//visibility:public"], + deps = [ From 4173ceef890436b11bad531ed571d4de70344451 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:07:47 +0000 Subject: [PATCH 08/22] fix: skip Folly symbolizer on Windows --- tests/bcr/BUILD.bazel | 5 ++++- tests/bcr/MODULE.bazel | 7 +++++++ tests/bcr/folly-windows.patch | 17 +++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 tests/bcr/folly-windows.patch diff --git a/tests/bcr/BUILD.bazel b/tests/bcr/BUILD.bazel index 7080386..d0d43b3 100644 --- a/tests/bcr/BUILD.bazel +++ b/tests/bcr/BUILD.bazel @@ -1,3 +1,6 @@ package(default_visibility = ["//visibility:public"]) -exports_files(["libevent-windows.patch"]) +exports_files([ + "folly-windows.patch", + "libevent-windows.patch", +]) diff --git a/tests/bcr/MODULE.bazel b/tests/bcr/MODULE.bazel index d456c59..7ce7eeb 100644 --- a/tests/bcr/MODULE.bazel +++ b/tests/bcr/MODULE.bazel @@ -12,3 +12,10 @@ single_version_override( patch_strip = 1, patches = ["//:libevent-windows.patch"], ) + +# Folly's init target only uses its Unix symbolizer on Linux and macOS. +single_version_override( + module_name = "folly", + patch_strip = 1, + patches = ["//:folly-windows.patch"], +) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch new file mode 100644 index 0000000..e6a52d0 --- /dev/null +++ b/tests/bcr/folly-windows.patch @@ -0,0 +1,17 @@ +diff --git a/folly/init/BUILD.bazel b/folly/init/BUILD.bazel +index 6202220..e055f74 100644 +--- a/folly/init/BUILD.bazel ++++ b/folly/init/BUILD.bazel +@@ -13 +12,0 @@ cpp_library( +- "//folly/debugging/symbolizer", +@@ -21,2 +20,8 @@ cpp_library( +- "@platforms//os:linux": ["//folly/debugging/symbolizer:signal_handler"], +- "@platforms//os:macos": ["//folly/debugging/symbolizer:signal_handler"], ++ "@platforms//os:linux": [ ++ "//folly/debugging/symbolizer", ++ "//folly/debugging/symbolizer:signal_handler", ++ ], ++ "@platforms//os:macos": [ ++ "//folly/debugging/symbolizer", ++ "//folly/debugging/symbolizer:signal_handler", ++ ], From e3cdb51d1617a17e163d2fa28b5dc91e33c672ce Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:13:29 +0000 Subject: [PATCH 09/22] fix: gate libdwarf outside Windows --- tests/bcr/folly-windows.patch | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index e6a52d0..771372b 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -1,17 +1,12 @@ -diff --git a/folly/init/BUILD.bazel b/folly/init/BUILD.bazel -index 6202220..e055f74 100644 ---- a/folly/init/BUILD.bazel -+++ b/folly/init/BUILD.bazel -@@ -13 +12,0 @@ cpp_library( -- "//folly/debugging/symbolizer", -@@ -21,2 +20,8 @@ cpp_library( -- "@platforms//os:linux": ["//folly/debugging/symbolizer:signal_handler"], -- "@platforms//os:macos": ["//folly/debugging/symbolizer:signal_handler"], -+ "@platforms//os:linux": [ -+ "//folly/debugging/symbolizer", -+ "//folly/debugging/symbolizer:signal_handler", -+ ], -+ "@platforms//os:macos": [ -+ "//folly/debugging/symbolizer", -+ "//folly/debugging/symbolizer:signal_handler", -+ ], +diff --git a/folly/debugging/symbolizer/BUILD.bazel b/folly/debugging/symbolizer/BUILD.bazel +index 853a9f2..d97ff3a 100644 +--- a/folly/debugging/symbolizer/BUILD.bazel ++++ b/folly/debugging/symbolizer/BUILD.bazel +@@ -32 +31,0 @@ cpp_library( +- "//folly/portability/provide:libdwarf", +@@ -33 +32,4 @@ cpp_library( +- ], ++ ] + select({ ++ "@platforms//os:windows": [], ++ "//conditions:default": ["//folly/portability/provide:libdwarf"], ++ }), From 1efec0fe6c77a5d436c69e591f8d9d9c76705833 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:18:49 +0000 Subject: [PATCH 10/22] fix: disable Folly int128 with MSVC --- tests/bcr/folly-windows.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index 771372b..c19c6d8 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -10,3 +10,13 @@ index 853a9f2..d97ff3a 100644 + "@platforms//os:windows": [], + "//conditions:default": ["//folly/portability/provide:libdwarf"], + }), +diff --git a/CMake/folly-config.h.cmake b/CMake/folly-config.h.cmake +index 3d3a828..dfefc95 100644 +--- a/CMake/folly-config.h.cmake ++++ b/CMake/folly-config.h.cmake +@@ -59,0 +60,5 @@ ++#ifdef _MSC_VER ++#undef FOLLY_HAVE_INT128_T ++#define FOLLY_HAVE_INT128_T 0 ++#endif ++ From 5f61b74119a95ba5457aa19288a52f6745be1e93 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:23:43 +0000 Subject: [PATCH 11/22] fix: declare Folly SysTypes dependency --- tests/bcr/folly-windows.patch | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index c19c6d8..8f91fd9 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -20,3 +20,14 @@ index 3d3a828..dfefc95 100644 +#define FOLLY_HAVE_INT128_T 0 +#endif + +diff --git a/folly/portability/BUILD.bazel b/folly/portability/BUILD.bazel +index 9c3a4b1..c522440 100644 +--- a/folly/portability/BUILD.bazel ++++ b/folly/portability/BUILD.bazel +@@ -293,5 +293,6 @@ cpp_library( + }), + deps = [ ++ ":sys_types", + ":windows", + "//folly:portability", + ], From 1b0567414b2fa0d5746cbe8a4117f3c4361edb05 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:29:20 +0000 Subject: [PATCH 12/22] fix: undefine Folly int128 on MSVC --- tests/bcr/folly-windows.patch | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index 8f91fd9..c775e7d 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -14,10 +14,9 @@ diff --git a/CMake/folly-config.h.cmake b/CMake/folly-config.h.cmake index 3d3a828..dfefc95 100644 --- a/CMake/folly-config.h.cmake +++ b/CMake/folly-config.h.cmake -@@ -59,0 +60,5 @@ +@@ -59,0 +60,4 @@ +#ifdef _MSC_VER -+#undef FOLLY_HAVE_INT128_T -+#define FOLLY_HAVE_INT128_T 0 ++# undef FOLLY_HAVE_INT128_T +#endif + diff --git a/folly/portability/BUILD.bazel b/folly/portability/BUILD.bazel From eb3600b546a212aa7115b8234c0c3b872627cfe4 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:35:32 +0000 Subject: [PATCH 13/22] fix: disable int128 in Folly portability header --- tests/bcr/folly-windows.patch | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index c775e7d..94be381 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -10,15 +10,19 @@ index 853a9f2..d97ff3a 100644 + "@platforms//os:windows": [], + "//conditions:default": ["//folly/portability/provide:libdwarf"], + }), -diff --git a/CMake/folly-config.h.cmake b/CMake/folly-config.h.cmake -index 3d3a828..dfefc95 100644 ---- a/CMake/folly-config.h.cmake -+++ b/CMake/folly-config.h.cmake -@@ -59,0 +60,4 @@ +diff --git a/folly/Portability.h b/folly/Portability.h +index f36cb00..fe0184a 100644 +--- a/folly/Portability.h ++++ b/folly/Portability.h +@@ -25,3 +25,8 @@ +#ifdef _MSC_VER -+# undef FOLLY_HAVE_INT128_T ++#undef FOLLY_HAVE_INT128_T ++#define FOLLY_HAVE_INT128_T 0 +#endif + + #if defined(_MSC_VER) + #define FOLLY_CPLUSPLUS _MSVC_LANG + #else diff --git a/folly/portability/BUILD.bazel b/folly/portability/BUILD.bazel index 9c3a4b1..c522440 100644 --- a/folly/portability/BUILD.bazel From 1cf1375d7518a2a2444d1ad88c1c34574bd1cf94 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:41:40 +0000 Subject: [PATCH 14/22] fix: enable UTF-8 for MSVC builds --- .../watchman/2026.07.06.00/patches/watchman-bazel.patch | 4 ++-- bcr/modules/watchman/2026.07.06.00/source.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch index f02bc0c..5e446e5 100644 --- a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch +++ b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch @@ -12,8 +12,8 @@ new file mode 100644 +_watchman_builder = with_cfg(cc_binary) +_watchman_builder.extend("copt", ["-O2"]) +_watchman_builder.extend("cxxopt", select({ -+ "@rules_cc//cc/compiler:clang-cl": ["/std:c++20"], -+ "@rules_cc//cc/compiler:msvc-cl": ["/std:c++20"], ++ "@rules_cc//cc/compiler:clang-cl": ["/std:c++20", "/utf-8"], ++ "@rules_cc//cc/compiler:msvc-cl": ["/std:c++20", "/utf-8"], + "//conditions:default": ["-std=gnu++20"], +})) +watchman_binary, _watchman_binary_internal = _watchman_builder.build() diff --git a/bcr/modules/watchman/2026.07.06.00/source.json b/bcr/modules/watchman/2026.07.06.00/source.json index 591ee22..e2f81e4 100644 --- a/bcr/modules/watchman/2026.07.06.00/source.json +++ b/bcr/modules/watchman/2026.07.06.00/source.json @@ -13,6 +13,6 @@ }, "patch_strip": 1, "patches": { - "watchman-bazel.patch": "sha256-/3vhrABBV+eEBi77mgHn4Pywx7Q7dlwM9PUqW5BDmrs=" + "watchman-bazel.patch": "sha256-U+ckNjBVifZu0d7iXtoCzR4lI6A3yya7QMTnbXIuus8=" } } From f9a89276def86af3bb5674bf0e80a3e703b5fa61 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:48:36 +0000 Subject: [PATCH 15/22] fix: use Folly vectored I/O fallback on Windows --- tests/bcr/folly-windows.patch | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index 94be381..74ae067 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -10,6 +10,36 @@ index 853a9f2..d97ff3a 100644 + "@platforms//os:windows": [], + "//conditions:default": ["//folly/portability/provide:libdwarf"], + }), +diff --git a/folly/BUILD.bazel b/folly/BUILD.bazel +index d39b8ea..691e80c 100644 +--- a/folly/BUILD.bazel ++++ b/folly/BUILD.bazel +@@ -277,8 +277,6 @@ cmake_configure_file( + "FOLLY_HAVE_LIBGFLAGS", + "FOLLY_HAVE_PTHREAD", + "FOLLY_HAVE_PTHREAD_ATFORK", +- "FOLLY_HAVE_PREADV", +- "FOLLY_HAVE_PWRITEV", + "FOLLY_HAVE_CLOCK_GETTIME", + "FOLLY_HAVE_UNALIGNED_ACCESS", + "FOLLY_HAVE_VLA", +@@ -298,10 +296,15 @@ cmake_configure_file( + "@platforms//os:windows": [ + # TODO(kgk): What defines should be set here? + ], +- "@platforms//os:macos": [], ++ "@platforms//os:macos": [ ++ "FOLLY_HAVE_PREADV", ++ "FOLLY_HAVE_PWRITEV", ++ ], + "@platforms//os:linux": [ + "FOLLY_HAVE_ACCEPT4", + "FOLLY_HAVE_GETRANDOM", ++ "FOLLY_HAVE_PREADV", ++ "FOLLY_HAVE_PWRITEV", + "FOLLY_HAVE_PIPE2", + "FOLLY_HAVE_IFUNC", + "FOLLY_HAVE_WEAK_SYMBOLS", diff --git a/folly/Portability.h b/folly/Portability.h index f36cb00..fe0184a 100644 --- a/folly/Portability.h From 122ec6416ca3ed24a136268deb8813c4abf2aa5f Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 21:55:05 +0000 Subject: [PATCH 16/22] fix: disable Folly pthread support on Windows --- tests/bcr/folly-windows.patch | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index 74ae067..a4ace68 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -14,27 +14,31 @@ diff --git a/folly/BUILD.bazel b/folly/BUILD.bazel index d39b8ea..691e80c 100644 --- a/folly/BUILD.bazel +++ b/folly/BUILD.bazel -@@ -277,8 +277,6 @@ cmake_configure_file( +@@ -277,8 +277,4 @@ cmake_configure_file( "FOLLY_HAVE_LIBGFLAGS", - "FOLLY_HAVE_PTHREAD", - "FOLLY_HAVE_PTHREAD_ATFORK", +- "FOLLY_HAVE_PTHREAD", +- "FOLLY_HAVE_PTHREAD_ATFORK", - "FOLLY_HAVE_PREADV", - "FOLLY_HAVE_PWRITEV", "FOLLY_HAVE_CLOCK_GETTIME", "FOLLY_HAVE_UNALIGNED_ACCESS", "FOLLY_HAVE_VLA", -@@ -298,10 +296,15 @@ cmake_configure_file( +@@ -298,10 +294,19 @@ cmake_configure_file( "@platforms//os:windows": [ # TODO(kgk): What defines should be set here? ], - "@platforms//os:macos": [], + "@platforms//os:macos": [ ++ "FOLLY_HAVE_PTHREAD", ++ "FOLLY_HAVE_PTHREAD_ATFORK", + "FOLLY_HAVE_PREADV", + "FOLLY_HAVE_PWRITEV", + ], "@platforms//os:linux": [ "FOLLY_HAVE_ACCEPT4", "FOLLY_HAVE_GETRANDOM", ++ "FOLLY_HAVE_PTHREAD", ++ "FOLLY_HAVE_PTHREAD_ATFORK", + "FOLLY_HAVE_PREADV", + "FOLLY_HAVE_PWRITEV", "FOLLY_HAVE_PIPE2", From 88e1ed973755d7e24e2161ae81ebd17d51fe73b2 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 22:06:35 +0000 Subject: [PATCH 17/22] fix: disable Folly SFMT on Windows --- tests/bcr/folly-windows.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index a4ace68..6ad8eb6 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -44,6 +44,16 @@ index d39b8ea..691e80c 100644 "FOLLY_HAVE_PIPE2", "FOLLY_HAVE_IFUNC", "FOLLY_HAVE_WEAK_SYMBOLS", +@@ -314,9 +319,4 @@ cmake_configure_file( +- }) + select({ +- "@platforms//cpu:x86_64": [ +- "FOLLY_HAVE_EXTRANDOM_SFMT19937", +- ], +- "//conditions:default": [], + }) + select({ + ":with_int128_setting": ["FOLLY_HAVE_INT128_T"], + "//conditions:default": [], + }), diff --git a/folly/Portability.h b/folly/Portability.h index f36cb00..fe0184a 100644 --- a/folly/Portability.h From 4d46d1ba6596f84be8eecb522f2e6414067eed50 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 22:18:45 +0000 Subject: [PATCH 18/22] fix: disable Folly symbolizer features on Windows --- tests/bcr/folly-windows.patch | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index 6ad8eb6..041f16d 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -14,7 +14,9 @@ diff --git a/folly/BUILD.bazel b/folly/BUILD.bazel index d39b8ea..691e80c 100644 --- a/folly/BUILD.bazel +++ b/folly/BUILD.bazel -@@ -277,8 +277,4 @@ cmake_configure_file( +@@ -275,18 +275,11 @@ cmake_configure_file( + defines = [ + "FOLLY_HAVE_LIBGLOG", "FOLLY_HAVE_LIBGFLAGS", - "FOLLY_HAVE_PTHREAD", - "FOLLY_HAVE_PTHREAD_ATFORK", @@ -23,28 +25,45 @@ index d39b8ea..691e80c 100644 "FOLLY_HAVE_CLOCK_GETTIME", "FOLLY_HAVE_UNALIGNED_ACCESS", "FOLLY_HAVE_VLA", -@@ -298,10 +294,19 @@ cmake_configure_file( + "FOLLY_HAVE_WCHAR_SUPPORT", + "HAVE_VSNPRINTF_ERRORS", +- "FOLLY_HAVE_DWARF", +- "FOLLY_HAVE_SWAPCONTEXT", +- "FOLLY_HAVE_BACKTRACE", + "FOLLY_HAVE_SHADOW_LOCAL_WARNINGS", + "FOLLY_HAVE_LIBLZ4", + "FOLLY_HAVE_LIBLZMA", +@@ -298,11 +291,26 @@ cmake_configure_file( "@platforms//os:windows": [ # TODO(kgk): What defines should be set here? ], - "@platforms//os:macos": [], + "@platforms//os:macos": [ ++ "FOLLY_HAVE_BACKTRACE", ++ "FOLLY_HAVE_DWARF", + "FOLLY_HAVE_PTHREAD", + "FOLLY_HAVE_PTHREAD_ATFORK", + "FOLLY_HAVE_PREADV", + "FOLLY_HAVE_PWRITEV", ++ "FOLLY_HAVE_SWAPCONTEXT", + ], "@platforms//os:linux": [ "FOLLY_HAVE_ACCEPT4", ++ "FOLLY_HAVE_BACKTRACE", ++ "FOLLY_HAVE_DWARF", "FOLLY_HAVE_GETRANDOM", + "FOLLY_HAVE_PTHREAD", + "FOLLY_HAVE_PTHREAD_ATFORK", + "FOLLY_HAVE_PREADV", + "FOLLY_HAVE_PWRITEV", "FOLLY_HAVE_PIPE2", ++ "FOLLY_HAVE_SWAPCONTEXT", "FOLLY_HAVE_IFUNC", "FOLLY_HAVE_WEAK_SYMBOLS", -@@ -314,9 +319,4 @@ cmake_configure_file( + "FOLLY_HAVE_LINUX_VDSO", +@@ -312,11 +320,6 @@ cmake_configure_file( + "FOLLY_USE_SYMBOLIZER", + ], - }) + select({ - "@platforms//cpu:x86_64": [ - "FOLLY_HAVE_EXTRANDOM_SFMT19937", From d3fdbd2bc4cde568da1f35432fc7129e72687cd3 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 22:32:55 +0000 Subject: [PATCH 19/22] fix: select Watchman warnings by compiler --- bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel | 2 -- .../watchman/2026.07.06.00/patches/watchman-bazel.patch | 7 ++++++- bcr/modules/watchman/2026.07.06.00/source.json | 4 ++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel index cb40f30..3a3675e 100644 --- a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel +++ b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel @@ -205,8 +205,6 @@ watchman_binary( exclude = ["watchman/thirdparty/deelevate_binding/**"], ), copts = [ - "-Wall", - "-Wextra", "-DGLOG_NO_ABBREVIATED_SEVERITIES", "-I.", ] + select({ diff --git a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch index 5e446e5..043ad91 100644 --- a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch +++ b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch @@ -3,7 +3,7 @@ diff --git a/watchman_binary.bzl b/watchman_binary.bzl new file mode 100644 --- /dev/null +++ b/watchman_binary.bzl -@@ -0,0 +1,13 @@ +@@ -0,0 +1,18 @@ +"""Watchman binary rule with required transitive C++ settings.""" + +load("@rules_cc//cc:defs.bzl", "cc_binary") @@ -11,6 +11,11 @@ new file mode 100644 + +_watchman_builder = with_cfg(cc_binary) +_watchman_builder.extend("copt", ["-O2"]) ++_watchman_builder.extend("copt", select({ ++ "@rules_cc//cc/compiler:clang-cl": ["/W4"], ++ "@rules_cc//cc/compiler:msvc-cl": ["/W4"], ++ "//conditions:default": ["-Wall", "-Wextra"], ++})) +_watchman_builder.extend("cxxopt", select({ + "@rules_cc//cc/compiler:clang-cl": ["/std:c++20", "/utf-8"], + "@rules_cc//cc/compiler:msvc-cl": ["/std:c++20", "/utf-8"], diff --git a/bcr/modules/watchman/2026.07.06.00/source.json b/bcr/modules/watchman/2026.07.06.00/source.json index e2f81e4..d5afd1a 100644 --- a/bcr/modules/watchman/2026.07.06.00/source.json +++ b/bcr/modules/watchman/2026.07.06.00/source.json @@ -3,7 +3,7 @@ "integrity": "sha256-5G72uY4OpCAe9gPmKOrHgWVXOozEusEsdM2rgTxF+fc=", "strip_prefix": "watchman-2026.07.06.00", "overlay": { - "BUILD.bazel": "sha256-G1qZplmIlPEvq8RlMzqbT0CqSH9mzSlmtNGBau3ZoKE=", + "BUILD.bazel": "sha256-XNvnEGPJaCH4zEtDqt2pPZNnTqrujVadA1YsKzATcp4=", "MODULE.bazel": "sha256-cofDyYwAbnAzhvgElmk6d7CJReE/v45MtgnN4lQJCNg=", "bazel/patches/BUILD.bazel": "sha256-bMzIuyOaQOqAyg7TZ36UZjp0iHUaT9KAqHDuhenE56Q=", "bazel/patches/edencommon-mingw.patch": "sha256-013B4B2vvHTG4aiKntIFuneADC/fIQA+2fxGargtaI4=", @@ -13,6 +13,6 @@ }, "patch_strip": 1, "patches": { - "watchman-bazel.patch": "sha256-U+ckNjBVifZu0d7iXtoCzR4lI6A3yya7QMTnbXIuus8=" + "watchman-bazel.patch": "sha256-ZObhXfM/gImt1LK7jmLFVOq82dEr0ZXy7Hvb6bcpNR0=" } } From c5222a2a5678bf4a44b00a652cdbf4cb23b4c21a Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 22:35:00 +0000 Subject: [PATCH 20/22] fix: merge Watchman compiler options --- .../watchman/2026.07.06.00/patches/watchman-bazel.patch | 9 ++++----- bcr/modules/watchman/2026.07.06.00/source.json | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch index 043ad91..ca3aeb4 100644 --- a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch +++ b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch @@ -3,18 +3,17 @@ diff --git a/watchman_binary.bzl b/watchman_binary.bzl new file mode 100644 --- /dev/null +++ b/watchman_binary.bzl -@@ -0,0 +1,18 @@ +@@ -0,0 +1,17 @@ +"""Watchman binary rule with required transitive C++ settings.""" + +load("@rules_cc//cc:defs.bzl", "cc_binary") +load("@with_cfg.bzl", "with_cfg") + +_watchman_builder = with_cfg(cc_binary) -+_watchman_builder.extend("copt", ["-O2"]) +_watchman_builder.extend("copt", select({ -+ "@rules_cc//cc/compiler:clang-cl": ["/W4"], -+ "@rules_cc//cc/compiler:msvc-cl": ["/W4"], -+ "//conditions:default": ["-Wall", "-Wextra"], ++ "@rules_cc//cc/compiler:clang-cl": ["-O2", "/W4"], ++ "@rules_cc//cc/compiler:msvc-cl": ["-O2", "/W4"], ++ "//conditions:default": ["-O2", "-Wall", "-Wextra"], +})) +_watchman_builder.extend("cxxopt", select({ + "@rules_cc//cc/compiler:clang-cl": ["/std:c++20", "/utf-8"], diff --git a/bcr/modules/watchman/2026.07.06.00/source.json b/bcr/modules/watchman/2026.07.06.00/source.json index d5afd1a..788c982 100644 --- a/bcr/modules/watchman/2026.07.06.00/source.json +++ b/bcr/modules/watchman/2026.07.06.00/source.json @@ -13,6 +13,6 @@ }, "patch_strip": 1, "patches": { - "watchman-bazel.patch": "sha256-ZObhXfM/gImt1LK7jmLFVOq82dEr0ZXy7Hvb6bcpNR0=" + "watchman-bazel.patch": "sha256-5GUHQ3tnCmz0M9l3LHpY6Tp2Bh2EAPfVEgwwI2rrO2g=" } } From a1346d8170bdf79b1e68558a6779ab0f7fcaf576 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 22:46:57 +0000 Subject: [PATCH 21/22] fix: declare Folly signal handler dependency --- tests/bcr/folly-windows.patch | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tests/bcr/folly-windows.patch b/tests/bcr/folly-windows.patch index 041f16d..0a8ea73 100644 --- a/tests/bcr/folly-windows.patch +++ b/tests/bcr/folly-windows.patch @@ -86,6 +86,18 @@ index f36cb00..fe0184a 100644 #if defined(_MSC_VER) #define FOLLY_CPLUSPLUS _MSVC_LANG #else +diff --git a/folly/init/BUILD.bazel b/folly/init/BUILD.bazel +index 8afad13..6d6fd5f 100644 +--- a/folly/init/BUILD.bazel ++++ b/folly/init/BUILD.bazel +@@ -20,6 +20,7 @@ cpp_library( + ] + select({ + "@platforms//os:linux": ["//folly/debugging/symbolizer:signal_handler"], + "@platforms//os:macos": ["//folly/debugging/symbolizer:signal_handler"], ++ "@platforms//os:windows": ["//folly/debugging/symbolizer:signal_handler"], + "//conditions:default": [], + }), + ) diff --git a/folly/portability/BUILD.bazel b/folly/portability/BUILD.bazel index 9c3a4b1..c522440 100644 --- a/folly/portability/BUILD.bazel From b711b7c584b865f4ce05d6d5faa813608dc33cb8 Mon Sep 17 00:00:00 2001 From: Long Ho Date: Tue, 28 Jul 2026 23:28:51 +0000 Subject: [PATCH 22/22] fix: scope warning flags to Watchman --- bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel | 6 +++++- .../watchman/2026.07.06.00/patches/watchman-bazel.patch | 8 ++------ bcr/modules/watchman/2026.07.06.00/source.json | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel index 3a3675e..31861ee 100644 --- a/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel +++ b/bcr/modules/watchman/2026.07.06.00/overlay/BUILD.bazel @@ -204,7 +204,11 @@ watchman_binary( ["watchman/**/*.h"], exclude = ["watchman/thirdparty/deelevate_binding/**"], ), - copts = [ + copts = select({ + "@rules_cc//cc/compiler:clang-cl": ["/W4"], + "@rules_cc//cc/compiler:msvc-cl": ["/W4"], + "//conditions:default": ["-Wall", "-Wextra"], + }) + [ "-DGLOG_NO_ABBREVIATED_SEVERITIES", "-I.", ] + select({ diff --git a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch index ca3aeb4..5e446e5 100644 --- a/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch +++ b/bcr/modules/watchman/2026.07.06.00/patches/watchman-bazel.patch @@ -3,18 +3,14 @@ diff --git a/watchman_binary.bzl b/watchman_binary.bzl new file mode 100644 --- /dev/null +++ b/watchman_binary.bzl -@@ -0,0 +1,17 @@ +@@ -0,0 +1,13 @@ +"""Watchman binary rule with required transitive C++ settings.""" + +load("@rules_cc//cc:defs.bzl", "cc_binary") +load("@with_cfg.bzl", "with_cfg") + +_watchman_builder = with_cfg(cc_binary) -+_watchman_builder.extend("copt", select({ -+ "@rules_cc//cc/compiler:clang-cl": ["-O2", "/W4"], -+ "@rules_cc//cc/compiler:msvc-cl": ["-O2", "/W4"], -+ "//conditions:default": ["-O2", "-Wall", "-Wextra"], -+})) ++_watchman_builder.extend("copt", ["-O2"]) +_watchman_builder.extend("cxxopt", select({ + "@rules_cc//cc/compiler:clang-cl": ["/std:c++20", "/utf-8"], + "@rules_cc//cc/compiler:msvc-cl": ["/std:c++20", "/utf-8"], diff --git a/bcr/modules/watchman/2026.07.06.00/source.json b/bcr/modules/watchman/2026.07.06.00/source.json index 788c982..079cd51 100644 --- a/bcr/modules/watchman/2026.07.06.00/source.json +++ b/bcr/modules/watchman/2026.07.06.00/source.json @@ -3,7 +3,7 @@ "integrity": "sha256-5G72uY4OpCAe9gPmKOrHgWVXOozEusEsdM2rgTxF+fc=", "strip_prefix": "watchman-2026.07.06.00", "overlay": { - "BUILD.bazel": "sha256-XNvnEGPJaCH4zEtDqt2pPZNnTqrujVadA1YsKzATcp4=", + "BUILD.bazel": "sha256-NbEbc5UUuRl18tle9i9ht3bi6eC+nR8jh5ruZdW/LGc=", "MODULE.bazel": "sha256-cofDyYwAbnAzhvgElmk6d7CJReE/v45MtgnN4lQJCNg=", "bazel/patches/BUILD.bazel": "sha256-bMzIuyOaQOqAyg7TZ36UZjp0iHUaT9KAqHDuhenE56Q=", "bazel/patches/edencommon-mingw.patch": "sha256-013B4B2vvHTG4aiKntIFuneADC/fIQA+2fxGargtaI4=", @@ -13,6 +13,6 @@ }, "patch_strip": 1, "patches": { - "watchman-bazel.patch": "sha256-5GUHQ3tnCmz0M9l3LHpY6Tp2Bh2EAPfVEgwwI2rrO2g=" + "watchman-bazel.patch": "sha256-U+ckNjBVifZu0d7iXtoCzR4lI6A3yya7QMTnbXIuus8=" } }