mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

8.5K
active users

#buildtools

0 posts0 participants0 posts today

Dear Gradle, Why So Stubborn?
Do I do something wrong?

Watching juniors try to set up a project and being greeted by cryptic stack traces like it's some kind of initiation ritual.

`Unsupported class file major version 61`
`invalid CEN header zip64 no access package`, ...

Java can compile code for older versions just fine.
It's literally designed for that.
Oh why, must Gradle behave like a bitter librarian who refuses to hand over a book unless I whisper the exact Dewey Decimal Code?
Every other Language will laugh again at java, seeing this.

💡 Why is Gradle bound to a java version? And if Gradle knows it needs Java 11… why doesn't it just do this for me?
Like using `/usr/libexec/java_home -v 11` in background?

🤖 Is there a clean way to force Gradle into submission without adding another tool like SDKMAN or jabba or YunaBraska/gradle-java-fix or whatever the trendy painkiller of the week is?

In The Before Times I used Apache Ant quite a bit, and as a result over the years I chipped in on so much that I became top scorer of the Ant topic tag stackoverflow.com/tags/ant/top

My colleague Barry calls me "Ant-Man..."

Happy to try to assist if you have any Ant problems or tasks. Post on StackOverflow, or ping me here.

Stack Overflow'ant' Top UsersStack Overflow | The World’s Largest Online Community for Developers

Even though #ThingUmbrella isn't using a low-level language, many of its design aspects and decisions are explicitly about keeping resource usage low and being generally aware of code bundling, tree shaking (dead code elimination), CPU, energy & bandwidth consumptions... As the collection now consists of 186 libraries (with ~3850 source files!), every even minor saving in the shared build infrastructure will quickly have a positive compounding impact. Over the past month I've been busy updating & testing new tooling for the entire monorepo and am super happy to report _drastically_ reduced build & test times! "Drastically" here meaning a factor of 10-20x(!!!) faster... 🚀

Time to build & test the entire monorepo on GitHub's CI:

Previously, using only TypeScript for building & NodeJS for testing:
30-40 mins (😱)

Now, using esbuild.github.io for building and bun.sh for testing:
1:50-2 mins (🤯)

On my MBA M1 (2021) the whole process only takes now 56 seconds!

If you want to apply the same kind of optimizations for your own project, do take a look at my package.json and tsconfig.json files in this repo:

github.com/thi-ng/umbrella

Ps. It's also #ReleaseMonday. Details about that in a later post... 🫡

So I've been doing some experiments to switch internal #ThingUmbrella tooling to bun.sh. The _much_ improved launch time per process could quickly save me a _ton_ of time when repeatedly batch processing 185 packages (be it for building, readme & doc generation/updating, releasing etc.)...

The main thing holding me back from making the switch already is `bun` offering only partial support for #Windows. I'm not a Win user myself, but don't want to exclude (or make it harder for) Windows-based contributors ("normal" users wouldn't be impacted by that change)...

Thoughts? Anyone else in a similar boat?

BunBun — A fast all-in-one JavaScript runtimeBundle, install, and run JavaScript & TypeScript — all in Bun. Bun is a new JavaScript runtime with a native bundler, transpiler, task runner, and npm client built-in.

Time for the grand finale! I'm going to give this one 7 days to let as many people vote as possible.

As I suspected, SCons was a clear winner over NAnt and Grunt in the last round, so the final contest for the title of Worst Build Tool 2023 is between autotools and SCons.

Which is the worst?

Round 8 of the Worst Build Tools context had autotools beating out both Maven and Webpack. Impressive, and not a little surprising to me.

Now for the second round of playoffs, to see which terrible build tool goes up against autotools in the grand final. Three choices this time — which is the worst? #BuildTools