
The developers of Deno, which is positioned as a secure runtime for JavaScript and TypeScript and rival to Node.js, have published Deno 1.5, a new version of the platform that improves bundling and REPL capabilities.
The deno bundle command in Deno 1.5 is billed to be as much as 15 times faster than in Deno 1.4, and now uses tree-shaking to remove unused code from the bundle. Also, work has been done to refactor Deno’s TypeScript compiler infrastructure, with aging bundler infrastructure replaced with a new bundler based on the swc TypeScript/JavaScript compiler. Bundles now are emitted as a standard ES module, with dynamic import now working correctly.
Other new features and improvements in Deno 1.5:
- The REPL (read-eval-print-loop) has undergone major refactoring. It now features tab completion of object properties and methods and code syntax highlighting, with syntax highlighted if a terminal supports colors. Also, top-level
awaitsupport is offered, with developers able toawaitpromises in the REPL without having to wrap a call in an async IIFE. - Stricter type checks in stable, with the
isolatedModulesTypeScript compiler option enabled by default. - Web platform APIs
alert,confirm, andprompthave been added. ThealertAPI logs a message to the terminal and synchronously blocks until confirmation. TheconfirmAPI prompts the user with a message and synchronously blocks until the user responds, whilepromptrequests some input form the user and blocks synchronously until the user has entered text and pressedenter. - API additions and stabilizations, with
Deno.fsync,Deno.fdatasync()and synchronous counterparts stabilized. These are low-level methods to ensure modified file data is written to the disk drive. Two new unstable APIs are introduced, includingDeno.sleepSync(), to block the event loop, andDeno.systemCpuInfo(), to get information the number of available cores and CPU speed. deno linthas been updated with acamelcase:rule to check if variable declrations usecamelCaseformatting. Hints for lint diagnostics are introduced, as well.- Changes have been made to std, including renaming the a
ssertStringContainsandassertArrayContainsmethods in std/testing.asserts.ts toasssertStringIncludesandassertArrayIncludes, respectively, to match the naming of theincludesmethod on strings and arrays. - The
deno fmt --ignoreflag now is available without the--unstableflag. The flag can be used to ignore some files or folders from being formatted or checked by the formatter.
Users with earlier versions of Deno installed can run deno upgrade to update to version 1.5. Installation methods for first timers can be found in release notes. Deno was created by Node.js designer Ryan Dahl as a more secure alternative to Node.js. Deno 1.0 arrived in May.










