Change8

v2.8.1

📦 denoView on GitHub →
1 features🐛 34 fixes🔧 20 symbols

Summary

This release focuses heavily on bug fixes across Node.js compatibility, bundling, and runtime stability. Key improvements include better handling of npm specifiers and various fixes in the node extension for TLS, file system, and utility functions.

✨ New Features

  • Support `browser` field map in package.json for bundling.

🐛 Bug Fixes

  • Reverted polyfill for module.enableCompileCache and companions in node extension.
  • Fixed reading package.json sideEffects field during bundling.
  • Provided clearer error when importing .node addon via ESM.
  • Prevented panic when --config path cannot be converted to URL.
  • Allowed host objects to round-trip through core.deserialize.
  • Kept lazy_loaded_esm sources across concurrent loads.
  • Checked resolved IPs against net deny list in fetch and websocket extensions.
  • Set TLSSocket.authorized=false when client presents no certificate in node extension.
  • Accepted array forms of cert/key/pfx in createSecureContext in node extension.
  • Added missing node:util APIs: getSystemErrorMap, transferableAbortSignal, transferableAbortController.
  • Allowed omitting arguments in base64Slice in node extension.
  • Attached register as static on Module in node extension.
  • Stopped throwing NotFound for fs.exists in node extension.
  • Dropped extra positional arguments in promisified fs.promises.* in node extension.
  • Emitted 'error' event for fs.watch open failures in node extension.
  • Enforced minimum Miller-Rabin rounds in checkPrime in node extension.
  • Extracted cert/key from pfx in tls SecureContext in node extension.
  • Prevented panic on `node:sqlite` aggregate method.
  • Required env permission for process.loadEnvFile in node extension.
  • Reset req.reusedSocket on transparent retry in node extension.
  • Supported PKCS#12 MACs other than SHA-1 in node extension.
  • Tolerated non-AsyncWrap handles in _getNewAsyncId in node extension.
  • Woke runtime after direct serve dispatch in http extension.
  • Emitted NodeWorker.attachedToWorker for late workers in inspector.
  • Prevented invoking Proxy traps in util.inspect in node/util.
  • Removed automatic @deno/shim-deno injection during packing.
  • Ensured lazy-loaded globals shadow on inherited [[Set]].
  • Walked ancestor node_modules/.bin in BYONM mode for tasks.
  • Preserved newlines after multi-line block comments during transpilation.
  • Restored brotli in CompressionFormat for dom/webworker libs in types.
  • Zstd-compressed bsdiff delta patches during upgrade.
  • Allowed --inspect=localhost:0 to resolve hostnames.
  • Fixed panic in deno test --parallel.
  • Supported npm: specifiers in --preload and --import.

Affected Symbols