Pinned
Joyee Cheung
2,959 posts
She/Her. I contribute to Node.js and V8.
- Landed experimental support for synchronous require(esm) to load ES modules without top-level await 🥳
- require(esm) has been enabled by default on v23 🎉 please try it out and report any regressions found to help us fully stabilize it. We expect to test it on v23 for a while and smooth out potential regressions before unflagging it on v22 in a later semver-minor release🚀 Node.js 23 is here! 🚀 New features, performance boosts, and a smoother developer experience. With better compatibility and stability, Node.js 23 delivers more power for building efficient apps. Read here: 👉hubs.la/Q02TFFXp0 #NodeJS #JavaScript #WebDevelopment
- Replying to @JoyeeCheungAlso, I wrote a bit about my understanding on why this took ~5 years more than it should have :
- I wrote a blog post about the optimization of new class features in @v8js that has also been included in the recent @nodejs 18.0.0 release 🎉 v8.dev/blog/faster-cl…
- Just unflagged require(esm) in Node.js, which will go out in v23 github.com/nodejs/node/pu… Will see how it works in the wild and smooth out any regressions found before looking into unflagging on v22 and maybe v20 (they already have this feature, just behind the flag)
- Woke up to an accepted @v8js committer nomination today 😊 Thank you to everyone who have helped me along the way!
- 🎉 require(esm) has been unflaged in v22.12.0! We are also planning to unflag it on v20.x later if it goes well in v22.x. As before please try it out and report any bugs you find. (hopefully none, but with how wild the module loading edge cases can be, one never knows!).A new Node.js LTS Release is out! 🥳 v22.12.0 enables require(esm) by default! Read more about that change and the rest of additions / fixes in our blog post / CHANGELOG: nodejs.org/en/blog/releas…
- Just landed a new flag in Node.js - e.g node --heapsnapshot-near-heap-limit=3 to take up to 3 snapshots when the heap is on the edge of OOM so you can compare and see what objects are allocated before the Node.js instance crashes due to OOM
- Landed a PR to enable ccache-like env var for caching Node.js module compilation. Numbers from folks trying an earlier version of this: tsc --version: ~90ms -> ~40ms yarn --version: ~165ms -> ~115ms npm run echo (bundled by ncc): ~150ms -> ~110ms
- If you are stuck on 16 because of the 100x perf regression/memory leak of vm.Script compilation (or just Jest users getting stuck on 16 due to perf reasons/memory leak), the fix/workaround is in 20 now (v18 backport is WIP)New Node.js v20.10.0 'Iron' (LTS) release up now ⚡💚 Details here: hubs.la/Q029ML660
- Landed a set of Node.js APIs that aim to be a built-in alternative to v8-compile-cache & v8-compile-cache-lib with better performance and ESM support. github.com/nodejs/node/pu… Some early testing by @andhaveaniceday showed that it can make tsc load ~2.3x faster 🚀
- New blog posts about my recent work on making the Node.js built-in snapshot and code cache reproducible (which unblocked making the Node.js executables reproducible). Part 1: overview of the Node.js embedded snapshot/code cache building process
- Today is my last day at Alibaba. It has been an amazing experience working with some of the best Node.js developers in China. 🙏




