First thing every software engineer does after leaving Google is rewrite Blaze. Just like every site reliability engineer rewrites borgmon. What I chose to do myself was make Blaze happen using a Makefile config. There's a blog post somewhere where Google talks about why they switched from GNU Make to Blaze c. 2006. if I remember correctly it basically boiled down to not having strict dependency checking. So I though…
Every ex-Google SRE I know is glad they don’t have to deal with Borgmon anymore. I don't think it’s popular these days.
Please – A cross-language build system
111–120 of 257 posts
Re: Please – A cross-language build system
#112Earlier quoted context omitted.
Hey, I maintain please and will be the first one to admit we’re not the best at marketing it. We’ve mostly been focused on getting it up to scratch and only recently have we been trying to publicise it. With that being said I have put a good amount of work into the QuickStart. The code labs are designed to get you up and started in an inviting way. If you have any specific feedback about your QuickStart experience I’…
What was/is the motivation for this build system that an existing one doesn't satisfy?
We'd also tried Gradle previously but that was pretty awful for anything non-Java which made it a non-starter.
To be clear, I'm one of the original implementors, although I imagine that was obvious already...
Re: Please – A cross-language build system
#113Earlier quoted context omitted.
Some people really dislike the JVM, and Please is written in Go.
Exactly what I was about to say. Bazel is a monstrosity in terms of how much shite it pulls in to get started.
Re: Please – A cross-language build system
#114Earlier quoted context omitted.
Thanks for all the hard work! I'm very excited to see where this goes. Have you considered sponsoring, or accepting donations, to work on IDE integration? That's pretty much the only reason I migrated my current employers codebase over to Bazel instead of Please.
As a big fan of Bazel (ok, Blaze), I'm curious what's different than what Blaze offers
Also, the docker support in Bazel is pretty "different". It's not bad, but it's not immediately obvious to newcomers how this is meant to work.
It's getting better every day though.
Re: Please – A cross-language build system
#115Earlier quoted context omitted.
Exactly what I was about to say. Bazel is a monstrosity in terms of how much shite it pulls in to get started.
Is it a monstrosity? You need the JVM but the JVM doesn’t seem like a monster to me.
Re: Please – A cross-language build system
#116Earlier quoted context omitted.
Is it a monstrosity? You need the JVM but the JVM doesn’t seem like a monster to me.
The JRE is 655.8M on my system.
However, I still have somewhere over 100 GB free on my seven-year-old laptop, and the download will take me ~40 seconds.
But even if the 600MB were a problem, Bazel doesn’t need an external version of the JVM. It bundles its own, and fits the whole thing in under 50MB. Some people are under the mistaken impression that you have to install the JVM first and then install Bazel, which is simply not true.
Re: Please – A cross-language build system
#117Re: Please – A cross-language build system
#118Would be interested how feasible it would be to replace Jenkins with this?
It does have some features to facilitate CI and testing at scale, e.g. `plz query changes` can be used to find a minimal set of tests to run for a PR.
Re: Please – A cross-language build system
#119> If you're familiar with Blaze / Bazel, Buck or Pants you will probably find Please very familiar Yes, so why would I use Please over any of them? I've spent close to 10min reading and have no idea why this exists or why anyone would use it. It looks like Bazel with a different config format, in which case why wouldn't one just use Bazel?
We wanted to switch away from Bazel because of the mismatch; it looked like Pants and Buck had the same issues. At the time Please didn't have sensible documentation so it was skipped. From what they have now it seemed like it's more reasonable in this respect, but I don't actually know yet; perhaps somebody who knows can chime in?
Re: Please – A cross-language build system
#120"Please supports Linux, macOS and FreeBSD at the moment" Let me know when I can actually use this on any machine I have to work on, instead of going "fuck you, Windows users". Writing cross-platform build tooling isn't rocket science, it's a choice. And the choice made here is stupidly disappointing in near as makes no difference 2021.
I can see your point, pretty aggravating. Is WSL an option?