Release JavaScript platform Deno 1.16 designed for a separate execution (without the use of the browser) applications written in JavaScript and TypeScript languages. The project develops by the author of Node.js Ryan Dalem (Ryan Dahl). The platform code is written in the programming language RUST and extends under the MIT license. Ready builds Prepared for Linux, Windows and MacOS.
Project similar to the platform node.js and, like him, uses the JavaScript engine V8, however, according to the author Node.js, corrects a number of architectural miscorders of its predecessor and different from him the following nuances:
- Use as the main language RUST, which, according to developers, reduces the risk of vulnerabilities associated with low-level memory with memory (buffer overflow, use-after-free, etc.);
- Deno does not use the NPM and Package.json batch manager, offering the user to install modules by specifying the URL or the path to the module to install. However, the project is offered several utilities to simplify working with third-party modules;
- applications are started separately in sandboxes and do not have access to network, environment variables and file system, without explicitly issued authority;
- in the architecture laid the ability to create universal web applications that are able to work both in the Deno system and in the usual browser;
- Using “ES Modules” and no support for REQUIRE ();
- Any non-programmer error in the web application leads to their compulsory completion;
- Support TypeScript In addition to JavaScript;
- full size ready to use platform – 10 MB as a single file;
- Includes a system of resolution of dependency and code formatting;
- orient to high-performance applications.
DINO processes requests for non-blocking mode using the TOKIO platform designed to create high-performance applications based on event-oriented (Event-Driven) architecture. It is also interesting that the built-in HTTP server DENO is implemented on TypeScript on top of native TCP sockets, which positively affects network operations.
In the new version of is noted :
- performance optimization (4 patch);
- Correction of more than 15 errors, in particular, now the TLS client supports HTTP / 2, the encoding subsystem supports additional encoding labels, etc.;
- more than two dozen innovations, from which you can note the stabilization of previous subsystems Deno.StartTLS and DENO.TestDefinition.permissions, update the JS engine V8 to version 9.7 and support for React 17 JSX transformations.