Live data from Hacker News

Scaling Rust Builds with Bazel

mmapped.blog

131–133 of 133 posts

Re: Scaling Rust Builds with Bazel

#131

Earlier quoted context omitted.

I think Bazel is actually a good build system, but the issue is that they lack good educational resources. Then others adopt it at smaller companies without a team to manage Bazel and without investing time to onboard others into understanding how it works. There are some new talks coming out external from the Bazel maintainers which do a better job of this, but you still have to hunt for them. This is made worse bec…

Not just that it doesn't integrate well with external tools. Cmake works better here. We had a googler at our company switch everything to bazel and it just slowed everyone down. There really is something about Google engineers, this sort of subtle arrogance that the Google way is superior to everything else is existence. Maybe I'm the ass hole but I wonder if anyone can relate?

[deleted]

Re: Scaling Rust Builds with Bazel

#132

Earlier quoted context omitted.

Not just that it doesn't integrate well with external tools. Cmake works better here. We had a googler at our company switch everything to bazel and it just slowed everyone down. There really is something about Google engineers, this sort of subtle arrogance that the Google way is superior to everything else is existence. Maybe I'm the ass hole but I wonder if anyone can relate?

> We had a googler at our company switch everything to bazel and it just slowed everyone down. I'd love to hear if anyone can make a case for Bazel knowing that cmake+build cache tools like ccache buy far better performance improvements than any full or incremental build.

If I want near-instantaneous compile times with my build system I'll just make a bash script or Makefile and use a single compilation unit (which Rust does not really do).

When I use Bazel it is because:

- I want to build nearly everything from source in a controlled hermetic environment. No more "well it works on my machine"... only to learn the developer's libs leaked into the build environment.

- I want to do this with a single build system that works across many languages, and to build libraries which are used in many different languages.

- I want to do this within a sandboxed environment for peace of mind when compiling thousands of dependencies.

- I am willing to pay the money and time to setup remote executors to keep performance acceptable.

Re: Scaling Rust Builds with Bazel

#133

Earlier quoted context omitted.

I don't think it's arrogance, it's just that blaze inside google is really nice, and they assume that using the tool outside google will also be really nice. The issue is that to make it really nice: - you have to convert everything to it, not just almost everything - you need to set up build servers and lightning fast caching servers - you need a team dedicated to building bazel rules for whatever doesn't already ha…

>- you need a team dedicated to building bazel rules for whatever doesn't already have rules (see: you must convert everything). This team is a bottleneck This is a major issue. A good build tool shouldn't require a dedicated team. Ideally a build tool should function as sort of a settings menu for the project.

> This is a major issue. A good build tool shouldn't require a dedicated team.

Build systems are complex because they solve issues which only exist because of how OSes handle libraries and executables. I am pessimistic we can ever solve that issue in a capitalist society. I will be optimistic if we have a new major OS that isn't Windows, Linux, or MacOS in our lifetime or we solve death.

Post reply on HN