Can’t go out this weekend because I have an infected wound on my leg 😢 Saw a lot of pretty hydrangea flowers on my way back from the hospital though.
Joyee Cheung
@JoyeeCheung
Spelled as Qiuyi Zhang (张秋怡) in Mandarin. She/Her. Hacking on JS engines and Node.js
github.com/joyeecheungJoined August 2012
Joyee Cheung’s Tweets
立夏☀️
10
夏天的脚步近了
1
12
Welcome newest collaborator (onboarded a few hours ago by and nominated prior to that by )! 🎉
7
16
Topics to follow
Sign up to get Tweets about the Topics you follow in your Home timeline.
Carousel
Did you know: Node.js TSC member has done every Node.js major release since Node 12.0.0 ... meaning she's shepherded more Node.js major releases out the door than anyone else in the project's history. It's a ton of work and she does an amazing job of it.
12
46
361
Show this thread
For those who are interested about embedder-facing features, I wrote another blog post about how the snapshot support of the class fields was fixed (also used by Node.js 18)
1
11
Show this thread
Thanks and for reviewing the blog post (also did the initial implementation of the optimizations), and for funding the work mentioned in the post
1
10
Show this thread
I wrote a blog post about the optimization of new class features in that has also been included in the recent 18.0.0 release 🎉 v8.dev/blog/faster-cl
5
48
212
Show this thread
抓住春天的尾巴🌱
1
9
Show this thread
The weather has been quite nice
2
15
Show this thread
8
43
The plan is to make it available via command line options, vm contexts and workers (not necessarily in that order) after we collect enough feedback and fix the bugs (or if we just can't fix them for some reason, document them as caveats 😉)
2
Show this thread
Although currently this feature is still experimental and limited - it does not support user-land modules (which require more refactoring in the module loader and perhaps some kind of virtual file system support), and some JS states may not be snapshotable yet (which we can fix)
2
2
Show this thread
..with this you can bundle the state of the heap initialized by that code into the binary, so when loading the binary, there is no need to parse/run the initialization code, you just get an initialized heap deserialized from the snapshot.
1
4
Show this thread
A quick explanation about the difference between this and packaging solutions like pkg - with packaging you bundle the app source into a binary, and when the binary is loaded you still need to parse/run the source to get the app up and running.
1
1
Show this thread
$ cd /path/to/node/source
$ ./configure --node-snapshot-main=your-bundled-app.js
$ make node
$ out/Release/node <- this is the binary with the bundled app
For now you'll need to find a place to put your snapshotted states e.g. globalThis, stay tuned for better APIs!
2
7
Show this thread
The main blockers of making it available at run-time to a wider audience are a few (possibly) V8 issues and a deeper investigation into the Node.js builtins to find and synchronize out-of-sync states - so any early feedback is welcomed! (tracking issue is github.com/nodejs/node/is)
1
5
Show this thread
Just landed it as a build-time feature (i.e. embedding a bundled app into the binary if you compile Node.js from source). Looking into making it a run-time feature (i.e. generating/loading app snapshots from disk with the official Node.js binary) github.com/nodejs/node/pu
Quote Tweet
Managed to get the TypeScript compiler up and running with the Node.js user land snapshot prototype
github.com/nodejs/node/pu
3
19
61
Show this thread
Snapshot support for the class fields has been fixed since V8 9.8 and I just landed this in Node.js (apart from that, the CI showed there's no performance penalty switching from symbol properties to private fields in less-micro-benchmarks 😉) github.com/nodejs/node/pu
Quote Tweet
Replying to @lcasdev @JoyeeCheung and @robpalmer2
I don't remember the details, but one time we ran into certain classes with private properties (or was it symbols getters?) just completely getting V8 super confused. It is even difficult to keep our internal runtime code snapshotting consistently.
4
15
As if being at-mentioned by random accounts about the NFT stuff is not enough...
3
seeing 20% startup time speedup by moving more of Node core into the snapshot. Thanks for all the work that got us to this point that we can start moving more there as well . .
2
2
29
Show this thread
Spring has arrived in Hangzhou 🌸
2
24
Plum blossoms in Hangzhou
2
27
Show this thread
Made dumplings (with rice flour, which is apparently a Hakka tradition according to my dad) and winter squash rice cakes for the Lunar New Year.
1
7
Only managed to sleep for <2h before getting a surgery on my arm but I am not tired at all. I paid for one shot of adrenaline but not sure if they gave it to me or not, and they gave me additional anesthetic because it hurt when they started to cut.
GIF
read image description
ALT
3
5
You may have read about the new “Trojan Source” supply chain attack. If you haven’t head to trojansource.codes.
It’s a “new” type of attack that is impossible to see with human eyes.
2
31
74
Show this thread
Managed to get the TypeScript compiler up and running with the Node.js user land snapshot prototype
github.com/nodejs/node/pu
2
11
71
I think I've figured out what's going on - it only maintains the temperature at 37c which is just too low. Oh well, shouldn't have trusted a soy milk machine to be good at yogurt making.
1
Show this thread
20 years ago today, we started a humble, self-managed project to work on free software. We called it and we thought if we were lucky enough, and we worked hard enough, we might be able to make a living out of it. 1/3
5
25
136
Show this thread
Last week I got a new soy milk machine which has a yogurt option (45c for 8h).
So far I have lost 3 batches of milk. The 4th batch is in the fridge but it looks too grainy and I don’t think I am going to actually drink it.
2
Show this thread
Tried looking for them in where I live currently, and it was pretty close.
Quote Tweet
Using only food, where did you grow up? twitter.com/briankardell/s…
Show this thread
1
11











