Unbundling npm; new JS runtime by Amazon; Vite 5.1; February TC39 meeting; ES stage 2.7; Web IDL for

WorkOS, the modern API for auth and user identity.

workos.com Sponsor

WorkOS enables B2B SaaS companies to accelerate enterprise adoption with identity management and complex features like Single Sign-On, SCIM, and User Management. Built for developers tired of using legacy providers like Auth0, WorkOS delivers a unified platform with modern APIs and a predictable pricing model that will scale seamlessly with your enterprise motion.

Node.js community debate intensifies over enabling Corepack by default and potentially unbundling npm

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

“A heated debate is happening in the Node.js community over a proposal to enable Corepack by default that was opened in November 2023. This sparked the question of whether npm would be provided through Corepack moving forward, as some contributors hold the opinion that the eventual goal of its integration is to uncouple Node.js releases and npm releases.”

How does Corepack work? If it is enabled and you execute <some-package-manager> install inside a project directory, Corepack will intercept that command (quoting the Corepack readme):

  • If the local project is configured for the package manager you’re using, Corepack will silently download and cache the latest compatible version.
  • If the local project is configured for a different package manager, Corepack will request you to run the command again using the right package manager – thus avoiding corruptions of your install artifacts.
  • If the local project isn’t configured for any package manager, Corepack will assume that you know what you’re doing, and will use whatever package manager version has been pinned as “known good release”.

LLRT: Amazon’s new JavaScript runtime based on QuickJS

github.com github.com/richarddavison github.com/awslabs

LLRT (Low Latency Runtime):
  • Built in Rust, uses QuickJS as JavaScript engine
  • Supports ECMAScript 2020 and many Node.js APIs. Supporting all of them is not a goal of the project.
  • Focuses on fast startup and efficient memory usage for server-side code. QuickJS does not have a just-in-time compiler (JIT). That means that longer-running code is often slower. But it also has two benefits (quoting the project’s readme):
    • JIT compilation is a notably sophisticated technological component, introducing increased system complexity and contributing substantially to the runtime’s overall size.
    • Without the JIT overhead, LLRT conserves both CPU and memory resources that can be more efficiently allocated to code execution tasks, thereby reducing application startup times.

Vite 5.1 is out

vitejs.dev @vite@webtoo.ls

Highlights:
  • New Vite Runtime API is an upgrade for Vite’s current server-side rendering primitives with the following benefits (quoting the blog post):
    • Support for HMR during SSR.
    • It is decoupled from the server, so there is no limit on how many clients can use a single server - every client has its own module cache (you can even communicate with it how you want – using message channel/fetch call/direct function call/websocket).
    • It doesn’t depend on any node/bun/deno built-in APIs, so it can run in any environment.
    • It’s easy to integrate with tools that have their own mechanism to run code (you can provide a runner to use eval instead of new AsyncFunction for example).
  • Improved support for .css?url
  • build.assetsInlineLimit now supports a callback
  • Improved HMR for circular import
  • Support ssr.external: true to externalize all SSR packages
  • Expose close method in the preview server
  • Various performance improvements
  • Deprecated as option in import.meta.glob
  • Removed experimental build-time pre-bundling

Updates from the TC39 meeting in February 2024

dev.to github.com/hemanth

Stage changes:
  • Several proposals advanced to stage 1.
  • Stage 2: “Promise.try
  • Stage 3: “Uint8Array to/from base64 and hex”
  • Stage 4: “ArrayBuffer.prototype.transfer and friends”
  • Several proposals became inactive.

New ECMAScript proposal stage: 2.7

tc39.es @TC39@fosstodon.org

TC39 member Rob Palmer:
  • “Stage 2.7 is equivalent to what we used to call Stage 3. It means that the design is considered complete, we have a full specification, and we need to write code (tests and non-polyfill implementations) to gain feedback and make progress. It’s a strong signal.”
  • “Stage 3 has been strengthened and now also means that test262 conformance tests are ready. This is a useful signal to JS engines that a proposal is truly ready to be implemented.”
  • “Why did we do this? We separated out the ‘Approved in Principle: Spec Ready’ stage from the later ‘Recommended for Implementation: Tests Ready’ stage to reduce wasted effort in writing tests before spec stability, whilst also clarifying the test readiness message to engines.”
TC39 member Jordan Harband comments: “[Stage 2.7 is] explicitly without the signal that it’s safe to ship unflagged, or use in production (which includes publishing polyfills). Stage 3 remains the signal for these things.”

Using Web IDL for better web docs

openwebdocs.org github.com/wbamberg @openwebdocs@front-end.social

“In this post we’ll look at an investigation into the possibility of using data extracted from the W3C specifications to help make MDN more consistent, reliable, and maintainable. We’re not yet sure where this idea will end up, but we hope the post gives an insight into how we evaluate large-scale changes to such an extensive documentation set.”

V8 JavaScript engine: static roots – objects with compile-time constant addresses

v8.dev github.com/o- github.com/v8

“Did you ever wonder where undefined, true, and other core JavaScript objects come from? These objects are the atoms of any user defined object and need to be there first. V8 calls them immovable immutable roots and they live in their own heap – the read-only heap. Since they are used constantly, quick access is crucial. And what could be quicker than correctly guessing their memory address at compile time?”

Official trailer: “Node.js: The Documentary”

www.youtube.com @nodejs@social.lfx.dev

Premieres 21 March 2024 on YouTube.

What do you think of this issue?

If you have any comments or feedback, just reply to this email!

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

Older messages

Deno in 2023; Turborepo 1.12; Promise.withResolvers; import attributes; Christopher “vjeux” Chedeau

Tuesday, February 6, 2024

WorkOS, the modern API for auth and user identity. workos.com Sponsor WorkOS enables B2B SaaS companies to accelerate enterprise adoption with identity management and complex features like Single Sign-

Deno 1.40; esbuild v0.20.0; ES proposal: explicit resource management; deprecated npm packages

Tuesday, January 30, 2024

WorkOS, the modern API for auth and user identity. workos.com Sponsor WorkOS enables B2B SaaS companies to accelerate enterprise adoption with identity management and complex features like Single Sign-

Npm 2023 retrospective; Prettier 3.2; Rspack 0.5; Bun v1.0.23; library for immutable updaes; Bun

Tuesday, January 23, 2024

npm in review: a 2023 retrospective on growth, security, and quirky facts socket.dev github.com/Planeshifter @SocketSecurity@fosstodon.org “It's a new year! So let's look back at how npm, the

JavaScript’s birthday; TC39 FAQ; ESLint v8.55.0; Bun v1.0.15; Socket CLI v0.9.0; Turborepo 1.11

Tuesday, December 12, 2023

Dear readers! We are taking our end-of-the-year break and will be back on 23 January 2024. Be well and see you soon! Axel and Jowe 28 years ago (1995-12-04): “Netscape and Sun announce JavaScript, the

Prettier in Rust; Prettier performance improvements; Node v21.3.0; TC39 meeting November; esbuild...

Tuesday, December 5, 2023

Biome formatter wins the Prettier challenge (USD 22500) biomejs.dev @ematipico@fosstodon.org @biomejs@fosstodon.org Prettier challenge – “write a Prettier-compliant pretty printer in Rust”: USD 22500:

You Might Also Like

📧 Building Resilient Cloud Applications With .NET

Saturday, May 11, 2024

​ Building Resilient Cloud Applications With .NET Read on: m​y website / Read time: 7 minutes BROUGHT TO YOU BY ​ Build API Applications Visually ​ Build API applications visually using Postman Flows.

The worst of the VC fund performance may be behind us

Friday, May 10, 2024

Plus: Zeekr's shares pop and Dell's data breach did include personal data View this email online in your browser By Christine Hall Friday, May 10, 2024 Good afternoon, and welcome to TechCrunch

DeepMind releases AlphaFold 3 - Weekly News Roundup - Issue #466

Friday, May 10, 2024

Plus: OpenAI releases Model Spec; Neuralink publishes progress update; Tesla shares new video of Optimus; growing meat with Gatorade; and more! ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Issue #540: Jam winners, AGILE, and game of life in 3D

Friday, May 10, 2024

Weekly newsletter about HTML5 Game Development. Is this email not displaying correctly? View it in your browser. Issue #540 - May 10th 2024 If you have anything you want to share with the HTML5 game

🕹️ The Future of Game Emulators — We Tried Browsing the Web With Safari 1.0

Friday, May 10, 2024

Also: How Linux Got Its Name, and More! How-To Geek Logo May 10, 2024 Did You Know Honey crisp apples were developed by the Minnesota Agricultural Experiment Station's Horticultural Research Center

JSK Daily for May 10, 2024

Friday, May 10, 2024

JSK Daily for May 10, 2024 View this email in your browser A community curated daily e-mail of JavaScript news How to Create Objects in JavaScript In programming, objects are fundamental building

iOS Dev Weekly - Issue 660

Friday, May 10, 2024

Happy Birthday to … the Worldwide Developers Conference! 🎂 View on the Web Archives ISSUE 660 May 10th 2024 Comment Reading this post from Jim Luther wishing WWDC a happy 35th birthday set me thinking

Startups Weekly: Trouble in EV land and Peloton is circling the drain

Friday, May 10, 2024

Plus: The quirky rabbit R1 and Tesla's relationship with lidar View this email online in your browser By Haje Jan Kamps Friday, May 10, 2024 Welcome to Startups Weekly — Haje's weekly recap of

Daily Coding Problem: Problem #1437 [Hard]

Friday, May 10, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Microsoft. Given an array of numbers, find the length of the longest increasing

A Crushing Blow

Friday, May 10, 2024

Apple needs to read the room in which they find themselves... A Crushing Blow By MG Siegler • 10 May 2024 View in browser View in browser What came first, the quip or the commercial? What a silly