Bundling dependencies; keyword `using`; Intl.DurationFormat; vlt client; Deno npm module specifiers;

Dear readers!

We moved the publication day of ECMAScript News from Tuesday to Wednesday – which works better with our schedules. Apologies for the sudden change and thanks for reading!

Axel and Jowe

Secure your JavaScript dependencies.

socket.dev Sponsor

Open source code makes up 90% of most codebases. Socket detects what traditional vulnerability scanners can’t, including 70+ indicators of open source supply chain risk like malware, typosquatting, hijacked packages, obfuscated code, privileged APIs, and more. Install our free GitHub app today to instantly enable protection on all updates and new dependencies added in PRs.

Bundling dependencies (and when not to do it)

e18e.dev @e18e@m.webtoo.ls

Clean room tests with JavaScript’s using keyword

blog.disintegrator.dev @disintegrator@mastodon.social

A little while ago the “Explicit Resource Management” proposal was promoted to stage 3 and with it the introduction of the using keyword. Support for this feature was then introduced into TypeScript 5.2. I love this feature and, almost instantly, it gave me the idea to incorporate it into my testing to cleanly encapsulate the process of creating test databases, mock servers and so on and then tearing them down to avoid conflicts, contentions and runaway resource usage.

Using Intl.DurationFormat for localized durations

www.raymondcamden.com @raymondcamden@mastodon.social

vlt client for managing packages: new GUI features

blog.vlt.sh github.com/ejkorol @vltpkg@fosstodon.org

Now recommended for Deno: npm: module specifiers

deno.com github.com/lambtron @deno_land@fosstodon.org


// Old recommendation:
import React from 'https://esm.sh/react@19';

// New recommendation:
import React from 'npm:react@19';
  • Interesting benefit: You can write stand-alone scripts that don’t need a config file to specify package versions.
  • As soon as a project has more than one file, you probably want to use an import map – mentioning the package version for each import seems tedious.

Node.js

Node v23.8.0 (current): URL Pattern API, zstd compression, named threads and more

nodejs.org github.com/targos @nodejs@social.lfx.dev

Highlights:
  • URL Pattern API: currently an import from node:url, available as a global in Node.js 24.
  • Support for the zstd compression algorithm
  • “Threads created by the Node.js process are now named to improve the debugging experience. Worker threads will use the name option that can be passed to the Worker constructor.”

require(esm) backported to Node.js 20, paving the way for ESM-only packages

socket.dev @sarahgooding@fosstodon.org @SocketSecurity@fosstodon.org

“The long-standing divide between CommonJS (CJS) and ECMAScript Modules (ESM) in the Node.js ecosystem just took a major step toward resolution. Thanks to the incredible efforts of Joyee Cheung, require(esm) has been backported to Node.js 20.”

“This change means that when Node.js 18 reaches end-of-life (EOL) in April 2025, library maintainers can finally drop their CJS builds and ship ESM-only packages with confidence.”

Interesting npm packages

unloader: Node.js loader framework with a Rollup-like interface

github.com @sxzz@webtoo.ls

Quote: “unloader is designed to be a general-purpose loader, which can be used to develop various loaders, such as Oxc loader, TypeScript loader, etc.”

Unplugin: unified plugin system for Vite, Rollup, Webpack, esbuild, Rolldown, and more

unplugin.unjs.io github.com/unjs

This email was sent to you. You can unsubscribe from this list here or update your preferences.

Older messages

Alternatives to npm; TC39 meeting; Rust and JS plugins; long-term software maintenance; WeakMaps; JS

Thursday, February 27, 2025

We have 14 links for you - the latest on JavaScript and tools Is npm enough? Why startups are coming after this JavaScript package registry redmonk.com @kateholterhoff@hachyderm.io @redmonk@mastodon.

JSR open governance board; ESM-only packages; breaking up long tasks; Prettier 3.5; esbuild v0.25.0;

Friday, February 14, 2025

We have 9 links for you - Stay up-to-date on JavaScript and tools Introducing the JSR open governance board deno.com github.com/ry @lcasdev@mastodon.social github.com/crowlKats @deno_land@fosstodon.org

State of JS 2024; compiling JS via Porffor; source map format specification; December TC39 meeting;

Thursday, December 19, 2024

We have 9 links for you - Stay up-to-date on JavaScript and tools Dear readers! We are taking our end-of-the-year break and will be back on 21 January 2025. Be well and see you soon! Axel and Jowe

Require(esm) in Node.js LTS; simplified npm search; JS videos; Rolldown v0.15.0; oxlint v0.14.0

Tuesday, December 10, 2024

We have 6 links for you - Stay up-to-date on JavaScript and tools Node.js v22.12.0 (LTS): require(esm) is enabled by default nodejs.org @ruyadorno@fosstodon.org @nodejs@social.lfx.dev require(esm)

Canceling JS trademark; mapping over Promises; scheduler API; Oniguruma regexes; multi-file support

Tuesday, December 3, 2024

We have 11 links for you - Stay up-to-date on JavaScript and tools Deno v. Oracle: Canceling the JavaScript Trademark deno.com github.com/ry @deno_land@fosstodon.org “On November 22, 2024, Deno

You Might Also Like

JSK Daily for Mar 21, 2025

Friday, March 21, 2025

JSK Daily for Mar 21, 2025 View this email in your browser A community curated daily e-mail of JavaScript news Introducing the New React MultiColumn ComboBox The React MultiColumn ComboBox is a

Dispatch 049: March Madness

Friday, March 21, 2025

AlexNet Open Sourced • Microsoft's Inflection • Yahoo's TechCrunch • CoreWeave's Swap The Spyglass Dispatch is a newsletter featuring links and commentary on timely topics found around the

Daily Coding Problem: Problem #1724 [Medium]

Friday, March 21, 2025

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Airbnb. You are given a huge list of airline ticket prices between different cities

Ranked | The World's 50 Most Valuable Brands in 2025 💰

Friday, March 21, 2025

American tech firms largely dominate the most valuable brands, but large Chinese competitors are quickly rising up the rankings. View Online | Subscribe | Download Our App Why We're Going All-In on

iOS Dev Weekly – Issue 704

Friday, March 21, 2025

How do you think about choosing package dependencies? Do you have any hard “No”'s? ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

iOS Cocoa Treats

Friday, March 21, 2025

View in browser Hello, you're reading Infinum iOS Cocoa Treats, bringing you the latest iOS related news straight to your inbox every week. Rendering Pixel Art with SwiftUI The main challenge of

Issue #585: Publishing games on Steam, GIMP 3.0, and A Very Tiny Game

Friday, March 21, 2025

View this email in your browser Issue #585 - March 21st 2025 Weekly newsletter about Web Game Development. If you have anything you want to share with our community please let me know by replying to

ASP.NET Core News - 03/21/2025

Friday, March 21, 2025

View this email in your browser Get ready for this weeks best blog posts about ASP.NET Core! How to log to Azure Application Insights using ILogger in ASP.NET Core — by bellonedavide .NET 10 Preview 2

The Android for iPhone die-hards📱

Friday, March 21, 2025

AI video's secret cost; CTO vs. CMO; Amazon phone deals -- ZDNET ZDNET Tech Today - US March 21, 2025 Planck SSD I found an Android phone that can convince iPhone users to make the switch - and

⚙️ Claude's upgrade

Friday, March 21, 2025

Plus: ChatGPT tells a father he killed his sons ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌