Desktop runtimes, faster builds, and smarter caches
June 22–28, 2026
Deno 2.9 shipped with a groundbreaking `deno desktop` subcommand for native desktop apps and major performance gains, while Turborepo reached v2.10.0 with incremental task caching and graceful shutdown.
Deno 2.9 redefines the runtime
The biggest story of the week is Deno 2.9, a release that fundamentally expands what a JavaScript runtime can be. Headlining the release is deno desktop, a new subcommand that builds native desktop applications from web framework projects with no extra toolchain, producing a single distributable binary with built-in Deno.* desktop APIs. As the accompanying blog post details, this eliminates the Electron boilerplate that has frustrated desktop developers for years.
The performance story is equally compelling: cold startup has been cut by 2x (to just 17ms), RSS memory usage is down by up to 3x, and real-world Deno.serve throughput improved 27%. For developers migrating from Node.js, Deno 2.9 now reads npm, pnpm, yarn, and Bun lockfiles directly in deno install, making the switch a couple of commands rather than a migration project. Other notable additions include CSS module imports, the Web Locks API, Happy Eyeballs for TCP/TLS connections, and built-in snapshot testing.
A breaking change worth noting: Deno.serve automatic compression is now opt-in via the --compress flag or config, reversing the previous default behavior.
Turborepo reaches 2.10.0 with smarter caching
After several canary releases, Turborepo v2.10.0 shipped this week with incremental task caching that improves build times for monorepo workflows. The release also introduces graceful shutdown that preserves exit codes, and migrates Vercel authentication to the OAuth device flow. Several reliability fixes landed as well, including CA trust corrections, wildcard preflight handling, Bun lockfile pruning repair, concurrency validation, and .gitignore-aware input hashing.
The canary channel continued iterating: v2.10.1-canary.2 added Corepack packageManager integrity hash support and XDG_DATA_* environment variable pass-through. The previous canary.1 migrated TUI virtual terminals from vt100 to Ghostty and optimized git index path joins by avoiding normalization. Meanwhile, v2.9.19-canary.10 introduced deferred hashing for task inputs to further improve cache performance, along with fixes for transitive dependency pruning and terminal settings preservation for child PTYs.
pnpm 11.9 improves integrity and audit
pnpm 11.9 arrived with a practical improvement for registries that cannot publish checksums — it now computes missing tarball integrity automatically. The release also adds pnpm sbom --exclude-peers, improves audit performance on cyclic lockfiles, fixes peer-resolution nondeterminism, and tightens exclusion handling for minimumReleaseAge and trustPolicy.
Releases covered
- Turborepo v2.10.0 adds incremental task caching, graceful shutdown, and Vercel auth migration
- Turborepo v2.10.1-canary.2 fixes Corepack packageManager integrity and XDG_DATA_* env passthrough
- Turborepo v2.10.1-canary.1 migrates TUI terminals to Ghostty
- Turborepo v2.9.19-canary.10 adds deferred hashing and fixes transitive dep pruning