2.4.0 / 2025.07.01
- feat(bundle): support text and bytes imports in bundle (#29908)
- feat(check): tsconfig "references", "extends", "files", "include" and "exclude" (#29843)
- feat(cli): add
--coverage
flag todeno run
command (#29329) - feat(cli): alias --unstable-sloppy-imports to --sloppy-imports (#29780)
- feat(ext/http): support
onListen()
callback indeno serve
(#29449) - feat(fmt): add support for .xml, .svg and .mustache files (#29851)
- feat(fmt): remove UTF-8 BOM instead of maintaining it (#29796)
- feat(node API): add
fs.glob
,fs.globSync
,fs.promises.glob
(#28972) - feat(otel): stabilize OpenTelemetry support (#29822)
- feat(process): add detached option to
Deno.Command
(#29933) - feat(run): resolve main module with workspace resolver (#29928)
- feat(signals): support listening for ctrl+close on Windows (#27880)
- feat(unstable): add DENO_NODE_CONDITIONS env var (#29848)
- feat(unstable): bytes and text imports (#29855)
- feat(unstable): support bytes and text imports in
deno compile
(#29924) - feat: --allow-net supports CIDR ranges (#29704)
- feat: Add --deny-import flag (#29702)
- feat: Deno.execPath() no longer requires --allow-read permission (#29620)
- feat: add 'deno update' subcommand (#29187)
- feat: add
DENO_AUTO_SERVE
env var (#29852) - feat: add
DENO_COMPAT
env var (#29889) - feat: add support for --preload/--import flag (#29626)
- feat: deprecate --unstable-node-globals flag (#29887)
- feat: make 'Buffer' and 'global' available as globals (#29416)
- feat: make
setImmediate
andclearImmediate
as globals (#29877) - feat: rename --unstable-node-conditions to --unstable-conditions (#29885)
- feat: stabilize --allow-net subdomain wildcards (#29902)
- feat: stabilize --node-conditions flag (#29628)
- feat: unflag the deploy subcommand (#29863)
- fix(bench): Make output table markdown compatible (#29532)
- fix(bundle): only replace require shim in js files, spruce up output (#29892)
- fix(check): don't detect tsconfigs with no deno.json/package.json or --no-config (#29925)
- fix(coverage): Make output table markdown compatible (#29533)
- fix(ext/node): add
lchmod
,lchmod
promise,lchmodSync
tonode:fs
(#29833) - fix(ext/node): add type check to LibuvStreamWrap.writeBuffer (#29879)
- fix(ext/node): don't show deprecation warnings for dependencies (#29909)
- fix(ext/node): export promise based
lchown
andlutimes
fromnode:fs/promises
(#29870) - fix(ext/node): fix reference error in node:stream (#29894)
- fix(ext/node): improve assert.fail (#29850)
- fix(ext/node): improve input validations of stream/consumers (#29880)
- fix(ext/node): keep BOM in buffer.toString('utf8') (#29896)
- fix(ext/node): remove duplicated stream classes (#29860)
- fix(fmt/css): prefer collapsing font-family values (#29864)
- fix(install): purge more packages from lockfile on config change (#29953)
- fix(install/global): resolve bin name from npm packument (#29884)
- fix(lsp): don't show no-export diagnostics for type-only npm imports (#29888)
- fix(node): use primordials more consistently in
_events.mjs
(#29930) - fix(publish): disallow publishing with bytes or text imports (#29954)
- fix: support
Deno.permissions.query({name:"import"})
(#29610) - perf: skip loading bytes and text imports into memory when already cached and building module graph (#29931)