sebae banner ad-300x250
sebae intro coupon 30 off
sebae banner 728x900
sebae banner 300x250

Debugging and fixing build non-determinism with Bazel

0 views
0%

Debugging and fixing build non-determinism with Bazel

Bazel has many great features — an extensible, declarative build language, super-fast incremental builds, and a remote build cache — but in order to take full advantage of the build cache the build has to be deterministic. Migrating Square’s iOS applications from Xcode’s build system allows us to use Bazel’s bevvy of tools to track down where the build is yielding nondeterministic outputs in order to speed up our builds. In this talk, we explore how to use Bazel tools to track down non-deterministic actions, go over a few tricks to find out why they are non-deterministic; and come up with concrete fixes to make builds (more) deterministic and take full advantage of caching.

Resources:
GitHub → http://goo.gle/39U9dnu
Build with Bazel → http://goo.gle/2NuVRXm

Speaker: Samuel Giddins

#bazelcon #bazel event: Bazelcon 2020; re_ty: Publish; product: Open Source – General; fullname: Samuel Giddins;"

Date: April 17, 2025