Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

We had an integration test that involved many tool chains and languages to prepare. Rust compilation, WASM compilation, Docker builds shell scripts that produced a VM image, Python was in there somehow too, and then a test harness, written in Rust, that took all that to actually run the test.

With Bazel setup, and it was a beast to setup, developers could run all that, with remotely cached incremental builds, efficient parallel execution, and all reproducible (and same as CI) from a local developer environment with just one command.



I recently left Google and I do miss blaze. I'm working on some stuff that's rust and wasm and typescript and there are containers and I'm very tempted to use bazel for basically correct caching and stuff.

But even as a xoogler I think that the common wisdom of "don't use bazel until you can afford a team" or "use bazel if you are the only developer" are probably right.

My somewhat janky series of dockerfiles and bash scripts is at least debuggable to my business partner.

I'm just not ready to commit our future frontend developers to having to use bazel yet.

I'm sort of sticking to a lowest common denominator technology stack for most things except where we are spending our innovation tokens in wasm land.

But someday, probably. In the meantime I may setup sccache.


> Rust compilation, WASM compilation, Docker builds shell scripts that produced a VM image, Python was in there somehow too

was it through bazel rules? The worry is if some of those rules will get bug or missing necessary feature, it will be pita to deal with.


This is one reason why I’m quite interested in buck2; there are no built in rules at all, so if you need any changes, you can just make them.

Unfortunately the open source set of rules is a bit rough right now, with a decent happy path but a cliff if you’re off of it, but given some time…


The rules are open source. We did run into some road bumps in Rules Rust, that required patches or clever work arounds. But I believe the community has made great strides to improve Bazel’s Rust support in the last five years.

To be frank, I would avoid introduction of Bazel unless you are experiencing major pains with your current system and have at least a small centralized team willing to build expertise and provide support.


Bazel is definitely like kubernetes where you don't need it, until you need it.

If you got a big polyglot application its perfect for you. If your app is largely all in one language then you don't need that complexity in you life.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: