Node 19 released

#​459 — October 20, 2022

Read on the Web

Together with 

Node.js 19 Released

As an odd-numbered release, Node 19 will never become an ‘active LTS’ version, but sits as the ‘current’ release that gets all the tastiest new features until early 2023. It then reaches ‘end of life’ on June 1, 2023. “If you’re interested in getting access to features early, Node.js 19 is ready,” says Rafael Gonzaga of the core team.

New features this time around include:

  • Watch mode. An experimental --watch Nodemon-esque mode for ‘watching’ files and restarting the process when imported files change. (Node 18.11.0 (LTS) also gains this feature.)

  • HTTP KeepAlive is now enabled by default. It’s always been an option but now it’s set to true by default. The default duration is 5 seconds.

  • V8 10.7. Node bumps up to the latest version of the V8 engine. It’s not a big jump but does introduce Intl.NumberFormat

  • The WebCrypto API is now stable (with the exception of Ed25519, Ed448, X25519, and X448).

  • Some other dependency upgrades, such as to npm 8.19.2 and llhttp 8.1.0.

As things stand, we’re in the odd position of Node 18.x and 19.x both being the ‘Current’ release, but Node 18 begins its role as an LTS release on October 25. More info in the release policies here and the OpenJS Foundation has extra detail in its release post too.

The Node.js Team

Memetria: Secure, Scalable, Full-Featured Redis 7 Hosting — The latest Redis features, instrumented and scaled with the tools teams need as they grow.

Memetria sponsor

Choosing the Best Node.js Docker Image — If you feel tempted to just throw FROM node into your Dockerfile, think again – there are other options to consider.

Liran Tal (Snyk)

▶  Effortless End-to-End Type-Safety with Phero — A demonstration of a library providing a type-safe TypeScript-based way to communicate between frontend and backend. GitHub repo.

Jasper Haggenburg

IN BRIEF:

PowerShell, NPM Scripts, and Silently Dropped Arguments — If you’re a Powershell user and you’re finding that some arguments aren’t being passed to your Node scripts run through npm run, Lloyd explains what’s going on.

Lloyd Atkinson

▶  A Next.js Crash Course — There are a lot of such videos, but this is a well recorded and up to date one so it might help you get the lay of the Next.js land if you’re just starting out with it. (2 hours 30 minutes)

Anson Foong

Web Scraping Google Maps with Puppeteer — We’d be surprised if you’d get away with this for long given there’s an official API, but it’s always interesting to see how it’s done.

Darshan Khandelwal

Your Step by Step Guide to Containerizing Node.js Web Applications

Snyk sponsor

Sending UDP Messages without DNS Lookups
Herman J. Radtke III

How Wix Uses Threading in Node Apps to Cut Kubernetes Pod Costs
Jessica Wachtel (The New Stack)

🛠 Code & Tools

Javet 2.0.0: Embed Node and V8 in Java Apps — Lets you spin up V8 interpreters or full Node.js runtimes within JVM-based apps. There’s a slide presentation to sell you on the idea and demonstrate how the integration works. (The name Javet comes from Java, V, and Eight.)

Sam Cao

Editly 0.14.0: Declarative Command Line Video Editing — Brings Node and FFmpeg together to let you more programatically edit and construct videos instead of wrangling with arcane ffmpeg command line options.

Mikael Finstad

Send Email, Push and SMS with Smart Routing, with Just 8 Lines of Code — Are you stuck using marketing tools like salesforce to contact your users? Send notifications from right within your application using the Courier API.

Courier.com sponsor

lady-gg: Simple TypeScript gRPC Client
Mish Ushakov

  • Awilix 8.0
    ↳ Inversion of Control (IoC) container for Node.

  • Nx 15.0
    ↳ Smart, fast and extensible build system.

  • Nightwatch 2.4
    ↳ End-to-end testing framework, now with improved component testing support.

  • lowdb 4.0
    ↳ Simple to use local JSON database.

  • Prisma 4.5
    ↳ Next-generation ORM. There’s a lot new here.

  • PSD 0.3
    ↳ Zero-dependency PSD/Photoshop file parser.

  • fdir 5.3
    ↳ Performance-oriented directory crawler and globbing library.

  • google-translate 2.0
    ↳ Consume Google’s Translate API.

  • Mercurius 11.1
    ↳ Implement GraphQL servers with Fastify.

  • Mongoist 2.5.6
    ↳ MongoDB driver built with async/await in mind.

  • Mojo.js 1.7
    ↳ Web framework inspired by Perl’s Mojolicious.

💻 Jobs

Doppler – A SecretOps Platform Built by Developers for Developers — Doppler’s looking for Sr. Full-Stack Engineers to help shape the future of security devtools. TypeScript, React, Express, and Go, apply here.
Doppler

Find Tech Jobs with Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It’s free for job-seekers.
Hired

Related Post

The future JavaScript features at TC39The future JavaScript features at TC39

<table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.55em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height:

Vite 3, or in French: quick, quick, quick.Vite 3, or in French: quick, quick, quick.

<table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.55em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height:

Common JavaScript issues developers faceCommon JavaScript issues developers face

<table border=0 cellpadding=0 cellspacing=0 align="center" border="0"> <tr><td style="font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: 1.55em; "> <div> <table border=0 cellpadding=0 cellspacing=0 border=0 cellpadding=0 cellspacing=0><tr> <td align="left" style="padding-left: 4px; font-family: -apple-system,BlinkMacSystemFont,Helvetica,sans-serif; font-size: 15px; line-height: