v2.3.7
📦 denoView on GitHub →
✨ 4 features🐛 13 fixes⚡ 1 deprecations🔧 17 symbols
Summary
This release focuses on enhancing the unstable 'deno bundle' command with new flags and watch mode, alongside extensive bug fixes for Node.js polyfills and import resolution.
Migration Steps
- If using Hash or Hmac constructors from the Node.js compatibility layer, transition to crypto.createHash or crypto.createHmac to avoid deprecation warnings.
✨ New Features
- Added --platform flag to deno bundle (unstable)
- Added --sourcemap flag to deno bundle (unstable)
- Added watch mode to deno bundle (unstable)
- Allow base64 CA certificates in arguments
🐛 Bug Fixes
- Enable sloppy imports by default when bundling
- Improve error handling and reporting in deno bundle
- Transform import.meta.main during bundling
- Ensure N-API finalizer callbacks are called
- Fix DiffieHellman constructor behaviors and error types
- Fix crypto.pbkdf2 and crypto.timingSafeEqual compatibility
- Add fchmod and fchmodSync to Node.js compatibility layer
- Implement Certificate API in Node.js compatibility layer
- Fix assertion error messages in assert.ok and improve assert.ifError
- Fix handling of indent inside template languages in formatter
- Allow using import.meta.resolve for non-jsr remote URLs and non-existent files in npm packages
- Prevent panic when logging from outside a tokio runtime
- Remove 'self' from global middleware
🔧 Affected Symbols
deno bundlecrypto.Hashcrypto.Hmaccrypto.pbkdf2crypto.timingSafeEqualcrypto.hkdfcrypto.scryptDiffieHellmanfchmodfchmodSyncassert.okassert.ifErrorassert.deepStrictEqualevents.onceimport.meta.resolveimport.meta.mainCertificate⚡ Deprecations
- Deprecated Hash and Hmac constructors in ext/node/crypto.