Skip to content

Releases: denoland/deno

v2.1.12

12 Apr 00:43
16b18e2

Choose a tag to compare

2.1.12 (LTS) / 2025.04.11

The 2.1.11 release had an incorrect version number when doing deno -v.

  • fix(ext/node): alias shake-128 and shake-256 hash algorithms (#28451)
  • fix(ext/node): return Buffer from crypto cipher APIs (#28826)
  • fix(ext/node): support input option in spawnSync (#28792)
  • fix(ext/node): use primordials in ext/node/polyfills/path/separator.ts
    (#28669)
  • fix(node): add reset method to event loop delay histogram (#28788)

v2.1.11

10 Apr 13:45
d73d467

Choose a tag to compare

2.1.11 (LTS) / 2025.04.08

  • docs: add examples for SubtleCrypto (#28068)
  • docs: adding a missing full stop to context help text (#28465)
  • docs: adding jsdocs for temporalAPI (#28542)
  • docs: fix a numerical error in update_typescript.md (#28556)
  • docs: fix a typo in specs README.md (#28524)
  • docs: fixed a typo in update_typescript.md (#28486)
  • docs: ignore absent window global variable in d.ts (#28456)
  • docs: making copy a little clearer (#28481)
  • docs: randomUUID and getRandomValues (#28496)
  • docs(canvas): Add examples to createImageBitmap jsdocs (#28055)
  • docs(console): update console documentation (#28196)
  • docs(web): update docs for globalThis.caches (#28061)
  • fix: add hint to run with --no-check when type checking fails (#28091)
  • fix: add info suggestion for unsafely-ignore-certificate-errors and add
    --help=full (#28203)
  • fix: add stackTraceLimit to ErrorConstructor interface and removed
    ErrorWithStackTraceLimit interface (#28539)
  • fix: cache bust http cache on lockfile integrity mismatch (#28087)
  • fix: don't panic when running with // as a filepath (#28189)
  • fix(add): better help text for --dev arg (#28304)
  • fix(check): npm resolution errors to tsc diagnostics (#28174)
  • fix(cli): add compilerOptions.lib examples to config-file.v1.json (#28226)
  • fix(completions): remove problematic character for powershell (#28102)
  • fix(coverage): exclude scripts with invalid URLs from raw coverage output
    (#28210)
  • fix(ext/cache): add missing Cargo feature (#28178)
  • fix(ext/node): mkdir() parse file mode (#28609)
  • fix(ext/node): correct STATUS_CODES strings (#28489)
  • fix(ext/node): decipherIv() range error on invalid final block length (#28215)
  • fix(ext/node): emit 'close' event on ServerResponse object when client aborted
    the request (#28601)
  • fix(ext/node): node compatibility issue missing fd in createServer callback
    socket object (#27789)
  • fix(ext/node): propagate 'close' event of IncomingMessage to Socket (#28582)
  • fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_lstat.ts
    (#28644)
  • fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_readv.ts
    (#28645)
  • fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_realpath.ts
    (#28652)
  • fix(ext/node): use primordials in ext/node/polyfills/path/_util.ts (#28432)
  • fix(ext/node): use primordials in ext/node/polyfills/path/common.ts (#28164)
  • fix(ext/os): explicitly enable sysinfoapi feature on winapi dependency
    (#28568)
  • fix(ext/websocket): cancel in-flight handshake on close() (#28598)
  • fix(fmt): support "--ext vto" and "--ext njk" (#28262)
  • fix(init): force --reload if npm or jsr package (#28150)
  • fix(install): don't error on unknown media types in install (#28234)
  • fix(install): exclude npm workspace packages from graph roots in install
    (#28401)
  • fix(npm): further reduce duplicates with optional peers (#28705)
  • fix(npm): improve optional peer dep handling (#28651)
  • fix(npm): reduce duplicate peers by preferring existing nv if nv anywhere in
    ancestor peers (#28663)
  • fix(npm): reduce occurrences of duplicate packages due to peer dep resolution
    (#28586)
  • fix(outdated): hint to use --latest if new versions are available in
    outdated --update (#28190)
  • fix(run): skip the cjs suggestion for mjs/mts modules (#26698)
  • fix(task): support --frozen flag (#28094)
  • fix(types): add Error.isError type (#28679)
  • fix(unstable/temporal): implement
    Temporal.ZonedDateTime.getTimeZoneTransition (#27770)
  • perf(install): keep parsed npm package info in memory cache (#28636)
  • perf(install): only read initialized file if we care about the tags (#28242)
  • perf(lsp): make auto-imports a little faster (#28106)

v2.2.8

05 Apr 03:00
32b9cc9

Choose a tag to compare

2.2.8 / 2025.04.05

  • fix(compile): ensure atime/birthtime/mtime/ctime is set in vfs (#28731)
  • fix(fmt): use non-zero exit code when formatting fails (#28523)
  • fix(lint): resolve plugin paths from proper config specifier (#28752)
  • fix(lsp): filter scheme in semantic tokens registration options (#28756)
  • fix: only strip local and debug symbols from macOS binary to fix Node API
    (#28758)
  • fix: upgrade v8 to 135.1.0 (#28697)

v2.2.7

04 Apr 10:43
e7dab41

Choose a tag to compare

2.2.7 / 2025.04.04

  • feat(unstable/otel): v8js metrics (#28592)
  • fix(ext/node): better dns.lookup compatibility (#27936)
  • fix(ext/node): sqlite handle empty blob being NULL (#28674)
  • fix(ext/node): support the optional previousValue parameter for
    process.cpuUsage() (#28550)
  • fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_lstat.ts
    (#28644)
  • fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_readv.ts
    (#28645)
  • fix(ext/node): use primordials in ext/node/polyfills/_fs/_fs_realpath.ts
    (#28652)
  • fix(ext/webgpu): release current texture of surface after present (#28691)
  • fix(install): remove duplicate deprecated messages (#28738)
  • fix(lsp): format vscode-userdata schemed documents (#28706)
  • fix(lsp): preserve notification order after init flag is raised (#28733)
  • fix(lsp): url_to_uri() encoding on windows (#28737)
  • fix(npm): further reduce duplicates with optional peers (#28705)
  • fix(npm): reduce duplicate peers by preferring existing nv if nv anywhere in
    ancestor peers (#28663)
  • fix(npm): use Deno instead of Node in more cases for lifecycle scripts
    (#28715)
  • fix(runtime): fix duplicate unstable ids for no-legacy-abort (#28740)
  • fix(task): filter empty elements in xargs (#28714)
  • fix(test): ignore write errors in reporter (#28722)
  • fix(types): add Error.isError type (#28679)
  • fix(webgpu): move isFallbackAdapter from GPUAdapter to GPUAdapterInfo
    (#28650)
  • fix: show referrer for Wasm module dependency errors (#28653)
  • perf: remote symbolicate stack traces (#28470)

v2.2.6

28 Mar 08:00
2037200

Choose a tag to compare

2.2.6 / 2025.03.28

  • feat(unstable/run): ability to lazily load statically analyzable dynamic
    imports (#28593)
  • fix(ext/crypto): support cross-curve ECDSA sign and verify (#28574)
  • fix(ext/node): mkdir() parse file mode (#28609)
  • fix(ext/node): emit 'close' event on ServerResponse object when client aborted
    the request (#28601)
  • fix(ext/node): propagate 'close' event of IncomingMessage to Socket (#28582)
  • fix(ext/node): sqlite error details (#28431)
  • fix(ext/websocket): cancel in-flight handshake on close() (#28598)
  • fix(npm): improve optional peer dep handling (#28651)
  • fix(npm): reduce occurrences of duplicate packages due to peer dep resolution
    (#28586)
  • fix(npm): resolve non-version matching peer deps and warn instead (#28616)
  • fix(npm): set up bin entries for package even if it's already downloaded
    (#28626)
  • perf(install): keep parsed npm package info in memory cache (#28636)

v2.2.5

21 Mar 12:10
6e08a9d

Choose a tag to compare

2.2.5 / 2025.03.21

  • feat(unstable): basic otel event recording (#28552)
  • feat(unstable): support using a local copy of npm packages (#28512)
  • feat: upgrade deno_core and V8 13.5 (#28562)
  • fix(doc): do not stack overflow for namespace that exports self or ancestor
    (#28533)
  • fix(ext/node): add util.getCallSites (#28546)
  • fix(ext/node): reset statement immidiately in run() (#28506)
  • fix(ext/node): restrict ATTACH DATABASE statement (#28513)
  • fix(ext/os): explicitly enable sysinfoapi feature on winapi dependency
    (#28568)
  • fix(lsp): do not show import-map-remap diagnostic when referrer and target are
    within the entry base (#28560)
  • fix(otel): replace ArrayPrototypeSplit with StringPrototypeSplit (#28538)
  • fix: add stackTraceLimit to ErrorConstructor interface and removed
    ErrorWithStackTraceLimit interface (#28539)

v2.2.4

14 Mar 21:10
33132ab

Choose a tag to compare

2.2.4 / 2025.03.14

  • feat(otel): span context propagators (#28460)
  • feat(unstable/otel): add otel tracing to node:http.request (#28463)
  • feat: support FORCE_COLOR (#28490)
  • fix(bench): lower bench time budget when n is specified (#28454)
  • fix(check): support types@ export conditions (#28450)
  • fix(check): support typesVersions in npm dependencies (#28468)
  • fix(cli): warn when an otel env var has an invalid value (#28394)
  • fix(ext/node): correct STATUS_CODES strings (#28489)
  • fix(ext/node): use primordials in ext/node/polyfills/path/_util.ts (#28432)
  • fix(install): exclude npm workspace packages from graph roots in install
    (#28401)
  • fix(install): support "file:" dependencies in local package.json (#28396)
  • fix(lsp): auto-import from npm package exports with manual node_modules
    (#28414)
  • fix(lsp): silence errors from "codeAction/resolve" (#28400)
  • fix(node): support re-exported esm modules in cjs export analysis (#28379)
  • fix(otel): don't print otel warning when variable is not set (#28475)
  • fix(otel/unstable): trace error cases of fetch (#28480)
  • fix(run): skip the cjs suggestion for mjs/mts modules (#26698)
  • fix(unstable): lint plugin !== wrongly parsed as != (#28403)
  • fix(unstable): wrong node with shorthand ObjectPattern + AssignPattern
    (#28402)
  • fix: unhandled rejection from quic (#28448)
  • perf(lsp): lazily start the ts server (#28392)

v2.2.3

05 Mar 05:28
8203278

Choose a tag to compare

2.2.3 / 2025.03.05

  • feat(unstable): lint plugins support field selectors (#28324)
  • fix(add): better help text for --dev arg (#28304)
  • fix(check/npm): move not found errors inside npm packages to tsc diagnostics
    (#28337)
  • fix(ext/node): SQLite reset guards to prevent database locks (#28298)
  • fix(ext/node): node compatibility issue missing fd in createServer callback
    socket object (#27789)
  • fix(fmt/md): handle callout followed by non-text (#28333)
  • fix(lint): run with --no-prompt (#28305)
  • fix(lsp): include prefix and suffix for rename edits (#28327)
  • fix(lsp): limit languages in semantic tokens provider (#28310)
  • fix(node): require esm should prefer module.exports export (#28376)
  • fix(otel): don't throw when calling setActiveSpan at root (#28323)
  • fix(unstable): Missing PrivateIdentifier type for PropertyDefinition key
    (#28358)
  • fix(unstable): lint plugin ObjectPattern inconsistencies (#28359)
  • fix(unstable): lint plugin child combinator not working with groups (#28360)
  • fix(unstable): lint plugin fix :has(), :is/where/matches and :not()
    selectors (#28348)
  • fix(unstable): lint plugin regex attribute selector not working (#28340)
  • fix(unstable): lint plugin swapped exported and source for
    ExportAllDeclaration (#28357)
  • fix(unstable/lint): remove duplicated Fix vs FixData interface (#28344)
  • fix: add "module.exports" export to ESM CJS wrapper module (#28373)
  • fix: deno_ast 0.46 (#28331)
  • fix: respect lockfile for multiple available jsr versions (#28375)
  • perf(http): instantiate generic functions in deno_http, increase opt-level
    for some more hyper deps (#28317)
  • perf(lsp): don't set resolver npm reqs if unchanged (#28302)
  • perf(lsp): register semantic tokens provider upon opening enabled doc (#28384)

v2.2.2

25 Feb 09:05
b2e5efd

Choose a tag to compare

2.2.2 / 2025.02.25

  • fix(check): regression - implicit jsxImportSource was not resolving (#28228)
  • fix(cli): add compilerOptions.lib examples to config-file.v1.json (#28226)
  • fix(config): allow specifying absolute path for patch and fix panic with
    exports in package.json (#28279)
  • fix(ext/node): decipherIv() range error on invalid final block length (#28215)
  • fix(ext/node): descriptive sqlite error messages (#28272)
  • fix(fmt): support "--ext vto" and "--ext njk" (#28262)
  • fix(http): generate OtelInfo only when otel metrics are enabled (#28286)
  • fix(install): don't error on unknown media types in install (#28234)
  • fix(lint): don't recurse infinitely for large ASTs (#28265)
  • fix(lint): give access to SourceCode in 'deno test' (#28278)
  • fix(lint): plugins ignored when no rust rule active (#28269)
  • fix(lint): update deno_lint (#28271)
  • fix(lsp): close server on exit notification (#28232)
  • fix(lsp): create cacheable ExportInfoMap per language service (#28240)
  • fix(unstable): lint plugin :exit called at wrong time (#28229)
  • fix: add info suggestion for unsafely-ignore-certificate-errors and add
    --help=full (#28203)
  • perf(install): only read initialized file if we care about the tags (#28242)

v2.2.1

21 Feb 01:04
6057bc3

Choose a tag to compare

2.2.1 / 2025.02.20

  • fix(check): remove instability in loading lib files (#28202)
  • fix(check/lsp): fall back to @types/* packages if npm package doesn't have
    types (#28185)
  • fix(coverage): exclude scripts with invalid URLs from raw coverage output
    (#28210)
  • fix(ext/cache): add missing Cargo feature (#28178)
  • fix(ext/node): Fix handling of sqlite large integers (#28193)
  • fix(ext/node): rewrite SQLite named parameter handing (#28197)
  • fix(outdated): hint to use --latest if new versions are available in
    outdated --update (#28190)
  • fix(publish): support jsx/tsx (#28188)
  • fix: better jsx workspace config resolution (#28186)
  • fix: don't panic when running with // as a filepath (#28189)
  • fix: move extension file declarations to cli/tsc/dts (#28180)