Deno v1.22.0stable Released May 18, 2022
โš ๏ธ Breaking Change Impact Score: 7/10

Deno v1.22.0 โ€” Release Notes & Engineering Impact

Source available โ€” automated, not human-reviewed

Component: deno ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Breaking-change evidence from the source

  • - BREAKING(unstable): Enable Deno namespace in workers by default (#14581)
  • - BREAKING: Remove unstable Deno.applySourceMap API (#14473)
  • - BREAKING: Remove unstable Deno.emit and Deno.formatDiagnostics APIs (#14463)
Read the original context โ†—
Source flags breaking changes โ€” review applicability
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

Deno v1.22.0. Source highlight: BREAKING(unstable): Enable Deno namespace in workers by default (#14581)

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

โš ๏ธ Breaking Changes & Deprecations (3)

  • - BREAKING(unstable): Enable Deno namespace in workers by default (#14581)
  • - BREAKING: Remove unstable Deno.applySourceMap API (#14473)
  • - BREAKING: Remove unstable Deno.emit and Deno.formatDiagnostics APIs (#14463)

โœจ New Features & Capabilities (6)

  • feat(core): deterministic snapshots (#14037)
  • feat(core): Revert "core: don't include_str extension js code (#10786)"
  • feat(ext/net): add "NS" record support in Deno.resolveDns API (#14372)
  • feat(ext/net): add `CAA` DNS record support in Deno.resolveDns() API (#14624)
  • feat(ext/net): add support for SOA records in Deno.resolveDns() API (#14534)
  • feat(ext/net): support NAPTR records in Deno.resolveDns() API (#14613)

โšก Performance & Enhancements (3)

  • perf(core): optimize encode on large strings (#14619)
  • perf(ext/http): faster accept-encoding parsing (#14654)
  • perf(serde_v8): fast path for large strings (#14450)

๐Ÿ”ง Bug Fixes & Patches (6)

  • fix(core): support classifying ENOTDIR (#14646)
  • fix(ext/http): error on invalid headers (#14642)
  • fix(ext/http): make serveHttp compress for Accept-Encoding: deflate, gzip
  • fix(ext/http): no response body reader when cancelling during shutdown
  • fix(ext/http): skip auto-compression if content-encoding present (#14641)
  • fix(ext/tls): ability to ignore IP-address certificate errors (#14610)
๐Ÿ“„ View Raw Release Notes (Original Developer Log)
### 1.22.0 / 2022.05.18 - BREAKING(unstable): Enable Deno namespace in workers by default (#14581) - BREAKING: Remove unstable Deno.applySourceMap API (#14473) - BREAKING: Remove unstable Deno.emit and Deno.formatDiagnostics APIs (#14463) - feat(core): deterministic snapshots (#14037) - feat(core): Revert "core: don't include_str extension js code (#10786)" (#14614) - feat(ext/net): add "NS" record support in Deno.resolveDns API (#14372) - feat(ext/net): add `CAA` DNS record support in Deno.resolveDns() API (#14624) - feat(ext/net): add support for SOA records in Deno.resolveDns() API (#14534) - feat(ext/net): support NAPTR records in Deno.resolveDns() API (#14613) - feat(ext/net): support full `SOA` record interface (#14617) - feat(ext/web): add performance.toJSON (#14548) - feat(ext/web): implement static `Response.json` (#14566) - feat(lsp): enable linting by default (#14583) - feat(ops): #[op(v8)] (#14582) - feat(ops): allow passing scope handle to ops (#14574) - feat(ops): infallible / result-free ops (#14585) - feat(ops): sync Rc<RefCell<OpState>> (#14438) - feat(runtime/spawn): add `AbortSignal` support (#14538) - feat(serde_v8): bytes::Bytes support (#14412) - feat(test): Represent uncaught errors (#14513) - feat(test): Show Deno.test() call locations for failures (#14484) - feat(test): change "failures:" headers in test report (#14490) - feat(test): repeat test name if there's user output (#14495) - feat(unstable/task): resolve the current executable for the deno command (#14462) - feat(web): add `performance.timeOrigin` (#14489) - feat: add --no-config flag (#14555) - feat: add userAgent property to Navigator's prototype (#14415) - feat: return a signal string instead number on ChildStatus (#14643) - feat: subcommands type-check only local files by default (#14623) - fix(core): support classifying ENOTDIR (#14646) - fix(ext/http): error on invalid headers (#14642) - fix(ext/http): make serveHttp compress for Accept-Encoding: deflate, gzip (#14525) - fix(ext/http): no response body reader when cancelling during shutdown (#14653) - fix(ext/http): skip auto-compression if content-encoding present (#14641) - fix(ext/tls): ability to ignore IP-address certificate errors (#14610) - fix(ext/web): throw if listener and signal are null (#14601) - fix(lsp): correct positions in some scenarios (#14359) - fix: base64 encoding of source maps with emojis (#14607) - perf(core): optimize encode on large strings (#14619) - perf(ext/http): faster accept-encoding parsing (#14654) - perf(ext/web): Add fast path for non-streaming TextDecoder (#14217) - perf(serde_v8): fast path for large strings (#14450)