Node.js Digest #18: Deno vs Oracle, Fluid Computing, Bun 1.2, Deno 2.2, Nest.js 11
Node.js Digest #18 by Oleksandr Zinevych

Hey, community! Oleksandr Zinevych and the Avenga team here. Welcome the new month and a new Node.js Digest.
Key Highlights
š¹ Node.js 18 will no longer be supported in Builds and Functions on the Vercel platform, though this won't affect current deployments on Serverless Functions.
š¹ The new version of TypeScript v5.8 RC is ready for use, and by the time this digest comes out, a full release may already be available.
š¹ Latest LTS updates for Node.js ā v20.18.3, v22.14.0, v18.20.7.
š¹ The new version of Nest.js v11 brings significant logging improvements, support for the latest versions of Express and Fastify, and more flexibility when working with services like Redis, Kafka, and others through the unwrap method.
š¹ New monorepo capabilities from nx.
š¹ Deno 2.2, which as always includes a lot of things, with the main highlight being better Node.js compatibility.
š¹ Updates for Prisma, Mongoose, pnpm.
Deno vs Oracle, Ep. 3

Naturally, one of the main topics of recent digests has been the showdown between Oracle and the entire JavaScript community, led by Ryahn Dahl and Deno. If you prefer a video format, here's a short stream where you can hear all the latest details of what's happening:
Or you can read about it here.
Oracle predictably decided to fight for the trademark, but in a rather interesting way. As a reminder, to confirm their rights to the trademark, Oracle provided several pieces of evidence of proper use, one of which was a screenshot of Node.js ā which, of course, was submitted without any authorization from Ryahn Dahl and the team. After waiting until the very last day to respond, Oracle is trying to focus attention on dissecting this specific case rather than discussing the actual substance ā the trademark ownership itself.
Ahead of us lie long legal battles, but we can help make JavaScript free by signing this petition (if you haven't already), which the Oracle team would very much like to have withdrawn.
Kill Switch in NPM

You all know how dangerous the npm ecosystem can be. Dozens or even hundreds of malicious packages are published every day, and their authors are waiting for your personal data.
This month, the Socket team shared some details about the importance of being careful with npm and constantly verifying the npm packages you use. In their blog, the Socket team shared details about the chokidar and chalk packages that were counterfeited by a bad actor and augmented with "kill switch" code. The modified package would not only delete your code but also send it to some suspicious URL.
As always, remember that bad actors are after your data, so it's important to be careful with the packages you use.
Bun ā New Release

Bun continues its march toward becoming the single JavaScript tool for everything, as well as a replacement for any JavaScript package you've ever used.
Perhaps that's why even the release of version 1.2 deserves its own video:
And a massive, massive blog post.
In this version, Bun made a big step toward better Node.js compatibility. Instead of just reacting to GitHub bug reports, they started running Node.js test suites, which sounds really smart.
Here's what was added/improved: ā node:http2, node:cluster and other API compatibility. ā Bun now supports S3 out of the box. ā Express runs 3x faster than in Node.js. ā PostgreSQL support added in addition to SQLite. ā Starting from version 1.2, you can use bun install instead of npm install ā as always, faster than in Node.js.
The Bun team's productivity is incredible. It seems like the team doesn't eat or sleep ā they just work on Bun and turn it into the "Swiss army knife" of modern JavaScript.
Fluid Computing

Recently Vercel announced the release of something that had been lying on the surface for a while and sounds like an obvious idea. It was dubbed Fluid Computing. As is now customary in the development world, there's a dedicated video discussing how they arrived at this solution.
The solution is straightforward ā first there were servers, then Serverless, and now Vercel has started adding multithreading to Serverless, which is how they got what they call Fluid Computing. Just one toggle in the UI and you get all the benefits of Serverless plus a bit more:

They promise to gradually move everything to Fluid Computing, but that will take time.
Something to Read
š¹ Evan Hahn tells the story of his ambitious plan to shrink all npm packages by 5% and how it didn't work out. Imagine if it had! Sure, nothing would change for you and me, but overall it would have made a great technical talk at a conference.
š¹ Some statistics about what's popular in the AI world and what tools people are using, from Cloudflare. And there are even some graphs here.
š¹ Why --eraseSyntaxOnly matters, explained by Matt Pocock in his blog.
š¹ A bit about how to structure your code, from Swizec Teller.
š¹ Matteo Collina explained in his blog why you shouldn't use URLPattern.
š¹ How Prisma Postgres works ā with pictures, charts, and dashboard screenshots. Very interesting and well-presented š
š¹ If you haven't fully switched to ESM yet, Anthony Fu writes about why you should switch completely today.
š¹ PDF parsing is a task that comes up quite often (in my experience) in the Node.js world. Liran Tal explains how to do it painlessly.
š¹ You all know what Copilot is, and many of you even use Cursor. But when refactoring with Copilot is written about in the GitHub blog, it's worth paying attention.
Something to Watch
š¹ An interesting interview and conversation with the founder of Vercel
š¹ Do you know when it's worth using Redis? The Interview Pen channel talks about this tool and its use cases.
š¹ If you have more than 5 hours of free time, you can listen to Ryan Carniato's stream about Signals.
š¹ Here Fireship talks about why programmers should be sweating a bit more due to the advancement of current AI tools.
š¹ Theo Browne talks about his database search for one that would meet all the needs for building t3chat.
š¹ Ben Flast presented how to build RAG applications using MongoDB in his talk.
š¹ And a bit more about AI and how using AI tools affects the quality of code we produce. A very interesting discussion on ThePrimeTime channel.
Library of the Month

This month my attention was drawn to the faker library, which many of you already know, but a new version just came out so I figured I'd mention it :) If you need to generate random user names, email addresses, dates of birth, and so on, faker is the tool that does this perfectly.
That's all ā the last winter digest of the year has come to an end. Ask questions, leave comments, and see you in March ;)

Enjoying the digest? Subscribe to the author to receive notifications about new publications via email.
Subscribe to the "DOU #tech" Telegram channel to never miss new technical articles