皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Node 18.8.0 发布

Node 18.8.0 发布

Notable changes

bootstrap: implement run-time user-land snapshots via –build-snapshot and –snapshot-blob

This patch introduces --build-snapshot and --snapshot-blob options for creating and using user land snapshots.

To generate a snapshot using snapshot.js as an entry point and write the snapshot blob to snapshot.blob:

echo "globalThis.foo = 'I am from the snapshot'" > snapshot.js
node --snapshot-blob snapshot.blob --build-snapshot snapshot.js

To restore application state from snapshot.blob, with index.js as the entry point script for the deserialized application:

echo "console.log(globalThis.foo)" > index.js
node --snapshot-blob snapshot.blob index.js
# => I am from the snapshot

Users can also use the v8.startupSnapshot API to specify an entry point at snapshot building time, thus avoiding the need of an additional entry script at deserialization time:

echo "require('v8').startupSnapshot.setDeserializeMainFunction(() => console.log('I am from the snapshot'))" > snapshot.js
node --snapshot-blob snapshot.blob --build-snapshot snapshot.js
node --snapshot-blob snapshot.blob
# => I am from the snapshot

Contributed by Joyee Cheung in #38905

Other notable changes

  • crypto:
    • (SEMVER-MINOR) allow zero-length IKM in HKDF and in webcrypto PBKDF2 (Filip Skokan) #44201
    • (SEMVER-MINOR) allow zero-length secret KeyObject (Filip Skokan) #44201
  • deps:
    • upgrade npm to 8.18.0 (npm team) #44263 – Adds a new npm query command
  • doc:
    • add Erick Wendel to collaborators (Erick Wendel) #44088
    • add theanarkh to collaborators (theanarkh) #44131
    • add MoLow to collaborators (Moshe Atlow) #44214
    • add cola119 to collaborators (cola119) #44248
    • deprecate --trace-atomics-wait (Keyhan Vakil) #44093
  • http:
    • (SEMVER-MINOR) make idle http parser count configurable (theanarkh) #43974
  • net:
    • (SEMVER-MINOR) add local family (theanarkh) #43975
  • src:
    • (SEMVER-MINOR) print source map error source on demand (Chengzhong Wu) #43875
  • tls:
    • (SEMVER-MINOR) pass a valid socket on tlsClientError (Daeyeon Jeong) #44021

更多 Node v18.8.0 (Current) | Node.js (nodejs.org)