Deno ports console and inspect to Rust, shrinking snapshot size
Deno moved console and inspect into Rust, trimming 01_console.js by 83% and shrinking the snapshot without changing output.

Deno has pushed one more piece of hot-path runtime logic out of JavaScript and into Rust, and the payoff is easy to measure: 01_console.js is now 83% smaller, the snapshot is lighter, and the output stayed identical. The change landed on Deno’s main branch under the performance patch “perf (ext/web): port console/inspect to Rust (cppgc object wrap)” in pull request #35087.
That matters because console and inspect are not side features in Deno. The runtime’s docs put console.table and the inspection helpers squarely in the core debugging path, the kind of API developers use by muscle memory when they are trying to understand what their code is actually doing. Deno’s earlier tutorial series also used the console API and snapshots as examples of runtime internals, which makes this rewrite feel less like cleanup and more like a direct strike at code that sits in the middle of the developer experience.

The architecture makes the move especially telling. Deno is built on V8 and Rust, with Rusty V8 providing the bindings to Google V8’s C++ API, and the project has long leaned on snapshotting to improve startup time by preloading JavaScript state into the runtime snapshot. Deno has described that technique as a way to get better startup performance with only a typically negligible filesize increase. Porting console and inspect to Rust fits that model cleanly: less JavaScript in the snapshot, less runtime baggage to preload, and no visible change in behavior for users.
This is also the kind of optimization Deno has been chasing for a while. The project previously reported cutting language-server autocomplete times from 6 to 8 seconds down to under one second in large codebases, which is the same philosophy in a different layer of the stack: find the hot path, remove the waste, keep the interface intact. Deno 2.7, released on February 25, 2026, and Deno 2.8 in May 2026, showed that the release cadence is still carrying both performance and compatibility work forward.
For Rust developers, the lesson is blunt and useful. When a runtime already sits on Rust and V8, rewriting dynamic-language internals in Rust can buy real wins in snapshot size and startup behavior, but only if the new code preserves the exact output people already depend on. This patch did that, and that is why an 83% smaller console JS file is more than a tidy refactor.
This article was produced by Prism’s automated news system from verified source data, official records, and press releases, then run through automated quality and moderation checks before publishing. The system is built and supervised by the people who set the standards it runs under. Read our full AI policy.
Did this article answer your question?


