Skip to main content

Deno 2.9.3

Release Date: July 15, 2026

Deno 2.9.3 has been released — and before you get excited, let's look at what actually changed. The Deno team ships another point release on the 2.9 train, and while the changelog is dense, not every item will matter to your daily workflow.

What Actually Changed in Deno 2.9.3

This release, dated July 15, 2026, is a classic point-release mix of new CLI flags, feature additions, and a long tail of fixes. Let's separate the signal from the noise.

New CLI Flags Worth Knowing About

deno add --no-save and --save-optional. If you've ever run deno add just to test a package without committing to your config, --no-save is a welcome addition. The --save-optional flag adds dependencies to the optional group, which is useful for conditional imports. These are genuinely useful additions to the CLI surface.

--min-dep-age alias. The team added an alias for the minimum dependency age flag. Not groundbreaking, but it makes the CLI a bit more ergonomic.

New Features with Caveats

aarch64-pc-windows-msvc compilation support. If you're running Deno on a Windows ARM device, you can now compile binaries natively. That's a solid win for the niche — but let's be honest, most of us are still on x86_64.

http2MaxHeaderListSize in Deno.createHttpClient. A configurable option for HTTP/2 header size limits. Useful if you're dealing with proxy servers that send oversized headers. Otherwise, the default works fine.

Bug Fixes — The Real Story

The bulk of this release is fixes, and a few stand out:

  • SQLite deserialization fixesext/node SQLite operations now guard against crashes during callbacks and conversion failures. If you've had mysterious crashes with better-sqlite3 bindings, this might be your fix.
  • HTTP/2 header validation — Both node_http2 keep-alive and serialization validation got tightened. Security-minded teams should upgrade.
  • NPM registry deprecation handling — Under --cached-only, deprecated packages no longer trigger unnecessary registry fetches.
  • Windows stdio pipe handling — No more double-closing extra stdio handles on Windows. If you've had random "handle already closed" errors, this is the fix.

Performance Bits

The perf improvements are modest but real: randomUUID generation got batched, EventSource line buffering is no longer quadratic (ouch — that was a long-standing issue), and SQLite .all() and .run() got a speed bump through cached glob matchers.

Should You Upgrade?

If you're on 2.9.2, this is a low-risk patch. The SQLite and Windows fixes alone make it worthwhile for affected users. If you're on 2.8.x or earlier, you'll want to test the upgrade path — there are enough changes between major versions that a dry run is prudent. But for most teams: yes, upgrade when you can.

Deno 2.9.3 is available now. Run deno upgrade or grab the binaries from GitHub.

What is New?

By continuing to use the site, you agree to the use of cookies.