The latest update to the Deno TypeScript /JavaScript and WebAssembly runtime features workspace support along with Node.js compatibility improvements.
Deno 1.45 was introduced July 11. The release introduces workspaces for managing monorepos, simplifying dependency management, configuration sharing, and module organization across large code bases, Deno Land said. There are two forms of supported workspaces: Deno-first workspaces defined in deno.json and backwards-compatible NPM workspaces. Global configuration for these workspaces is applied to each member package but can be overridden by members. Developers can mix and match NPM and Deno workspaces, with an NPM package inside a Deno workspace or vice versa.
For Node.js compatibility, Node-API support has been revamped, fixing issues with packages such as prisma
, sqlite3
, and paper
. Other Node.js compatibility improvements include working on support for dd.trace and support for fs.lutimes
and fs.lutimesSync
. Also, node:crypto
and node:zlib
were added. The node:http
module was updated, with capabilities such as Server#close()
now doing a graceful shutdown, allowing in-flight requests to finish. In another improvement, the node:vm
will consume less memory. For NPM support, types shipped with the package are now preferred over types from @types
scope.