Skip to content

Conversation

@mbland
Copy link

@mbland mbland commented Oct 29, 2025

Upgrades Zlib to 1.3.1 and removes the -no_adhoc_codesign and -no_uuid linker flags for building the Clang wrapper. Fixes #27026.

Incorporates changes from the following commits and pull requests:

Upgrades third_party/zlib using the methodology from #27026:

cd third_party
curl -L https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.gz |
  gzip -dc | tar xf -
rsync -r zlib-1.3.1/* zlib/
rm -rf zlib-1.3.1
cd ..

Several third_party/zlib files show up as complete replacements because the previous files used CRLF line endings, and the 1.3.1 files only use LF.

To list the substantial changes outside of the Zlib 1.3.1 distribution upgrade:

$ git diff --stat HEAD^ -- ':!:third_party/zlib/[^B]*'
 distdir_deps.bzl                       |  4 ++++
 third_party/upb/01_remove_werror.patch | 19 +++++++++++++++++++
 third_party/upb/BUILD                  |  4 +++-
 third_party/zlib/BUILD                 | 45 ++++++++++++++++++++++++++++++++++++++-------
 third_party/zlib/BUILD.tools           | 15 +++++++++------
 tools/cpp/osx_cc_configure.bzl         |  2 --
 tools/osx/BUILD                        |  3 +--
 7 files changed, 74 insertions(+), 18 deletions(-)

Upgrades Zlib to 1.3.1 and removes the `-no_adhoc_codesign` and
`-no_uuid` linker flags for building the Clang wrapper. Fixes bazelbuild#27026.

Incorporates changes from the following commits and pull requests:

- Update third_party/zlib/BUILD{,.tools} for 1.3.1
  bazelbuild/bazel@b29649f
  bazelbuild/bazel@2067a8b

- Fix upb build with Clang 16
  bazelbuild/bazel@4a32d7b
  bazelbuild#23700

- Remove -Wl{-no_adhoc_codesign,-no_uuid}
  Required to build under macOS 26.0 to avoid the \`missing LC_UUID\`
  error from \`wrapped_clang\` and \`xcode-locator\`.
  bazelbuild#27014

Upgrades `third_party/zlib` using the methodology from bazelbuild#27026:

```txt
cd third_party
curl -L https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.gz |
  gzip -dc | tar xf -
rsync -r zlib-1.3.1/* zlib/
rm -rf zlib-1.3.1
cd ..
```

Several `third_party/zlib` files show up as complete replacements because the
previous files used CRLF line endings, and the 1.3.1 files only use LF.

To list the substantial changes outside of the Zlib 1.3.1 distribution upgrade:

```txt
$ git diff --stat HEAD^ -- ':!:third_party/zlib/[^B]*'
 distdir_deps.bzl                       |  4 ++++
 third_party/upb/01_remove_werror.patch | 19 +++++++++++++++++++
 third_party/upb/BUILD                  |  4 +++-
 third_party/zlib/BUILD                 | 45 ++++++++++++++++++++++++++++++++++++++-------
 third_party/zlib/BUILD.tools           | 15 +++++++++------
 tools/cpp/osx_cc_configure.bzl         |  2 --
 tools/osx/BUILD                        |  3 +--
 7 files changed, 74 insertions(+), 18 deletions(-)
```
@mbland mbland requested a review from a team as a code owner October 29, 2025 20:04
Bumping based on this hint from a failing instance of
`rbe-on-ubuntu-ubuntu-18-dot-04-lts-openjdk-11-gcc-7`:

- https://buildkite.com/bazel/bazel-bazel-github-presubmit/builds/29812#019a3192-a898-4d9e-b978-492d4a04f8c6/782-797

```txt
(20:05:47) DEBUG: /var/lib/buildkite-agent/.cache/.../external/bazelci_rules/rbe_repo.bzl:35:14:
rbe_preconfig: Unsupported version '6.2.1'
  (Values: '8.0.1', '7.0.2', '6.3.2', '5.2.0', '5.1.0', '5.0.0', '4.2.2', '4.2.1', '4.2.0', '4.1.0', '4.0.0'),
  using '8.0.1'.
```

Several tests currently fail in continuous integration. I've tried
running many of them on my macOS 26 system using the
`bazel-bin/src/bazel-dev` binary built from the previous commit. Only
two fail when run with `--tool_java_runtime_version=local_jdk` and
`JAVA_HOME` set to use the local OpenJDK 11:

```txt
$ JAVA_HOME="$(/usr/libexec/java_home -v 11)" \
  EXTRA_BAZEL_ARGS="--tool_java_runtime_version=local_jdk" \
  bazel-bin/src/bazel-dev test --test_output=errors "${TESTS[@]}"

//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:antxmlresultwriter_integration_test PASSED in 1.5s
//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:junit4_testbridge_integration_test PASSED in 5.6s
//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:utf8_test_log_test PASSED in 1.1s
//src/test/java/com/google/devtools/build/lib/actions:ActionsTests       PASSED in 17.9s
//src/test/java/com/google/devtools/build/lib/analysis:AnalysisTests     PASSED in 46.7s
//src/test/java/com/google/devtools/build/lib/buildtool:KeepGoingTest    FAILED in 10.9s
//src/test/java/com/google/devtools/build/lib/collect:CollectTests       PASSED in 22.3s
//src/test/java/com/google/devtools/build/lib/exec:ExecTests             PASSED in 15.1s
//src/test/java/com/google/devtools/build/lib/packages:PackagesTests     PASSED in 29.2s
//src/test/java/com/google/devtools/build/lib/remote:remote              PASSED in 27.7s
//src/test/java/com/google/devtools/build/lib/rules/cpp:CcToolchainFeaturesTest PASSED in 4.3s
//src/test/java/com/google/devtools/build/lib/rules/cpp:CppLinkActionTest PASSED in 16.7s
//src/test/java/com/google/devtools/build/lib/sandbox:SandboxTests       FAILED in 123.9s
//src/test/java/com/google/devtools/build/lib/skyframe:SkyframeTests     PASSED in 34.5s
//src/test/java/com/google/devtools/build/lib/starlark:StarlarkTests     PASSED in 40.4s
//src/test/py/bazel:bazel_repo_mapping_test                              PASSED in 110.2s
//src/test/shell/bazel:bazel_bootstrap_distfile_tar_test                 PASSED in 493.0s
//src/test/shell/bazel:bazel_bootstrap_distfile_test                     PASSED in 495.5s
//src/test/shell/bazel:bazel_coverage_java_jdk11_toolchain_head_test     PASSED in 273.7s
//src/test/shell/bazel:bazel_coverage_java_jdk11_toolchain_released_test PASSED in 259.6s
//src/test/shell/bazel:bazel_java_test_jdk11_toolchain_head              PASSED in 337.7s
//src/test/shell/bazel:cc_integration_test                               PASSED in 158.9s
//src/test/shell/bazel:external_integration_test                         PASSED in 161.1s

Executed 23 out of 23 tests: 21 tests pass and 2 fail locally.
```

Most of these tests fail without the `JAVA_HOME` and `local_jdk`
settings:

```txt
$ bazel-bin/src/bazel-dev test --test_output=errors "${TESTS[@]}"

//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:antxmlresultwriter_integration_test PASSED in 1.4s
//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:junit4_testbridge_integration_test PASSED in 5.5s
//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:utf8_test_log_test PASSED in 1.1s
//src/test/java/com/google/devtools/build/lib/actions:ActionsTests       FAILED in 31.0s
//src/test/java/com/google/devtools/build/lib/analysis:AnalysisTests     FAILED in 11 out of 12 in 37.3s
//src/test/java/com/google/devtools/build/lib/buildtool:KeepGoingTest    FAILED in 18.1s
//src/test/java/com/google/devtools/build/lib/collect:CollectTests       FAILED in 14.7s
//src/test/java/com/google/devtools/build/lib/exec:ExecTests             FAILED in 14.3s
//src/test/java/com/google/devtools/build/lib/packages:PackagesTests     FAILED in 17.9s
//src/test/java/com/google/devtools/build/lib/remote:remote              FAILED in 23.5s
//src/test/java/com/google/devtools/build/lib/rules/cpp:CcToolchainFeaturesTest FAILED in 14.5s
//src/test/java/com/google/devtools/build/lib/rules/cpp:CppLinkActionTest FAILED in 17.1s
//src/test/java/com/google/devtools/build/lib/sandbox:SandboxTests       FAILED in 129.1s
//src/test/java/com/google/devtools/build/lib/skyframe:SkyframeTests     FAILED in 11 out of 20 in 26.1s
//src/test/java/com/google/devtools/build/lib/starlark:StarlarkTests     FAILED in 2 out of 25 in 28.9s
//src/test/py/bazel:bazel_repo_mapping_test                              PASSED in 109.7s
//src/test/shell/bazel:bazel_bootstrap_distfile_tar_test                 PASSED in 471.2s
//src/test/shell/bazel:bazel_bootstrap_distfile_test                     PASSED in 472.2s
//src/test/shell/bazel:bazel_coverage_java_jdk11_toolchain_head_test     PASSED in 278.0s
//src/test/shell/bazel:bazel_coverage_java_jdk11_toolchain_released_test PASSED in 275.7s
//src/test/shell/bazel:bazel_java_test_jdk11_toolchain_head              PASSED in 324.6s
//src/test/shell/bazel:cc_integration_test                               PASSED in 231.6s
//src/test/shell/bazel:external_integration_test                         FAILED in 2 out of 15 in 113.1s

Executed 23 out of 23 tests: 10 tests pass and 13 fail locally.
```
@mbland
Copy link
Author

mbland commented Oct 29, 2025

@meteorcloudy Note that the bulk of the diff in that pull request is the zlib-1.3.1 upgrade. The rest of the changes are exactly from the patch from #27026 (which I copy and pasted, and applied).

The first CI run failed a lot of tests and several builds were DOA. The Windows and RBE builds, in particular, broke as soon as they started.

The second CI run after pushing a commit to update .bazelversion to 6.3.2 got a lot farther. The Windows builds ran to completion, and the RBE build actually passed. The Clang build passed as well.

I suppose we can figure out the rest of the failures between now and some time after BazelCon.

@meteorcloudy
Copy link
Member

Yeah, our release policy does say we promise to backport fixes for OS-compatibility issues into this LTS release in Maintenance stage. Bazel 6 is still in maintenance until Dec 2025 ;)

I'm fine with disabling many of those failing tests if they look irrelevant, for example, android tests. Many of them are failing due to infrastructure changes.

@iancha1992 iancha1992 added team-Rules-CPP Issues for C++ rules team-OSS Issues for the Bazel OSS team: installation, release processBazel packaging, website labels Oct 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

team-OSS Issues for the Bazel OSS team: installation, release processBazel packaging, website team-Rules-CPP Issues for C++ rules

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants