Unveiled April 28, Deno 1.33 takes steps toward meeting the goals of Deno 2.0, which is due in coming months. These goals include “effortless” coding, “best in class” performance, and “uncompromising” security.
Also with Deno 1.33, the
deno.json schema has been flattened to make it easier to read and write. Nested options such as
"fmt.options.lineWidth" now are available at the top level of their respective sections.
As a quality-of-life improvement, Deno 1.33 allows for fewer permission checks for dynamic imports, improving startup time. This change will make it easier to conditionally execute some code in certain conditions, such as when developers have a CLI tool with many subcommands and they want to conditionally load handlers only when the subcommand is invoked. Other use cases include only loading a polyform when needed and executing debugging code in a server application only when an environmental variable is present.
Deno 1.33 can be installed from deno.com. Other features in Deno 1.33 include:
- To improve performance, overhauls have been made to the HTTP server and the client and server for WebSockets. Work continues on improving these.
- For NPM and Node compatibility,
node:vmcapabilities have been improved since the last release.
- Pre-loading of files occurs when initialising the language server, mitigating a situation where certain functionality did not work unless a file had been opened.
- For the CLI, a new
–-no-runflag has been added to the
deno benchsubcommand to cache resolved bench files without running them. Also, a cross-platform
unsetcommand was added to the shell in
deno taskto allow deletion of environment and shell variables.
Deno.runAPI is being deprecated. With the stabilisation of the
Deno.CommandAPI in Deno 1.31,
Deno.Commandis now the recommended way to spawn subprocesses.
Deno 1.33 follows the March 2023 release of Deno 1.32, which offered enhanced Node.js compatibility, and Deno 1.32.1, which fixed a critical security issue pertaining to the improper handling of the resizable ArrayBuffer in async built-in functions.