From e51c6c1ee1d589cba7fc6413a020a1a50ebbe5a1 Mon Sep 17 00:00:00 2001 From: psamanoelton Date: Mon, 1 Jun 2026 11:57:55 -0600 Subject: [PATCH 1/3] Bazel cleanup --- WORKSPACE | 12 ++++++++--- tensorboard/data/server/descriptor.bin | Bin 59597 -> 59975 bytes .../debugger_v2/debugger_v2_plugin_test.py | 2 +- .../protobuf_pip_deps/requirements.bzl | 8 +++++-- .../protobuf_pip_deps_setuptools/BUILD.bazel | 3 +++ third_party/repo.bzl | 20 ++---------------- 6 files changed, 21 insertions(+), 24 deletions(-) diff --git a/WORKSPACE b/WORKSPACE index 4b25bfc0468..5ae17af8646 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -293,7 +293,7 @@ tb_http_archive( urls = tb_mirror_urls("https://github.com/bazelbuild/rules_cc/archive/refs/tags/0.1.0.tar.gz"), ) -tb_http_archive( +http_archive( name = "tb_rules_java", sha256 = "b2519fabcd360529071ade8732f208b3755489ed7668b118f8f90985c0e51324", strip_prefix = "rules_java-8.6.1", @@ -305,11 +305,17 @@ local_repository( path = "third_party/compatibility_proxy", ) +# Protobuf 6.31.1 still expects a pip-style requirements helper repo from its +# WORKSPACE macros. TensorBoard only needs the narrow `install_deps()` / +# `requirement()` surface that protobuf actually loads in this configuration. local_repository( name = "protobuf_pip_deps", path = "third_party/protobuf_pip_deps", ) +# Protobuf's python/dist BUILD also shells against +# `external/protobuf_pip_deps_setuptools/site-packages`, so keep this separate +# repo shape even though it only vendors an empty placeholder tree here. local_repository( name = "protobuf_pip_deps_setuptools", path = "third_party/protobuf_pip_deps_setuptools", @@ -350,14 +356,14 @@ protobuf_deps() # # Keep this aligned with TensorFlow 2.21's Bazel-side gRPC dependency so the # grpc plugin and protobuf repository stay on a known-compatible combination. -tb_http_archive( +http_archive( name = "com_github_grpc_grpc", sha256 = "dd6a2fa311ba8441bbefd2764c55b99136ff10f7ea42954be96006a2723d33fc", strip_prefix = "grpc-1.74.0", urls = tb_mirror_urls("https://github.com/grpc/grpc/archive/refs/tags/v1.74.0.tar.gz"), ) -tb_http_archive( +http_archive( name = "build_bazel_rules_swift", sha256 = "9919ed1d8dae509645bfd380537ae6501528d8de971caebed6d5185b9970dc4d", urls = tb_mirror_urls("https://github.com/bazelbuild/rules_swift/releases/download/2.1.1/rules_swift.2.1.1.tar.gz"), diff --git a/tensorboard/data/server/descriptor.bin b/tensorboard/data/server/descriptor.bin index a0475fb3e928fcaa9cd7cd2131c00edf9537907f..b876e039be38bd6ebe6083640b760081a7b54664 100644 GIT binary patch delta 7255 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 XgX@BAI&Usource map for files linked into a repo rule.""" - link_dict = {ctx.path(v): ctx.path(Label(k)) for k, v in link_files.items()} - if build_file: - link_dict[ctx.path("BUILD.bazel")] = ctx.path(Label(build_file)) - return link_dict - def _tb_http_archive_impl(ctx): - """Repository-rule implementation with optional patching and linked files.""" - link_dict = _get_link_dict(ctx, ctx.attr.link_files, ctx.attr.build_file) - + """Repository-rule implementation with optional patching.""" patch_files = ctx.attr.patch_file # Resolve patch labels up front so Bazel reports missing patch inputs before # download/extract work has completed. @@ -53,11 +44,6 @@ def _tb_http_archive_impl(ctx): if patch_file: ctx.patch(patch_file, strip = 1) - # Link in any repository-local BUILD/link files after extraction and patching. - for dst, src in link_dict.items(): - ctx.delete(dst) - ctx.symlink(src, dst) - _tb_http_archive = repository_rule( implementation = _tb_http_archive_impl, attrs = { @@ -66,13 +52,11 @@ _tb_http_archive = repository_rule( "strip_prefix": attr.string(), "type": attr.string(), "patch_file": attr.string_list(), - "build_file": attr.string(), - "link_files": attr.string_dict(), }, ) def tb_http_archive(name, sha256, urls, **kwargs): - """Downloads a mirrored archive and creates a TensorBoard external repo.""" + """Downloads a mirrored archive for TensorBoard-specific repo wiring.""" if len(urls) < 2: fail("tb_http_archive(urls) must have redundant URLs.") From df7385312450eb1018af4bbf5035445b85f63050 Mon Sep 17 00:00:00 2001 From: psamanoelton Date: Mon, 1 Jun 2026 18:36:03 -0600 Subject: [PATCH 2/3] Updating protos --- tensorboard/data/server/descriptor.bin | Bin 59975 -> 59597 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/tensorboard/data/server/descriptor.bin b/tensorboard/data/server/descriptor.bin index b876e039be38bd6ebe6083640b760081a7b54664..a0475fb3e928fcaa9cd7cd2131c00edf9537907f 100644 GIT binary patch delta 6614 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 Date: Mon, 1 Jun 2026 18:50:44 -0600 Subject: [PATCH 3/3] Rephrased comment --- WORKSPACE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WORKSPACE b/WORKSPACE index 5ae17af8646..be04cfe68ae 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -313,7 +313,7 @@ local_repository( path = "third_party/protobuf_pip_deps", ) -# Protobuf's python/dist BUILD also shells against +# Protobuf's python/dist BUILD also references # `external/protobuf_pip_deps_setuptools/site-packages`, so keep this separate # repo shape even though it only vendors an empty placeholder tree here. local_repository(