Changelog

denoland/deno · · 11 commits

Deno tightens npm, streams, and Node parity

Tarball downloads now honor the configured registry, ReadableStream.from and worker_threads.locks land, plus several important runtime fixes.

Honor configured npm registries for tarballs (nathanwhit446ed26)

Deno now rewrites package tarball URLs through the active npmrc config before downloading, so private or mirrored registries are actually used for package bytes, not just manifests. This closes a supply-chain gap and also improves the registry-specific auth/error reporting when a download fails.

Implement worker_threads.locks on top of Web Locks (crowlbot2731794)

worker_threads now exposes a locks API compatible with Node’s newer worker threads surface, backed by the existing Web Locks implementation. That expands Node compatibility for code that coordinates work across workers using lock acquisition and inspection.

Fix ReadableStream.from and async-sequence handling (petamoriken10979e6)

WebIDL and streams now use the spec’s async-sequence shape instead of the old async-iterable converter, which brings ReadableStream.from and body extraction in line with expected behavior. The change also avoids double-awaiting yielded promises and tightens converter semantics for several web APIs.

Allow dynamic imports during cached synthetic module evaluation (nathanwhitfb78add)

The cached-module fast path in the core module map no longer holds a borrow across module evaluation, preventing a RefCell re-entrancy failure when evaluated code kicks off a dynamic import. This fixes a real runtime deadlock/error path for synthetic ESM modules that import during evaluation.

Add end-bounded search parameters to Node Buffer methods (Medo-IDe2f15f2)

Buffer#indexOf, lastIndexOf, and includes now accept the extra end parameter that Node supports, matching the public API more closely. This matters for compatibility because code can now limit searches without slicing buffers first.

Compress bundled AppImage runtimes (nathanwhitd6c91ad)

The AppImage runtime stubs are now zstd-compressed at build time and decompressed only for the selected target when packaging an AppImage. That significantly shrinks the data embedded in the binary while preserving cross-target image generation.

Other misc changes

  • Jupyter codemirror_mode is now reported as a string for compatibility with downstream clients (bartlomiejuc39f179)
  • Windows resource metadata fix by bumping libsui (bartlomieju55bceb8)
  • Release/promotion workflow now regenerates checksum sidecars for republished artifacts (bartlomieju79d4652)
  • Escape control characters in test names to protect reporter formatting (nathanwhit5f4607d)
  • Refactor ext/web/blob.rs off serde_v8 (crowlbote004dac)