โ ๏ธ Breaking Change
Impact Score: 7/10
Deno v1.44.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(ffi/unstable): always return u64 as bigint (#23981)
- BREAKING(ffi/unstable): use BigInt representation in turbocall (#23983)
โก Executive Summary (TL;DR)
Deno v1.44.0. Source highlight: BREAKING(ffi/unstable): always return u64 as bigint (#23981)
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 (2)
- - BREAKING(ffi/unstable): always return u64 as bigint (#23981)
- - BREAKING(ffi/unstable): use BigInt representation in turbocall (#23983)
โจ New Features & Capabilities (6)
- feat(cli): Add slow test warning (#23874)
- feat(cli/test): `deno test --clean` (#23519)
- feat(ext/fetch): `Request.bytes()` and `Response.bytes()` (#23823)
- feat(ext/fs): stabilize `Deno.FsFile.syncData[Sync]()` and
- feat(ext/fs): stabilize `Deno.FsFile.unlock[Sync]()` and
- feat(ext/webgpu): byow support for {Free,Open}BSD (#23832)
โก Performance & Enhancements (6)
- perf(cli): Improve concurrency when setting up `node_modules` and loading
- perf(cli): Optimize setting up `node_modules` on macOS (#23980)
- perf(lsp): lock out requests until init is complete (#23998)
- perf(repl): don't walk workspace in repl language server (#24037)
- perf(startup): use WAL journal for sqlite databases in DENO_DIR (#23955)
- perf: avoid building module graph if dynamic specifier already in graph
๐ง Bug Fixes & Patches (6)
- fix(cli): Prefer npm bin entries provided by packages closer to the root
- fix(cli): Support deno.lock with only package.json present + fix DENO_FUTURE
- fix(cli/test): decoding percent-encoding(non-ASCII) file path correctly
- fix(coverage): add tooltip to line count in html report (#23971)
- fix(coverage): do not generate script coverage with empty url (#24007)
- fix(coverage): handle ignore patterns (#23974)
๐ View Raw Release Notes (Original Developer Log)
### 1.44.0 / 2024.05.30
- BREAKING(ffi/unstable): always return u64 as bigint (#23981)
- BREAKING(ffi/unstable): use BigInt representation in turbocall (#23983)
- FUTURE(ext/ffi,ext/webgpu): stabilize FFI and WebGPU APIs (#24011)
- FUTURE(ext/fs): stabilize file system APIs (#23968)
- FUTURE: initial support for .npmrc file (#23560)
- feat(cli): Add slow test warning (#23874)
- feat(cli/test): `deno test --clean` (#23519)
- feat(ext/fetch): `Request.bytes()` and `Response.bytes()` (#23823)
- feat(ext/fs): stabilize `Deno.FsFile.syncData[Sync]()` and
`Deno.FsFile.sync[Sync]()` (#23733)
- feat(ext/fs): stabilize `Deno.FsFile.unlock[Sync]()` and
`Deno.FsFile.lock[Sync]()` (#23754)
- feat(ext/webgpu): byow support for {Free,Open}BSD (#23832)
- feat(lint): add `no-boolean-literal-for-arguments` rule and enable
`no-unused-vars` for jsx files (#24034)
- feat(lsp): support .npmrc (#24042)
- feat(node): buffer isUtf8/isAscii (#23928)
- feat(serve): support `--port 0` to use an open port (#23846)
- feat(task): run `npm run` commands with Deno more often (#23794)
- feat(vendor): support modifying remote files in vendor folder without checksum
errors (#23979)
- feat: Add `Deno.exitCode` API (#23609)
- feat: add lowercase `-v` version flag (#23750)
- feat: do not require `DENO_FUTURE=1` for npmrc support (#24043)
- feat: enable pointer compression via deno_core bump (#23838)
- fix(cli): Prefer npm bin entries provided by packages closer to the root
(#24024)
- fix(cli): Support deno.lock with only package.json present + fix DENO_FUTURE
install interactions with lockfile (#23918)
- fix(cli/test): decoding percent-encoding(non-ASCII) file path correctly
(#23200)
- fix(coverage): add tooltip to line count in html report (#23971)
- fix(coverage): do not generate script coverage with empty url (#24007)
- fix(coverage): handle ignore patterns (#23974)
- fix(coverage): skip generating coverage json for http(s) scripts (#24008)
- fix(deno_task): more descriptive error message (#24001)
- fix(ext/fs): truncate files when a ReadableStream is passed to writeFile
(#23330)
- fix(ext/http): flush gzip streaming response (#23991)
- fix(ext/node): add `throwIfNoEntry` option in `fs.lstatSync` (#24006)
- fix(ext/node): add stubs for perf_hooks.PerformaceObserver (#23958)
- fix(ext/node): don't encode buffer data as utf8 in http2 (#24016)
- fix(ext/node): return cancelled flag in get_response_body_chunk op (#23962)
- fix(ext/node): windows cancel stdin read in line mode (#23969)
- fix(ext/node/fs): `position` argument not applied (#24009)
- fix(ext/web): `ReadableStream.from()` allows `Iterable` instead of
`IterableIterator` (#23903)
- fix(ext/web): `ReadableStream.from()` ignores null `Symbol.asyncIterator`
(#23910)
- fix(ext/websocket): change default idleTimeout to 30s (#23985)
- fix(lsp): don't discover deno.json in vendor dir (#24032)
- fix(lsp): process Fenced Code Block in JSDoc on `completion` correctly
(#23822)
- fix(node): set default http server response code 200 (#23977)
- fix(npm): set up node_modules/.bin/ entries for package that provide bin
entrypoints (#23496)
- fix(publish): raise diagnostics for triple-slash directives for `--dry-run`
instead of just `publish` (#23811)
- fix(runtime): use more null proto objects (#23921)
- fix(task): always use `npm` for `npm run` with flags (#24028)
- fix: `--env` flag confusing message on syntax error (#23915)
- fix: bump cache sqlite dbs to v2 for WAL journal mode change (#24030)
- fix: empty `process.platform` with `__runtime_js_sources` (#24005)
- fix: use hash of in-memory bytes only for code cache (#23966)
- perf(cli): Improve concurrency when setting up `node_modules` and loading
cached npm package info (#24018)
- perf(cli): Optimize setting up `node_modules` on macOS (#23980)
- perf(lsp): lock out requests until init is complete (#23998)
- perf(repl): don't walk workspace in repl language server (#24037)
- perf(startup): use WAL journal for sqlite databases in DENO_DIR (#23955)
- perf: avoid building module graph if dynamic specifier already in graph
(#24035)
- perf: parse source files in parallel (#23858)
- perf: skip npm install if graph has no new packages (#24017)