A major release of Deno, an open, secure environment for executing programs in the TypeScript language, with the following features:
- Exclusively explicit access to the file system, network and environment through the setting of appropriate permissions by the user;
- TypeScript execution without Node.JS and tsc;
- Javascript backwards compatibility: any subset of Deno programs that does not refer to the global Deno namespace and is valid Javascript code can be executed in a browser;
- Delivered as a single executable file that also contains additional tools such as
- deno run --inspect-brk: debug server that interacts with Visual Studio Code and remote debugging tools in Google Chrome;
- deno install: Deno software installer from remote resources. It downloads along with dependencies and adds a script to $HOME/.deno/bin to run the program;
- deno fmt: performs code formatting;
- deno bundle: Deno software bundler. Produces a js file containing the program for Deno and its dependencies;
- WIP: documentation generator and dependency audit tool;
- No dependence on npm and package.json: external modules are loaded and used (loading over the network occurs only during the first execution, later the module is cached until the call with the --reload flag) after specifying their URL directly in the program:
import * as log from "https://deno.land/std/log/mod.ts"; - Absolutely all asynchronous operations return a Promise, unlike Node.JS;
- Program execution always stops when unhandled errors occur.
Deno is an embeddable environment and can be used to extend existing Rust programs with a crate deno_core.
The Deno team also provides standard modules without external dependencies, similar in functionality to the standard library in the Go language.
Deno is suitable for use as a script execution - calling via shebang is supported.
There is REPL.
Written in the Rust programming language.
Source: linux.org.ru